Das Notes Forum

Domino 9 und frühere Versionen => ND7: Entwicklung => Thema gestartet von: elmolino am 12.12.07 - 12:55:45

Titel: Per Button Werte ändern und dokumentieren (Backend)
Beitrag von: elmolino am 12.12.07 - 12:55:45
Folgendes soll umgesetzt werden:
Per Button wird ein Statusfeld verändert. Das Dokument selbst ist allerdings im Frontend gesperrt über ein Querymodechange Event. Dass der Button den Wert verändert, funktioniert auch. Aber die Änderung des Users wird nicht protokolliert in meiner Dokumenthistorie. Kann man die Änderung des Buttons im Backend mitschreiben oder lieber wie unten im Script das Dokument kurz vom User im Frontend aufmachen lassen, nur um in der Historie zu erscheinen.

(Der Wert stat=100 macht es bearbeitbar, > 100 macht es dicht)

Das Script funktioniert noch dazu noch nicht so, wie ich es will. Es kommt "Object variable not set".

Belehrt mich eines besseren wenn es einfachere Methoden gibt...



Sub Click(Source As Button)
   
   Dim uiws As NotesUIWorkspace
   Dim uidoc As NotesUIDocument   
   Dim session As New NotesSession
   Dim db As NotesDatabase
   Dim doc As NotesDocument
   Dim unid As String
   Dim agent As NotesAgent
   
   Set db = session.CurrentDatabase
   Set uidoc = uiws.CurrentDocument
   Set doc = uidoc.Document
   

   unid = doc.UniversalID
   doc.stat="100"
   Call doc.Save (False,False,False)
   Call uiws.EditDocument( True )
   Call uidoc.save
   
   'Setze Feldwert
   doc.statusfeld= "angenommen"   
   doc.stat="666"
   'Speichere Doc   
   Call doc.save(True, True, True)
   Call doc.ComputeWithForm(False,False)
   NotesUIWorkspace.ViewRefresh
   'Schließe UIDOC
   Call uidoc.close
End Sub
Titel: Re: Per Button Werte ändern und dokumentieren (Backend)
Beitrag von: klaussal am 12.12.07 - 13:01:24
Auf die Schnelle:

Call NotesUIWorkspace.ViewRefresh
Titel: Re: Per Button Werte ändern und dokumentieren (Backend)
Beitrag von: koehlerbv am 12.12.07 - 13:03:19
Natürlich kann (und soll) man dies im Backend machen.

Weiters: Mit dem QueryModeChangeEvent verhinderst Du NICHT (sicher), dass der User das Dokument nicht doch zum Bearbeiten öffnen kann!!

Hast Du auch einen Namen, den man ansprechen kann? Das Antworten macht sonst nicht so viel Spass.

Bernhard

@klauss - das funktioniert nicht, wenn das Dokument nicht Bearbeiten-Modus ist.
Titel: Re: Per Button Werte ändern und dokumentieren (Backend)
Beitrag von: elmolino am 12.12.07 - 13:11:24
Also für unsere Zwecke reicht der QueryModeChangeEvent zum Bearbeiten-Verhindern. Wichtig wäre mir nur, dass die Änderung des Users per Button im Backend irgendwie im Protokoll auftaucht....

Gruß Elmar
Titel: Re: Per Button Werte ändern und dokumentieren (Backend)
Beitrag von: klaussal am 12.12.07 - 13:13:06
Zitat
@klauss - das funktioniert nicht, wenn das Dokument nicht Bearbeiten-Modus ist.

Das mag ja sein, aber wenn der Author den Debugger nicht kennt.....
Titel: Re: Per Button Werte ändern und dokumentieren (Backend)
Beitrag von: koehlerbv am 12.12.07 - 13:16:23
... oder in der Ansicht Strg-B drückt ...  ;D
Titel: Re: Per Button Werte ändern und dokumentieren (Backend)
Beitrag von: elmolino am 12.12.07 - 13:19:38
Jetzt helft mir mal mit dem Protokoll / Historie...warum taucht dort die Änderung über den Backend Button nicht auf ? Was kann man da tun

Elmar
Titel: Re: Per Button Werte ändern und dokumentieren (Backend)
Beitrag von: Thomas Schulte am 12.12.07 - 13:22:41
Da wir nicht wissen wie dein Protokoll/ deine Historie normalerweise gefüllt wird, können wir gar nichts tun.

Was du tun kannst, ist dir anzuschauen in welchen Feldern das wie reingeschrieben wird und anschließend genau diesen Mechanismus in deinem Script entweder einbinden oder nachbilden.