Autor Thema: Problem mit Multi Value Feld und uidoc.FieldContains  (Gelesen 5959 mal)

Offline Kadlec

  • Senior Mitglied
  • ****
  • Beiträge: 489
  • Geschlecht: Männlich
  • Ich liebe dieses Forum!
Hallo wie kann ich mit uidoc.FieldContains einen String in einem MultiValue Feld abfragen?
Oder wie kann ichs anders lösen?
Der String den ich erwarte steht am Ende des Feldes.
Habe als "Verlegenheitslösung??" ein anderes Einfach Feld mit der Formel @Subset(Download_T;-1) erstellt dort kann ich dann den String abfragen.
Aber gehts nicht auch anders??

Boris

Offline rar

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 856
  • Geschlecht: Männlich
  • Des passt scho
    • click
Re:Problem mit Multi Value Feld und uidoc.FieldContains
« Antwort #1 am: 15.04.04 - 11:18:42 »
Hi,
Du könntest das Feld durchschleifen.
z.B.
Set doc = uidoc.Document
Forall x In doc.Feldname
   If x = "Dein Wert" Then
      'Wert ist drin
   End If
End Forall

HTH
-rar
†090620141300

Offline Kadlec

  • Senior Mitglied
  • ****
  • Beiträge: 489
  • Geschlecht: Männlich
  • Ich liebe dieses Forum!
Re:Problem mit Multi Value Feld und uidoc.FieldContains
« Antwort #2 am: 15.04.04 - 11:52:37 »
Was ich noch erwähnen muss... das ganze passiert im Terminate des Feldes das dann entsprechend gesetzt wird.
Sorry hatte ich vergessen.

Die Schleife funktioniert nicht.

Boris

Glombi

  • Gast
Re:Problem mit Multi Value Feld und uidoc.FieldContains
« Antwort #3 am: 15.04.04 - 12:14:27 »
...
dim doc as NotesDocument
set doc = uidoc.Document
dim item as NotesItem
set item = doc.GetFirstItem("DeinFeldname")
if item.Contains("Dein Wert") then
'Wert ist drin
else
'Wert ist nicht drin
end if

Andreas

Offline Kadlec

  • Senior Mitglied
  • ****
  • Beiträge: 489
  • Geschlecht: Männlich
  • Ich liebe dieses Forum!
Re:Problem mit Multi Value Feld und uidoc.FieldContains
« Antwort #4 am: 15.04.04 - 12:33:05 »
Andreas
So hatte ich es schon versucht.
Der String wird aber nicht gefunden.
« Letzte Änderung: 15.04.04 - 12:33:45 von Kadlec »

Offline Semeaphoros

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.152
  • Geschlecht: Männlich
  • ho semeaphoros - agr.: der Notesträger
    • LIGONET GmbH
Re:Problem mit Multi Value Feld und uidoc.FieldContains
« Antwort #5 am: 15.04.04 - 13:57:03 »
Kadlec
Dann schau mal im Debugger nach, wie denn der String abgespeichert ist und ob Du nach demselben Inhalt abfragst
Jens-B. Augustiny

Beratung und Unterstützung für Notes und Domino Infrastruktur und Anwendungen

Homepage: http://www.ligonet.ch

IBM Certified Advanced Application Developer - Lotus Notes and Domino 7 und 6
IBM Certified Advanced System Administrator - Lotus Notes and Domino 7 und 6

Offline Kadlec

  • Senior Mitglied
  • ****
  • Beiträge: 489
  • Geschlecht: Männlich
  • Ich liebe dieses Forum!
Re:Problem mit Multi Value Feld und uidoc.FieldContains
« Antwort #6 am: 15.04.04 - 14:28:26 »
Das mit dem Debugger ist so ne Sache.
Aber der springt bei der Geschichte nicht an.
Ich starte ein LS welches dann dieses Dokument erstellt.
Während das Dokument im Vordergrund ist wird in die Db eine Datei importiert. Die einzelnen Zeilen werden außerdem noch in ein Feld dieses Doks. geschrieben. Und den Inhalt dieses Feldes möchte ich überprüfen ob dort der String "END OF LIST" ist. Wenn ja dann Download OK wenn nicht dann nicht.
Aber wie gesagt der Debugger läüft nur durch das LS nicht aber in die Maske.

