Autor Thema: db.search Problem  (Gelesen 6920 mal)

Offline skywook

  • Senior Mitglied
  • ****
  • Beiträge: 445
  • Ich liebe dieses Forum!
db.search Problem
« am: 25.07.05 - 22:25:00 »
Hallo,
folgende Script gibt mir immer 0 Dokumente zurück. Wo habe ich denn den Fehler? Für eure Hilfe wäre ich sehr dankbar.

Sub Click(Source As Button)
   Dim s As New NotesSession
   Dim db As NotesDatabase
   Dim doc As notesdocument
   Dim dc As NotesDocumentCollection
   
   Dim uiw As New NotesUIWorkspace
   Dim uidoc As notesuidocument
   Dim feld1 As String
   
   Set uidoc = uiw.CurrentDocument
   
   feld1 = uidoc.fieldGetText("AKundenzuordnung")
      
   If  uidoc.fieldGetText("KZ") = "" Then
      KdZuord$ = {Zuordnung="} + feld1 + {"}
   End If
   
   Set db = s.CurrentDatabase
   Dim vs As notesviewentrycollection
   Dim folderview As notesview
   Set folderview = db.GetView("SucheDaten")
   Set vs = folderview.AllEntries
   Call vs.RemoveAllFromFolder( "SucheDaten" )
   
   
   Set dc = db.Search( kdZuord$, Nothing, 0 )
   
   Messagebox dc.Count & " gefunden"
   
   Call dc.PutAllInFolder("SucheDaten")
End Sub

Glombi

  • Gast
Re: db.search Problem
« Antwort #1 am: 25.07.05 - 22:59:14 »
Füge mal vor dem db.Search ein

Msgbox kdZuord$

ein, um den Suchstring zu kontrollieren.

Andreas

Offline skywook

  • Senior Mitglied
  • ****
  • Beiträge: 445
  • Ich liebe dieses Forum!
Re: db.search Problem
« Antwort #2 am: 26.07.05 - 07:33:22 »
Die Box gibt mir einen leeren Suchstring zurück.

klaussal

  • Gast
Re: db.search Problem
« Antwort #3 am: 26.07.05 - 07:49:37 »
Und was sagt uns das jetzt ?

Offline Thomas Schulte

  • @Notes Preisträger
  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 4.388
  • Geschlecht: Männlich
  • Ich glaub mich tritt ein Pferd
Re: db.search Problem
« Antwort #4 am: 26.07.05 - 07:51:20 »
Das sag uns Herr Lehrer  ;D das kdzuord$ dummerweise keinen Wert hat und folglich die Suche auch nix zurückliefern kann.
Thomas Schulte

Collaborative Project Portfolio and Project Management Software

"Aber wo wir jetzt einmal soweit gekommen sind, möchte ich noch nicht aufgeben. Versteh mich recht, aufgeben liegt mir irgendwie nicht."

J.R.R.Tolkien Herr der Ringe, Der Schicksalsberg

OpenNTF Project: !!HELP!! !!SYSTEM!!  !!DRIVER!!

Skype: thomasschulte-kulmbach

klaussal

  • Gast
Re: db.search Problem
« Antwort #5 am: 26.07.05 - 08:00:17 »
Richtig ! Setzen ....

Offline skywook

  • Senior Mitglied
  • ****
  • Beiträge: 445
  • Ich liebe dieses Forum!
Re: db.search Problem
« Antwort #6 am: 26.07.05 - 08:31:08 »
Danke fürs schnelle Antworten.
Das mit der Box habe ich schon vorher getestet. Vielleicht liegts am Ablauf. Habe mit db.search noch nicht viel zu tun gehabt.
Ich habe eine Suchmaske in der die zu suchenden Werte über verschiedene Dialoglisten ausgewählt werden. Wie z. B. im Script wird bei KZ (Kontrollkästchen) ein Haken gesetzt soll nach dem Wert in AKundenzuordnung gesucht werden.
Über einen Button wird die Suche (siehe Script) gestartet. Das Feld Zuordnung ist nicht in der Suchmaske vorhanden sondern in der eigentlichen Eingabemaske. Ist das vielleicht der Fehler?

Offline Thomas Schulte

  • @Notes Preisträger
  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 4.388
  • Geschlecht: Männlich
  • Ich glaub mich tritt ein Pferd
Re: db.search Problem
« Antwort #7 am: 26.07.05 - 08:32:33 »
Jawollja, weil wie soll er denn bitteschön einen Wert übernehmen wenn es das dazugehörige Feld nicht gibt?
Thomas Schulte

Collaborative Project Portfolio and Project Management Software

"Aber wo wir jetzt einmal soweit gekommen sind, möchte ich noch nicht aufgeben. Versteh mich recht, aufgeben liegt mir irgendwie nicht."

J.R.R.Tolkien Herr der Ringe, Der Schicksalsberg

OpenNTF Project: !!HELP!! !!SYSTEM!!  !!DRIVER!!

Skype: thomasschulte-kulmbach

Offline skywook

  • Senior Mitglied
  • ****
  • Beiträge: 445
  • Ich liebe dieses Forum!
Re: db.search Problem
« Antwort #8 am: 26.07.05 - 09:18:35 »
Irgendwie klemmts noch......
Das Feld AKundenzuordnung ist in der Suchmaske vorhanden und wird in die variable feld1 übernommen (kann ich mir auch über eine Box ausgeben). Der Suchstring setzt sich aus dem Feldnamen Zuordnung (das in der Eingabemaske vorhanden ist nicht aber in der Suchmaske) und dem Wert von feld1 zusammen.

