Domino 9 und frühere Versionen > Entwicklung

Antwortdokumente aktualisieren

<< < (2/3) > >>

Axel:

--- Zitat von: SiebertH am 26.05.04 - 00:57:39 ---...
'1. Wert(rot)=Feld in Hauptdokument, 2. Wert(blau)=Neues Feld in Antwortdokument
   Call dc.StampAll( "Name" , doc.Name(0) )   
   Call dc.StampAll( "Vorname" , doc.Vorname(0) )
   Call dc.StampAll( "Telefon" , doc.Telefon(0) )
...

--- Ende Zitat ---

Auch eine Möglichkeit, wobei der Kommentar allerdings etwas verwirrent ist. Eigentlich müsste es heissen:

1. Wert(rot)= Feld im Antwortdokument, 2.Wert(blau)=Neuer Wert aus Feld im Hauptdokument.

Axel

KSKGG:
Hallo,

danke an alle hat mit dem letzten Hinweis von Axel funktioniert.

Gruß

Holger :) :)

Heiggo:
Uuuuups :-) Sorry, das passiert, wenn man so auf die Schnelle mal was zwischenkommentiert ohne groß darüber nachzudenken :-)


/Edit:
DoppelUps... sorry... thx for correction :-)
/EditEnd

--- Zitat von: Axel am 26.05.04 - 11:45:02 ---
--- Zitat von: SiebertH am 26.05.04 - 00:57:39 ---...
'1. Wert(rot)=Feld in Hauptdokument, 2. Wert(blau)=Neues Feld in Antwortdokument
   Call dc.StampAll( "Name" , doc.Name(0) )  
   Call dc.StampAll( "Vorname" , doc.Vorname(0) )
   Call dc.StampAll( "Telefon" , doc.Telefon(0) )
...

--- Ende Zitat ---

Auch eine Möglichkeit, wobei der Kommentar allerdings etwas verwirrent ist. Eigentlich müsste es heissen:

1. Wert(rot)= Feld im Antwortdokument, 2.Wert(blau)=Neuer Wert aus Feld im Hauptdokument.

Axel


--- Ende Zitat ---

Schnulli:
Hallo zusammen,
ja, der Code ist super! Habe ihn auch schon im Einsatz!

Jetzt habe ich dazu noch eine Frage:

Bei diesem Code werden ja bei jedem Speichern des Hauptdokumentes die Antwortdokumente aktualisiert.
Ich möchte aber, daß die Antwortdokus nur dann aktualisiert werden, wenn vor dem Speichern zumindest eines der relevanten Felder geändert wurde.
Leider weiß ich nicht, wie ich das in LS vormulieren muss ...
 ???

Axel:
Hi,

das ist relativ einfach. Ich hab's weiter oben schon mal gepostet.

Hier nochmal in entwas einfacherer Form.


--- Zitat ---1. Im globalen Declarations-Abschnitt der Hauptmaske habe ich folgende Variablen deklariert:

'Variablen für Abgleich
Dim tmpVorname As String
Dim tmpName As String
Dim tmpTelefon As String

2. Im Postopen-Event habe ich die globalen Variablen mit den Feldinhalten gefüllt.

If (Not doc.IsNewNote) Then
   tmpVorname = doc.Vorname(0)
   tmpName = doc.Name(0)
   tmpTelefon = doc.Telefon(0)
End If

3. Im querySave-Event der Hauptmaske habe ich dann geprüft, ob sich einer oder mehrere Werte geändert haben. Wenn ja wird die funktion für den Abgleich aufgerufen.

Dim ichange As Integer

' Prüfung ob sich die, für den Abgleich relevanten, Felder geändert haben.
If Not doc.IsNewNote Then
   If tmpVorname <> doc.Vorname(0) Then
      ichange = True
   End If  'If tmpVorname <>...
     
   If tmpName <> doc.Name(0) Then
      ichange = True
   End If  'If tmpName <>...

   If tmpTelefon <> doc.Telefon(0) Then
      ichange = True
   End If  'If tmpTelefon <>...
     

End If

If ichange Then
   Set doc = Source.Document
   Set dc = doc.Responses
   
  '1. Wert(rot)= Feld im Antwortdokument, 2.Wert(blau)=Neuer Wert aus Feld im Hauptdokument.

   Call dc.StampAll( "Name" , doc.Name(0) )  
   Call dc.StampAll( "Vorname" , doc.Vorname(0) )
   Call dc.StampAll( "Telefon" , doc.Telefon(0) )
End If

--- Ende Zitat ---


Axel

Navigation

[0] Themen-Index

[#] Nächste Seite

[*] Vorherige Sete

Zur normalen Ansicht wechseln