Domino 9 und frühere Versionen > ND6: Entwicklung
Listenfeld -> gewähltes Element holen
diwi:
Tag zusammen,
ich habe von einem unserer Schwesterwerke eine DB "geerbt", die bis jetzt wunderbar funktioniert hat.
In der DB gibts eine Maske, die für eine Kunden Auswahl benutzt wird. In dieser Maske gibt es zwei Listenfelder.
Das erste ist eine Kundenliste (List), die aus einer Ansicht gefüllt wird.
--- Code: ---@DbLookup( "": "ReCache" ; "":"" ; "(CustomerView)"; @Text(SearchCustomer) ; 1; [PartialMatch])
--- Ende Code ---
Die (CustomerView) besteht aus einer Spalte:
KundeA | DocUID
KundeB | DocUID
KundeC | DocUID
usw.
Die andere ist eine Kontaktliste, die nach Auswahl der Kundenliste ebenfalls aus einer Ansicht gefüllt wird.
--- Code: ---@If(List="";"";@DbLookup( "": "ReCache" ; "" : "" ; "(ContactView)"; List ; 2 ))
--- Ende Code ---
Nach Auswahl des Kontakts werden weitere Felder im Dokument gefüllt.
So und nun zum Problem. Sobald in der Kundenliste der Kundenname doppelt vorkommt funktioniert das ganze nicht mehr, da das Feld "List" mir zwei DocUID's zurückgibt und somit die Kontakte von beiden Kunden auftauchen.
Besteht die Möglichkeit nur den gerade gewählten Kunden aus dem Listenfeld rauszubekommen?
Oder zumindest abzufragen welcher der gleichnamigen Kunden gewählt ist?
Oder bin ich da ganz auf dem Holzweg... und es gibt eine andere Lösung dafür?
Bin für alle Vorschläge dankbar!
Gruß
Dimitri
DAU-in:
Warum verwendest du beim ersten DBLookup partialmatch?
[PARTIALMATCH] returns a match if the key matches the beginning characters of the column value.
grüsse
Dau-in
diwi:
Ach hab ich vergessen zu erwähnen... ;D
In der Maske gibts noch das Feld "SearchCustomer". In dieses Feld soll der User Anfang vom Kundennamen eingeben können, durch welchen dann die Liste der Kunden eingeschränkt wird. Daher das [PARTIALMATCH].
Gruß
Dimitri
LotusMen:
Das Problem kann über LotusScript umgesetzt werden ;).
LN4ever:
Hallo Dimitri,
so in etwa könnte es etwas werden:
zwisch:=@DbLookup(....);
@If(@IsError(zwisch);@Return("");NULL);
@If(@Elements(zwisch)<1;@Return("");NULL);
Vorschlag:=@Subset(zwisch;1);
List:=@If(@Elements(zwisch)=1;zwisch;@Prompt([OKCANCELLIST]; ...;Vorschlag;zwisch));
Gruß
Norbert
Navigation
[0] Themen-Index
[#] Nächste Seite
Zur normalen Ansicht wechseln