Das Notes Forum

Domino 9 und frühere Versionen => Entwicklung => Thema gestartet von: robertpp am 29.04.03 - 08:22:18

Titel: Searchstring
Beitrag von: robertpp am 29.04.03 - 08:22:18
ich hab eine searchstring der funktioniert:

   sSearch = {SELECT Form = "task" & ( Erledigtam >= [} & Cstr(doc.VonDatum(0)) & "]) & " & "( Erledigtam <= [" & Cstr(doc.BisDatum(0)) & "])"

nun möchte ich den aber erweitern und hab das so probiert:

sSearch = {SELECT Form = "task" & ( Erledigtam >= [} & Cstr(doc.VonDatum(0)) & "]) & ( Erledigtam <= [" & Cstr(doc.BisDatum(0)) & "]) & ( Kostenstelle = [" & Cstr(doc.From(0)) & "])"

der geht aber nicht!!
kann mir jemand sagen wo der Fehler liegt?
Titel: Re:Searchstring
Beitrag von: Performance am 29.04.03 - 09:34:48
den select in einer view testen - wenns klappt müsste im script irgendwo ein { " [  zuviel oder zuwenig sein ... sorry musst du selber testen  ;D ;D

cu
Titel: Re:Searchstring
Beitrag von: Axel am 29.04.03 - 10:33:37
Hi,

im ersten Teil (ohne Erweiterung) fehlt was. Versuch's mal so:


sSearch = {SELECT Form = "task" & ( Erledigtam >= [} & Cstr(doc.VonDatum(0)) & "]) & " & " (Erledigtam <= [" & Cstr(doc.BisDatum(0)) & "]) & ( Kostenstelle = [" & Cstr(doc.From(0)) & "])"


Axel
Titel: Re:Searchstring
Beitrag von: robertpp am 29.04.03 - 14:59:44
nein das funktioniert auch leider nicht!!
Bekomme immer diese fehlermeldung wie im anhang
Titel: Re:Searchstring
Beitrag von: Axel am 29.04.03 - 15:35:30
Hi,

versuch's mal damit:

sSearch = {SELECT Form = "task" & ( Erledigtam >= "} & Cstr(doc.VonDatum(0))  & {") & } & { (Erledigtam <= "} & Cstr(doc.BisDatum(0))  & {") & ( Kostenstelle = "} & Cstr(doc.From(0))  & {")}

Ich hab's bei mir mit der Search-Methode aus der NotesDatabase-Klasse probiert und habe keine Fehlermeldung erhalten.


Axel
Titel: Re:Searchstring
Beitrag von: robertpp am 29.04.03 - 16:28:21
fehlermeldung bekomm ich auch keine mehr nur er gibt mir in der doccollection keine doc's mehr zurück.
Titel: Re:Searchstring
Beitrag von: Axel am 29.04.03 - 16:39:36
Hi,

kann es vielleicht an einer falsche Verknüpfung der Suchkriterien liegen ?

Am besten zerlegst du den Suchstring in seine "Einzelteile" und prüft die Suche auf Erfolg und baust dann ein weiteres Suchkriterium
dazu.


Axel
Titel: Re:Searchstring
Beitrag von: robertpp am 30.04.03 - 08:05:46
ich hab das ganze jetzt so zerlegt wie es mir @enny mal gemacht hat und wie es auch funktioniert:

   sSearch = {SELECT Form = "task" & ( Erledigtam >= [}
   sSearch = sSearch & Cstr(doc.VonDatum(0)) & "]) & "
   sSearch = sSearch & "( Erledigtam < [" & Cstr(doc.BisDatum(0)) & "])"

und ich hab das jetzt so abgeändert:

   sSearch = {SELECT Form = "task" & ( Erledigtam >= [}
   sSearch = sSearch & Cstr(doc.VonDatum(0)) & "]) & "
   sSearch = sSearch & "( Erledigtam <= [" & Cstr(doc.BisDatum(0)) & "]) & "   
   sSearch = sSearch & "( Kostenstelle = [" & Cstr(doc.Kostenstelle(0)) & "])"

einfach die letzte zeile dazu und in der vorletzten das & dazu aber es geht tortzdem nicht!!
Titel: Re:Searchstring
Beitrag von: Axel am 30.04.03 - 08:21:52
Hi,

was heisst geht nicht: Fehlermeldung oder keine Resultate ?

Hast du mal das letzte Kriterium alleine probiert ?


Axel
Titel: Re:Searchstring
Beitrag von: robertpp am 30.04.03 - 08:52:12
ich häng mal die db. da sieht man welche varianten ich schon alle probiert habe:
Titel: Re:Searchstring
Beitrag von: Axel am 30.04.03 - 09:04:26
Hi,

....hmmm, entweder bin ich blind oder hab noch nicht ausgeschlafen.

Wo sieht man was du alles getestet hast. Du rufst beim OK-Button den Agent ("Close") auf.

Zitat
...
   Set agent=db.getagent("(close)")   
   Call agent.run
...

Den finde ich aber nirgends.  ??? ???
Wo machst du denn die Suche ?  

Axel
Titel: Re:Searchstring
Beitrag von: enny am 30.04.03 - 09:05:57
@robertpp:
Hi Robert! Also was hälst du davon das dein Feld From wahrscheinlich einen Text- oder zahlen Wert enthält, d.h. um diesen Wert brauchst du keine eckigen Klammern! Sollte dann funktionieren!

MfG

Enny
Titel: Re:Searchstring
Beitrag von: robertpp am 30.04.03 - 09:07:23
du bist falsch die button in der maske sind nicht sichtbar.
das ganze wird in der ansicht massnahme über den button "nachweis suchen" aufgerufen.
mein fehler sollte dazu schreiben wo es zu finden ist.
Titel: Re:Searchstring
Beitrag von: Axel am 30.04.03 - 09:08:48
@enny


Den Vorschlag habe ich ihm auch schon gemacht, siehe weiter oben. Das hat aber anscheinend auch nicht richtig funktioniert. Warum auch immer.  ??? ???


Axel
Titel: Re:Searchstring
Beitrag von: Axel am 30.04.03 - 09:42:05
Hi,

nu geht's.    

Der Suchstring muss so aussehen:

Zitat
sSearch = {SELECT Form = "task" & ( Erledigtam >= [} & Cstr(doc.VonDatum(0)) & "]) & " & "( Erledigtam <= [" & Cstr(doc.BisDatum(0)) & "])"
sSearch = sSearch & { & ( Kostenstelle = "} & Cstr(doc.Zeitaufwand(0)) & {")}

Allerdings hat die Sachen einen Haken. Da du in der Maske "Nachweis suchen" das Feld für die Kostenstelle als nummerisches Feld gemacht hast, werden führende Nullen entfernt.
Er kann also Kostenstellen, die mit einer Null beginnen nicht finden.

Axel
Titel: Re:Searchstring
Beitrag von: robertpp am 30.04.03 - 09:48:33
ich hab den string jetzt so gemacht:

   sSearch = {SELECT Form = "task" & ( Erledigtam >= [}
   sSearch = sSearch & Cstr(doc.VonDatum(0)) & "]) & "
   sSearch = sSearch & "( Erledigtam <= [" & Cstr(doc.BisDatum(0)) & "]) & "   
   sSearch = sSearch & {( Kostenstelle =  "} & Cstr(doc.Kostenstelle(0)) & {" ) }
Die eckigen Klammer gehören weg und die Anfürhungszeichen dazu.
die felder hab ich auch alle wieder gerichtet.
danke nochmal!!