Domino 9 und frühere Versionen > ND8: Entwicklung

Felder aus einem anderen Dokument übernehmen

(1/3) > >>

MarkusL:
Hallo zusammen,

ich drehe mich jetzt seit Stunden im Kreis, daher meine Anfrage:

Problem:
In meinem aktuellen Dokument wähle ich in dem Feld "Raum_Raum"per Dialogliste eine Ressource aus.
Die Formel für die Dialogliste lautet:
@DbLookup( "" : "ReCache" ; "" : "" ; "viewRessourcen" ; @GetField("Raum_Ort") ; 2 ; [FailSilent]) + " - " + @DbLookup( "" : "ReCache" ; "" : "" ; "viewRessourcen" ; @GetField("Raum_Ort") ; 3 ; [FailSilent]) + " - Plätze gesamt: " + @Text(@DbLookup( "" : "ReCache" ; "" : "" ; "viewRessourcen" ; @GetField("Raum_Ort") ; 5 ; [FailSilent]))
Hinweis: Im Feld "Raum_Ort" steht ein Ortsname drin, der vorher ausgewählt wurde.

Wenn der Benutzer jetzt eine Ressource ausgewählt hat, steht diese im Feld "Raum_Raum".

Ich müsste aus dem Dokument der ausgewählten Ressource noch andere Felder ziehen.
Wie komme ich an diese Felder?
Ich möchte nicht jedesmal eine Dialogliste einblenden.
Im Dokument der Ressource steht in einem Feld auch die UNID. Diese könnte und würde ich gerne verwenden. Wie bekomme ich diese in ein Feld in meinem aktuellen Dokument ?

Den Inhalt aus dem Feld "Raum_Raum" kann ich nicht als Suchbegriff in einer Ansicht benutzen, da der Inhalt anders aufgebaut ist, als in der Ansicht. Ausserdem könnte sich daran noch etwas ändern.

Danke für die Hilfe im voraus
Markus

pram:
Die UNID bekomsmt du über
@dblookup(...[RETURNDOCUMENTUNIQUEID])
oder eben in der Ansicht noch in die Spalte mit dazupacken und z.B. durch einen "|" vom Rest trennen.

Felder kannst du dann mittels @GetDocField(UNID,"Feldname") auslesen.

/edit: Sowas ist ebenfalls nicht optimal:
@DbLookup( "" : "ReCache" ; "" : "" ; "viewRessourcen" ; @GetField("Raum_Ort") ; 2 ; [FailSilent]) + " - " +
@DbLookup( "" : "ReCache" ; "" : "" ; "viewRessourcen" ; @GetField("Raum_Ort") ; 3 ; [FailSilent]) + " - Plätze gesamt: " + @Text(
@DbLookup( "" : "ReCache" ; "" : "" ; "viewRessourcen" ; @GetField("Raum_Ort") ; 5 ; [FailSilent]))

Du führst 3x den selben Lookup aus. Mach dir in so einem Fall in der Ansicht "viewRessourcen" eine zus. Spalte in der du alle benötigten Infos berechnest.

Gruß
Roland

Driri:

--- Zitat ---Du führst 3x den selben Lookup aus. Mach dir in so einem Fall in der Ansicht "viewRessourcen" eine zus. Spalte in der du alle benötigten Infos berechnest.

--- Ende Zitat ---

Kann ich im Sinne der Performanceverbesserung auch nur empfehlen. Ich mache das immer so, daß ich in einer Spalte der Ansicht alle Werte mit "~~" verbunden als einen Wert anzeige.

Dann reicht im Dokument ein Lookup und ich hole mir aus dem erhaltenen String mit @Word die Einzelwerte.

MarkusL:
Danke für die Hilfe.
Die Idee mit der zusätzlichen berechneten Spalte und nur einem dblookup habe ich direkt umgesetzt.

Leider stehe ich immer noch auf dem Schlauch.
Die Spalte habe ich jetzt so aufgebaut, dass der Benutzer im Dialogfeld eine "schöne" Auswahl erhält. Daher wollte ich keine UNID einbauen.

Wie kann ich die UNID trotzdem in ein Feld des neuen Dokuments reinschreiben, ohne dass der Benutzer diese sieht?
Wenn ich einen erneuten dblookup mache, muss ich ja wieder eine manuelle Auswahl tätigen.
Oder?

Gruß
Markus

Axel:
Da die UNID in einem Feld enthalten ist, bekommst du sie genau so wie die anderen Felder auch. Nimm diese Feld in die berechnete Spalte auf, z.B.

Feld1 + "~" + Feld2 + "~" + Feld2 + "~" + FeldmitUNID

Separiere sie dann entsprechend mit @Word und schreibe sie in ein verstecktes Feld.

Axel

Navigation

[0] Themen-Index

[#] Nächste Seite

Zur normalen Ansicht wechseln