Das Notes Forum
Domino 9 und frühere Versionen => ND6: Entwicklung => Thema gestartet von: mgeidl am 19.07.07 - 10:59:25
-
Hallo,
ich brauch ganz dringend eure hilfe.
vor einigen wochen war unser externer notes-entwickler hier, der zurzeit aber grad irgendwo am strand weilt :-( der hat mir ins querysave beim archivierungs-script eingebaut, daß das dokument, von welchem eine kopie in die archiv-db wandert, in der original-db ein feld "deleteme" mit 1 abbgekommt. diese dokumente würden dann in eine eigene ansicht wandern und von einem agenten abends mal gelöscht werden. aber eben in diesem dokument wird das feld nicht gesetzt. Hier mal das script, vielleicht kann mir jemand helfen - bitte
Sub Querysave(Source As Notesuidocument, Continue As Variant)
Dim Doc,DocS As NotesDocument
Dim DB As NotesDatabase
Dim View As NotesView
Dim s As New NotesSession
Dim Search (1 To 1) As String
Dim DBArchiv As NotesDatabase
Set Db=s.CurrentDatabase
Set View=DB.GetView("(Lookup)")
Set Doc=Source.Document
REM Wenn Name der Datenbank nicht "roto\Handbuch\Handbuch.nsf" -> EXIT
If (db.FilePath<>"roto\Handbuch\ManagementHB.nsf") Then
Exit Sub
End If
REM wenn aktuelles Dokument nicht freigegeben -> exit
If (Doc.Status(0)<>"freigegeben") Then
Exit Sub
End If
Set DBARchiv=New NotesDatabase("RFLESRV1","roto\Handbuch\Archiv_ManagementHB.nsf")
If (DbArchiv.IsOpen=False) Then
Exit Sub
End If
Search(1)=Doc.Werknormnummer(0)
Set DocS=View.GetDocumentByKey( Search )
REM wenn Dokument nicht gefunden -> exit
If (DocS Is Nothing) Then
Exit Sub
End If
REM wenn aktuelles Dokument gefunden wurde -> exit
If (Doc.UniversalId = DocS.UniversalId) Then
Exit Sub
End If
REM wenn gefundenes Dokument nicht freigegeben -> exit
If (DocS.Status(0)<>"freigegeben") Then
Exit Sub
End If
Doc.Index=Doc.Index(0)+1
Call DocS.CopyToDatabase(DBArchiv)
'Call DocS.Remove(True)
DocS.DeleteMe="1"
Call View.Refresh
End Sub
-
Hats Du mal den Debugger mitlaufen lassen ?
-
Auf den ersten Blick würde ich sagen, dass da ein Save fehlt.
...
Call DocS.CopyToDatabase(DBArchiv)
'Call DocS.Remove(True)
DocS.DeleteMe="1"
Call DocS.Save(True,False)
Call View.Refresh
...
Axel
-
Entweder das, oder irgendein "if" schlägt zu...
-
DANKE - ihr seid´s halt die besten. Docs.Save halt gefehlt
-
Gruss an euren Notes-Entwickler... ;D
-
jo, werd ich ihm ausrichten und gleich mal eine hinten drauf *ggg*. frage noch: wie schließt man einen beitrag ab?
-
Im ersten Thread unter Symbol den "Daumen hoch" eingeben.