Nachtrag:
Was im Feld steht sehe ich ja und der String den ich suche ist vorhanden.
« Letzte Änderung: 15.04.04 - 14:30:52 von Kadlec »

Offline Kadlec

  • Senior Mitglied
  • ****
  • Beiträge: 489
  • Geschlecht: Männlich
  • Ich liebe dieses Forum!
Re:Problem mit Multi Value Feld und uidoc.FieldContains
« Antwort #7 am: 15.04.04 - 14:32:44 »
Das mit dem Debugger ist so ne Sache.
Aber der springt bei der Geschichte nicht an.
Ich starte ein LS welches dann dieses Dokument erstellt.
Während das Dokument im Vordergrund ist wird in die Db eine Datei importiert. Die einzelnen Zeilen werden außerdem noch in ein Feld dieses Doks. geschrieben. Und den Inhalt dieses Feldes möchte ich überprüfen ob dort der String "END OF LIST" ist. Wenn ja dann Download OK wenn nicht dann nicht.
Aber wie gesagt der Debugger läüft nur durch das LS nicht aber in die Maske.

Nachtrag:
Was im Feld steht sehe ich ja und der String den ich suche ist vorhanden.
Ach ja und wenn ich wie Eingangs erwähnt in einem "Einzel" Feld suche funkt. es einwandfrei.

Offline Semeaphoros

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.152
  • Geschlecht: Männlich
  • ho semeaphoros - agr.: der Notesträger
    • LIGONET GmbH
Re:Problem mit Multi Value Feld und uidoc.FieldContains
« Antwort #8 am: 15.04.04 - 14:33:13 »
> Was im Feld steht, sehe ich ja ....


Auch die Leerschläge? Dann muss ich mich wohl mal nach einer neuen Brille sehnen ........  ;D
Jens-B. Augustiny

Beratung und Unterstützung für Notes und Domino Infrastruktur und Anwendungen

Homepage: http://www.ligonet.ch

IBM Certified Advanced Application Developer - Lotus Notes and Domino 7 und 6
IBM Certified Advanced System Administrator - Lotus Notes and Domino 7 und 6

Offline Kadlec

  • Senior Mitglied
  • ****
  • Beiträge: 489
  • Geschlecht: Männlich
  • Ich liebe dieses Forum!
Re:Problem mit Multi Value Feld und uidoc.FieldContains
« Antwort #9 am: 15.04.04 - 14:47:49 »
Na ja das mit den Leerschlägen ist so ne Sache OK.

Aber das ist doch egal oder?? Kopf kratz...denn.

In dem Feld wo es gefunden wird sieht es so aus:

0                                                           END OF LIST 18:43
Und das Feld wo nicht:

0  12 34 ..........
0  12 34 ..........
0  12 34 ..........
0                                                           END OF LIST 18:43


Glombi

  • Gast
Re:Problem mit Multi Value Feld und uidoc.FieldContains
« Antwort #10 am: 15.04.04 - 14:48:26 »
Kann es sein, dass die 32K Grenze für Textfelder überschritten wird? Wie groß ist denn die Datei?
Steht der String "END OF LIST" auch in den Dokumenteigenschaften?

Glombi

  • Gast
Re:Problem mit Multi Value Feld und uidoc.FieldContains
« Antwort #11 am: 15.04.04 - 14:53:17 »
Soll das
0                                                          END OF LIST 18:43
ein String sein? Dann findet item.Contains("END OF LIST") das nicht. In diesem Fall über alle Werte iterieren und dann mit Instr arbeiten.

