Hallo Forum,
ich sehe den Wald vor lauter Bäumen wohl nicht mehr!!
Mein Problem:
Eine Anwendung hat ein Profildokument. Dieses will ich zu Backupzwecken manuell in ein "normales" Notesdokument sichern. Allerdings muss noch eine
Datei angehängt werden, die auf dem Dominoserver liegt.
Hört sich erst mal nicht dramatisch an!
Aber...
Wenn ich nun das Profildokument in ein neues Dokument kopiere und dieses dann per agent.runonserver dem Backend übergebe um auf dem Dominoserver noch eine Datei anzuhängen die dort im Dateiverzeichnis liegt, gibt es lauter seltsame phänomene.

Wie z.B.:
- Das per agent übergebene Dokument ist manchmal nicht vorhanden
- Das Profildokument ist manchmal zurückgesetz nach dem Kopiervorgang
- usw.
Für mich sieht es aus, als wenn beim kopieren eine Referenz zwischen den Dokumenten bestehen bleiben würde die hier alles zum spinnen bringt.
| initialisierung usw... |
| |
| Set konfigDoc = ws.Currentdocument.Document |
| If konfigDoc Is Nothing Then |
| IB_MsgBox "No UI document" , 64, "Co_Hinweis" |
| Exit function |
| End If |
| |
| Set archiveDoc = CurrentDatabase.Createdocument() |
| Call konfigDoc.Copyallitems(archiveDoc, True) |
| Call archiveDoc.Save(True, False) |
| Call archiveDoc.Replaceitemvalue("Form", "BackupConfiguration") |
| Call archiveDoc.Replaceitemvalue("C_Dokart", "BackupConfiguration") |
| Call archiveDoc.Replaceitemvalue("BackupName", vZwerg) |
| Call archiveDoc.Save(True, False) |
| |
| |
| Set agent = CURRENTDatabase.Getagent("Backup_Save_Client.Store") |
| If agent Is Nothing Then |
| Call C_ALog("E", 1, "Agent: Backup_Save_Client.Store not found!", "") |
| Else |
| Call agent.Runonserver(archiveDoc.Noteid) |
| End If |
| |
Hier der Azuszug aus dem RunOnServer Agenten
Ich habe hier versucht zu testzwecken das Dokument nochmals mit der UNID zu öffnen. Hier kommt dann die Meldung, dass das Dokument nicht vorhanden ist!
| |
| Set agent = ses.CurrentAgent |
| Set archivDoc = CURRENTDatabase.GetDocumentByID(agent.ParameterDocID) |
| |
| If archiveDoc Is Nothing Then |
| Call C_ALog("E", 1, "Can't find dbsetup for detache client.store file!", "") |
| Exit sub |
| End If |
| |
| unid = archivDoc.Universalid |
| Print "#### unid: " & unid |
| Set archivDoc = Nothing |
| |
| Set archivDocNew = CURRENTDatabase.Getdocumentbyunid(unid) |
| If Not archivDocNew Is Nothing Then |
| Call C_ALog("E", 1, "archiveDoc not found!", "") |
| exit sub |
| End If |
Umgebung:
Notes und Domino 9 deutsch aktuellste Version
Grüße
Bernd