Das Notes Forum
Domino 9 und frühere Versionen => ND6: Entwicklung => Thema gestartet von: torstenralf am 04.08.06 - 13:17:30
-
Hallo,
ich habe zwei Dokumente, die über eine gleiche Nummer mit einander verknüpft sind. Nun möchte ich gern per Script in Dokument 1 den entsprechenden Wert aus Dokument 2 anzeigen. Bei einem Feld klappt das auch prima, aber ich habe ca. 300 entsprecht zu füllende Felder.
Mein Problem ist, das es mir noch nicht gelang den(die) Feldnamen als Variable zu übergeben.
Danke und ein schönes Wochenende
Torsten ???
-
Also mal wieder die Standardfragen:
- was sagt der Debugger ?
- wie sieht das Script aus ?
- was hast Du bisher unternommen, um den Fehler zu finden ?
- etc pp...
-
Hallo
ich werde mal meine Glaskugel bemühen ::)
Du hast ein Dokument, das alle notwendigen Informationen gespeichert hat.
Ein zweites Dokument soll (fast) alle Werte aus Dok1 anzeigen und noch weitere Werte aufnehmen?!
Möglichkeit 1: Dok2 "weiß" die DocumentUniqueID von Dok1 ?! :-:
Möglichkeit 2: Oder beide Doks habe irgendeine eindeutige ID ?! :-:
Zu Möglichkeit 1:
@GetDocField( ..... )
Zu Möglichkeit 2:
_field1 := @DBLookUp( "" ; "" ; "vDeineLookUpView" ; "fldDasGewuenschteFeld" );
Field fldDasGewuenschteFeld := _field1 ;
??? :-:
Aber alles nur durch die Glaskugel ;)
Wie machst Du das denn bei dem Feld wo es funktioniert...
-
Oh meine Glaskugel war dreckig...
gern per Script in Dokument 1 den entsprechenden Wert aus Dokument 2 anzeigen
mit Scripte kannst Du nur die Werte ermitteln. Anzeigen kannst Du nur über Felder etc in der Maske.
Wäre sinnvoll, wenn du schreibst, was dur erreichen möchtest.
-
Guten Abend,
schon mal vielen Dank. Hier mehr Info'
Es gibt ein Dokument mit den Anforderungen und der Stellennummer.
Das 2. Dokument erhält die Ist-Stände und die aktuelle Stellennummer.
Set db=s.CurrentDatabase
Set w = New NotesUIWorkspace
Set view1 = db.GetView("va_stelleninhaber")
Set uidoc = w.CurrentDocument
Set d1 = uidoc.Document
' feld auslesen
Set i1 = d1.GetFirstItem("s1110010")
person = d1.sb_stellennummer(0)
smerkmal = d1.s1110010(0)
Set doc = view1.GetFirstDocument
While Not (doc Is Nothing)
If doc.fd_aktstelle(0) = person Then
temp=doc.am1110010(0)
End If
Set doc = view1.GetNextDocument(doc)
Wend
Soweit gehts, über fd_aktstelle(0) finde ich das gültige Ist-Dokument. temp bekommt den Wert aus dem entprechenden Feld. Ich möchte nur nicht für jedes Feld den Aufwand treiben, also habe ich die Idee die Feldnamen (am1110010) per Schleife aus zulesen (z. B. "am" "111" "0010" das 1. Drittel bis "810" und diese Möglichkeit für jeden Teil des Namens)
Danke Torsten
-
Schau Dir dazu die Methode GetItemValue der NotesDocument-Klasse an - hier kannst Du Strings (als Variable) als Parameter übergeben und Dir daher die gewünschtem Items auch per Schleife (und sei es aus einem de facto "konstanten" Array Deiner Itembezeichner auslesen).
Wenn Du mit GetItemValue noch nicht gearbeitet hast: Rückgabewert ist immer ein Array!
HTH,
Bernhard