dim endoflist as integer
endoflist = false
forall wert in doc.DeineFeld
if instr(wert;"END OF LIST") > 0 then
endoflist = true
exit forall
end if
end forall

Wenn es immer der letzte Eintrag ist, geht es auch eifnacher mit
dim ub as integer
dim endoflist as integer
endoflist = false
ub = UBound(doc.DeinFeld)
if instr(doc.DeinFeld(ub)) > 0 then
endoflist = true
end if

Andreas
« Letzte Änderung: 15.04.04 - 14:53:56 von Glombi »

Offline Kadlec

  • Senior Mitglied
  • ****
  • Beiträge: 489
  • Geschlecht: Männlich
  • Ich liebe dieses Forum!
Re:Problem mit Multi Value Feld und uidoc.FieldContains
« Antwort #12 am: 15.04.04 - 15:12:56 »
Also mal der Reihe nach:

32k Grenze für Feld ???? Mist nicht drangedacht Aaber in dem Fall Ok sind knapp 30 und in den Dokumenteigenschaften steht alles drin. Für die Zukunft ist mein Ansatz damit aber gestorben denn da kommen mehr zusammen wie 32k.

0                                                          END OF LIST 18:43
ist ein String. wird ja gefunden.

Habe jetzt aber mal den Inhalt des Multi Value Felds bis auf die letzte Zeile gelöscht.....und siehe da der String wird nicht gefunden.
Hängt also nur am Feld??

Offline Semeaphoros

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.152
  • Geschlecht: Männlich
  • ho semeaphoros - agr.: der Notesträger
    • LIGONET GmbH
Re:Problem mit Multi Value Feld und uidoc.FieldContains
« Antwort #13 am: 15.04.04 - 15:25:50 »
Mit den Leerschlägen das ist wirklich so eine Sache, wollte damit vor allem sagen, "Man sieht das ja" ist keine gültige Begründung.

Wie sieht denn das aus mit Andreas' jüngstem Vorschlag mit dem Iterieren über die einzelnen Werte und Suchen über Instr?
Jens-B. Augustiny

Beratung und Unterstützung für Notes und Domino Infrastruktur und Anwendungen

Homepage: http://www.ligonet.ch

IBM Certified Advanced Application Developer - Lotus Notes and Domino 7 und 6
IBM Certified Advanced System Administrator - Lotus Notes and Domino 7 und 6

Offline Kadlec

  • Senior Mitglied
  • ****
  • Beiträge: 489
  • Geschlecht: Männlich
  • Ich liebe dieses Forum!
Re:Problem mit Multi Value Feld und uidoc.FieldContains
« Antwort #14 am: 15.04.04 - 15:36:34 »
Der letzte Vorschlag von Andreas erhält den Zuschlag. So scheint es zu funktionieren.
Hat zwar noch nen kleinen Moment gedauert bis ich das Semikolon gefunden hatte... aber es geht.
Danke Euch allen.

Boris

Glombi

  • Gast
Re:Problem mit Multi Value Feld und uidoc.FieldContains
« Antwort #15 am: 15.04.04 - 15:46:19 »
Der letzte Vorschlag von Andreas erhält den Zuschlag. So scheint es zu funktionieren.
Hat zwar noch nen kleinen Moment gedauert bis ich das Semikolon gefunden hatte... aber es geht.
Sorry, ich hatte es so runtergetippt ohne es genau zu prüfen. Im 2. Beispiel habe ich auch noch den 2. Parameter unterschlagen...
Aber Du hast es ja auf die Reihe bekommen.

Gruß
Andreas

Offline Kadlec

  • Senior Mitglied
  • ****
  • Beiträge: 489
  • Geschlecht: Männlich
  • Ich liebe dieses Forum!
Re:Problem mit Multi Value Feld und uidoc.FieldContains
« Antwort #16 am: 15.04.04 - 15:52:47 »
Ist doch kein Thema das kleine semikolönschen gegen die Lösung
des Problems.

Nochmal Vielen Dank
Boris

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz