Domino 9 und frühere Versionen > Entwicklung
Dokument --> Antwortdokument --> $REF
Fbaum:
Ich möchte die Aktion in der Ansicht auslösen. Am besten damit, daß ich das orginal Dok und das Antwortdok markiere.
Das Antwortdok ist im Designer auch als solches angegeben. Nur über LS wird das Dok nicht als Antwortdok erstellt.
Performance:
moment ich bin dran.......
Rob Green:
sach mal, FBaum, schieb doch endlich in drei Teufels Namens diese beknackte DB rüber...sakra sappra diamiamau... :-*
*nix für ungut, bin nit böse, nur etwas ungeduldig ;D, es ist ein rumstochern im Nebel, weil Du doch selbst nicht weißt, ob das Doc ein Response ist oder was auch immer...ich denke, daß es schona us Respekt vor den Bemühung vieler schon angebracht wäre..und wenn sich Deine Firma eben jungfräulich mit der obergeheimen Anwendung anstellt, dann lass es einfach...dag denen, daß es nicht geht und schluß...meine Meinung natürlich..dann quälst Du Dich nicht mehr so..ok, nur ein gut gemeinter Rat*
ata:
... mit dem ersten Agenten (alle markierten Dokumente) übernimmst du die Zuweisung der DocID in die Notes.ini
@Environment("MainDocID" ; @Text(@DocumentUniqueID))
... der zweite Agent hat folgenden Code
--- Code: --- Dim session As New NotesSession
Dim dbThis As NotesDatabase
Dim dc As NotesDocumentCollection
Dim docMain As NotesDocument
Dim doc As NotesDocument
Dim sDocID As String
Dim i As Integer
Set dbThis = session.CurrentDatabase
Set dc = dbThis.UnprocessedDocuments
' # Die DocID einlesen
sDocID = session.GetEnvironmentString("MainDocID")
If sDocID = "" Then
Msgbox "Es konnte keine zugehörige DocID gelesen werden"
Exit Sub
End If
' # Das Haupdokument initialisieren
Set docMain = dbThis.getDocumentByUNID(sDocID)
If docMain Is Nothing Then
Msgbox "Das Haupt-Document konnte nicht geöffnet werden"
Exit Sub
End If
If dc.Count > 0 Then
Set doc = dc.GetFirstDocument
Call Doc.RemoveItem("$Ref")
For i = 1 To dc.Count
Call doc.MakeResponse( docMain )
Call doc.Save(True , True)
Set doc = dc.GetNextDocument(doc)
Next
Else
Print "Es waren keine Dokumente markiert"
End If
Call session.SetEnvironmentVar("MainDocID" , "")
--- Ende Code ---
Ich habe den Code getestet , der funzt...
ata
Edit: ... das ist ja mittlerweile richtig lebhaft geworden..
ata
Performance:
ich geb dann auch meinen Senf dazu
@rob
es ist manchmal frustrierend ellenlange beiträge zu lesen wo man nicht den roten Faden erkennen kann
@Fbaum
ich habe das in der view mit einem Aktion button gemacht
Sub Click(Source As Button)
Dim ws As New NotesUIWorkspace
Dim s As New NotesSession
Dim db As NotesDatabase
Dim parent As NotesDocument, child As NotesDocument
Dim col As NotesDocumentCollection
Set db = s.CurrentDatabase
Set col = db.Unprocesseddocuments
If col.count <> 2 Then Exit Sub
Set parent = col.GetFirstDocument
Set child = col.GetLastDocument
REM Dokument aufgrund eines Feldes unterscheiden
If (Messagebox("Ist < " + parent.subject(0) + " > das Hauptdokument ?", 3 + 32, "Info") ) = 6 Then
''' ok
Elseif (Messagebox("Ist < " + child.subject(0) + " > das Hauptdokument ?", 3 + 32, "Info") ) = 6 Then
Set child = col.GetFirstDocument
Set parent = col.GetLastDocument
Else
Exit Sub
End If
REM damit nicht das Hauptdok ein Kinddok des Kindes wird checkst du hier nochmal die Form ab
If parent.Form(0) <> "MainTopic" Then Exit Sub
Call child.MakeResponse(parent)
child.save True, False
Call ws.viewrefresh
End Sub
cu
Navigation
[0] Themen-Index
[#] Nächste Seite
[*] Vorherige Sete
Zur normalen Ansicht wechseln