Das Notes Forum
Domino 9 und frühere Versionen => Entwicklung => Thema gestartet von: webchild am 02.03.04 - 14:55:22
-
Ich möchte eine Suche in einer Datenbank ausführen und in einer Collection sammeln.
Die Dokumente sollen entweder die Maske "Person" oder die Maske "Firma" haben und das Feld sKatFeld (Stringvariable mit Wert "KTDienstleister", eigentlich der Name eines Feldes) soll den Wert haben den ich vorher in die Stringvariable sAltKat eingelesen habe.
Mit den folgenden beiden Varianten hatte ich keinen Erfolg:
1.)
sQuery = "@Contains( FORM; ""Person"":""Firma"")&@Contains( sKatFeld;sAltKat)"
oder
2.)
sQuery="Form = ""Person""|""Firma"" & sKatFeld=sAltKat"
Set col =mydb.search(sQuery,Nothing, 0)
Die Collection funktioniert nicht mit der Fehlermeldung:
1.)Type Mismatch
2.)Notes Error: Abfrage ist nicht verständlich (Form = "Person"|"Firma" & sKatFeld=sAltKat)
Was mache ich bei der Konfiguration der Suchkriterien falsch? Über einen kleinen Tipp würde ich mich freuen.
Danke, Krista
-
... wo kommt der "type mismatch" ?
-
@Klaussal
Wie schon oben gesagt bei der Version mit dem
1.)
sQuery = "@Contains( FORM; ""Person"":""Firma"")&@Contains( sKatFeld;sAltKat)"
Fehlermeldung:
1.)Type Mismatch
Beim zweiten Versuch:
2.)
sQuery="Form = ""Person""|""Firma"" & sKatFeld=sAltKat"
Fehlermeldung:
2.)Notes Error: Abfrage ist nicht verständlich (Form = "Person"|"Firma" & sKatFeld=sAltKat)
Grüße, Krista
-
... warum nicht so: ?
sQuery$ = "(Form = ""Person"" | Form = ""Firma"") & sKatfeld = sAltKat"
-
Zu 2) hat Klaus das Hauptproblem schon geschildert: das "oder" geht nicht eingebettet in die rechte Seite, das Form = muss also wiederholt werden.
Zu beiden: Sind sKatFeld und sAltKat Variablen in Deinem Script? Wenn ja, hat der Query darauf keinen Zugriff und meckert deshalb. Da müssen dann die Inhalte in den Query-String concateniert werden.
-
@Semeaphoros
>Sind sKatFeld und sAltKat Variablen in Deinem Script
Ja sind sie!
>Da müssen dann die Inhalte in den Query-String concateniert werden.
Wie kann ich sie denn dann an die Variable sQuery übergeben?
Danke, Krista
-
sQueryString = "........" & sKatFeld & ";" & sAltKat & "......"
oder so ähnlich
-
Ich habe es Dank der Unterstützung geschafft.
Hier die richtige Zuweisung für meinen Fall:
sQuery = "(Form = ""Person"" | Form = ""Company"")" & |&| & "( " & sKatFeld & "=" & |"| & sAltKat & |"| &" )"
Danke, Krista ;D