Domino 9 und frühere Versionen > Entwicklung

evaluate in lotusscript

(1/2) > >>

forrest g:
hallo zusammen,

ich habe folgendes problem in einer scriptlibrary:
- in meiner datenbank habe ich die eigenschaft gewählt: allow soft deletions(in deutsch heisst das glaube ich wiederherstellbare löschungen erlauben)
- in meinem script möchte ich ein dokument wiederherstellbar -also nicht endgültig- löschen
- in der formelsprache geht das mit @deletedocument
- das habe ich über evaluate(wie in der hilfe gefunden) folgendermassen eingebunden:
eval = session.evaluate( "@deletedocument", doc )

ich kann diese formel nicht speichern, fehlermeldung "not a member"!

was mache ich falsch?
oder gibt es einen anderen besseren lösungsansatz?

vielen dank im voraus

klaussal:
... da müsste man schon den ganzen code sehen (zb. dim, set)  ;D
eine zeile reicht nicht

forrest g:
hallo klaus,

wie du möchtest...
habe die messageboxen für dir fehler mal aus dem code rausgenommen.

vielen dank für die hilfe

Function funcAktionLoeschenView( doc As notesdocument )
      
   On Error Goto Fehler
   
   'DEKLARATION DER NOTESOBJEKTE   
   'Frontend
   Dim ws As New notesuiworkspace
   
   'Backend
   Dim session As New notessession
   Dim db As notesdatabase
   Dim col As notesdocumentcollection

   'VARIABLEN
   Dim Form As String
   Dim Unid As String
   Dim Status As String    
                  
   Dim AntwortLoeschStatus As Variant   
   
   Dim FehlerXDocs As String   
   Dim Fehler0Doc As String   
   Dim DocGelöscht As String   
   
   'ZUWEISUNG DES NOTES-ENVIRONMENT      
   Set db = session.currentdatabase
                Set col = session.currentdatabase.UnprocessedDocuments
   
   If col.count = 0 Then
      Msgbox Fehler0Doc   
      Print Fehler0Doc
      Exit Function
   End If
   
   If col.count = 1 Then
      Set doc = col.GetFirstDocument   
      Form = doc.Form(0)
      Unid = doc.UniversalID
      
      If ( Form = "fHilfsdokument" ) Then
         'Funktionsaufruf zur Löschung der Antwortdokumente, wenn das aktuelle Dokument ein Hauptdokument ist
         Set AntwortLoeschStatus = funcVererbenLoeschen( doc )   
      End If
      
      If ( (Form = "fHilfsdokument" And AntwortLoeschStatus = "1") Or _
      (Form = "fHilfsdocAntwort" Or Form = "fRückantwort") ) Then
            If Not ( doc.GLBesonders(0) <> "1" ) Then

            doc.GLLöschDatum = Left( Cstr(Now), 16 )
            doc.GLKiller = session.commonusername
                  
            Set doc = funcVererbenHistorie( doc, Status )
            If doc Is Nothing Then
               Goto Fehler
            End If
            
            'Aktuelles Dokument löschen
            Dim eval As Variant
            eval = session.evaluate( "@deletedocument", doc )
            If ( eval ) Then
               Msgbox DocGelöscht
            End If
         End If
      End If
      
   Else
      Msgbox FehlerXDocs
      Print FehlerXDocs
      Exit Function   
   End If 'ANZAHL GEWAEHLTER DOKUMENTE
   
   Goto Ende
   
Fehler:
   'FEHLERBEHANDLUNG: die Fehlerbehandlung in einer eigenen Library"Errorhandling" wird aufgerufen
   Call funcFehler

Ende:
   'BEENDEN DER SUB
End Function

klaussal:
... das war's dann wohl

@DeleteDocument

Verwendung:
Diese Funktion ist nur für die Verwendung in Formeln vorgesehen, die von Agenten ausgeführt werden; sie hat an anderer Stelle keine Wirkung.

(ein kleiner auszug aus der designer-hilfe)
 ;)

forrest g:
jo, danke

also entweder im agenten oder...

weiss noch jemand eine andere lösuntg?

vielen dank an klaus

Navigation

[0] Themen-Index

[#] Nächste Seite

Zur normalen Ansicht wechseln