Das Notes Forum

Domino 9 und frühere Versionen => ND6: Entwicklung => Thema gestartet von: mgeidl am 19.07.07 - 10:59:25

Titel: feld setzen für archiv
Beitrag 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
Titel: Re: feld setzen für archiv
Beitrag von: klaussal am 19.07.07 - 11:06:12
Hats Du mal den Debugger mitlaufen lassen ?
Titel: Re: feld setzen für archiv
Beitrag von: Axel am 19.07.07 - 11:07:11
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


Titel: Re: feld setzen für archiv
Beitrag von: klaussal am 19.07.07 - 11:09:20
Entweder das, oder irgendein "if" schlägt zu...
Titel: Re: feld setzen für archiv
Beitrag von: mgeidl am 19.07.07 - 11:14:13
DANKE - ihr seid´s halt die besten. Docs.Save halt gefehlt
Titel: Re: feld setzen für archiv
Beitrag von: klaussal am 19.07.07 - 11:22:01
Gruss an euren Notes-Entwickler...  ;D
Titel: Re: feld setzen für archiv
Beitrag von: mgeidl am 19.07.07 - 11:24:27
jo, werd ich ihm ausrichten und gleich mal eine hinten drauf *ggg*. frage noch: wie schließt man einen beitrag ab?
Titel: Re: feld setzen für archiv
Beitrag von: klaussal am 19.07.07 - 11:27:14
Im ersten Thread unter Symbol den "Daumen hoch" eingeben.