feld1 = uidoc.fieldGetText("AKundenzuordnung")
     
   If  uidoc.fieldGetText("KZ") = "" Then
      KdZuord$ = {Zuordnung="} + feld1 + {"}
   End If

Das müsste doch dann klappen.

klaussal

  • Gast
Re: db.search Problem
« Antwort #9 am: 26.07.05 - 09:39:35 »
Schon mal den Debugger bemüht ?

Glombi

  • Gast
Re: db.search Problem
« Antwort #10 am: 26.07.05 - 09:42:10 »
Und das Feld "KZ" ist in der Suchmaske?

Und das Feld "Zuordnung" ist ein Textfeld und NICHT berechnet zur Anzeige?

Dann sollte es so gehen!

Andreas

Offline skywook

  • Senior Mitglied
  • ****
  • Beiträge: 445
  • Ich liebe dieses Forum!
Re: db.search Problem
« Antwort #11 am: 26.07.05 - 12:03:01 »
Auf Deine Frage Andreas:

Und das Feld "KZ" ist in der Suchmaske?
= ja

Und das Feld "Zuordnung" ist ein Textfeld und NICHT berechnet zur Anzeige?
= der Feldtyp ist eine Dialogliste mit zwei Werten zum auswählen.



Offline Thomas Schulte

  • @Notes Preisträger
  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 4.388
  • Geschlecht: Männlich
  • Ich glaub mich tritt ein Pferd
Re: db.search Problem
« Antwort #12 am: 26.07.05 - 12:05:15 »
Schalt den debugger ein und schau dir den Inhalt von "KZ" an. Schließlich prüfst du das gegen leer ab.
Thomas Schulte

Collaborative Project Portfolio and Project Management Software

"Aber wo wir jetzt einmal soweit gekommen sind, möchte ich noch nicht aufgeben. Versteh mich recht, aufgeben liegt mir irgendwie nicht."

J.R.R.Tolkien Herr der Ringe, Der Schicksalsberg

OpenNTF Project: !!HELP!! !!SYSTEM!!  !!DRIVER!!

Skype: thomasschulte-kulmbach

Glombi

  • Gast
Re: db.search Problem
« Antwort #13 am: 26.07.05 - 12:08:11 »
Und das Feld "Zuordnung" ist ein Textfeld und NICHT berechnet zur Anzeige?
= der Feldtyp ist eine Dialogliste mit zwei Werten zum auswählen.
Dann ist es also ein Mehrfachwert und Du musst die Abfrage ändern, da "=" nicht funktioniert, wenn es mehrere Werte hat. In diesem Fall also die Abfrage mit @IsMember.


feld1 = uidoc.fieldGetText("AKundenzuordnung")
     
If  uidoc.fieldGetText("KZ") = "" Then
     KdZuord$ = |@IsMember("| + feld1 + |";Zuordnung)|
End If

So, ich hoffe dass keine Klammer fehlt  ;)

Andreas

Offline skywook

  • Senior Mitglied
  • ****
  • Beiträge: 445
  • Ich liebe dieses Forum!
Re: db.search Problem
« Antwort #14 am: 26.07.05 - 12:32:32 »
Danke,
aber warum IsMember?
Bei der Feld Zuordnung (Feldtyp Dialogliste) sind zwei Werte hinterlegt, kann aber nur eines bei der Eingabe ausgewählt werden.

Offline skywook

  • Senior Mitglied
  • ****
  • Beiträge: 445
  • Ich liebe dieses Forum!
Re: db.search Problem
« Antwort #15 am: 28.07.05 - 15:37:42 »
Hallo,
bräuchte nocheinmal eure Hilfe. Sitze schon seit Tagen vor dem Problem.

Möchte gerne eine variable searchformel:

Habe, wie schon beschrieben, eine Suchmaske. In dieser sind verschiedene Felder als Kontrollkästchen. Nun soll die Suchformel für db.search zusammgesetzt werden anhand von dem was der User ankreutzt z.B

Feld1 (Kontrollkästchen) mit Wert = Bestandskunde
Feld 2 (Kontrollkästchen) mit Wert = Sonderkondition
Feld 3 (Kontrollkästchen) mit Wert = Berater

User kreuzt Feld1 und Feld3 an. Anhand von diesem sollte jetzt die Suchformel zusammgesetzt werden.

Funktioniert sowas überhaupt?

Offline diali

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.023
  • Geschlecht: Männlich
Re: db.search Problem
« Antwort #16 am: 28.07.05 - 15:40:34 »
Ja.

Am besten machst Du Dir ein berechnetes Feld in die Maske und berechnest den Query-String in dem Feld.
Gruß
Dirk

Offline skywook

  • Senior Mitglied
  • ****
  • Beiträge: 445
  • Ich liebe dieses Forum!
Re: db.search Problem
« Antwort #17 am: 28.07.05 - 15:47:25 »
habe ich probiert.
Aber die IF-Anweisung kommt mit dem Searchsyntax nicht klar z.B

@if(Kundenzuord = "ja"; |NR  = "| + a +|" & IJahr  = "| + WertJahr +|"|; "")

Offline diali

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.023
  • Geschlecht: Männlich
Re: db.search Problem
« Antwort #18 am: 28.07.05 - 15:50:05 »
die | dürften in Formeln nicht funktionieren.

@if(Kundenzuord = "ja"; "NR  = \"" + a +"\" & IJahr  = \"" + WertJahr +"\""; "")
Gruß
Dirk

Offline skywook

  • Senior Mitglied
  • ****
  • Beiträge: 445
  • Ich liebe dieses Forum!
Re: db.search Problem
« Antwort #19 am: 28.07.05 - 15:54:44 »
Danke für den Tipp Dirk  :)
Werd es ausprobieren und eine Rückmeldung geben.

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz