Checken ob Datei in Novell vorhanden ?!

  • Hi Leuts.
    Ich hab ein kleines Script, das auf einer Datenbank innerhalb von Dokumenten Dateianlagen einfügt. Vorher löscht das Script das Feld, in dem der Anhang rein soll, dann baut es sich einen Dateinamen sammt Pfad zusammen (aus einem weiteren Feldinhalt des Dokumentes) und fügt dann, sofern dieses Zusammengestellte Dokument existiert, die Datei als Anlage in das Dokument ein und speichert es weg.


    Hier das Script :


    Sub Click(Source As Navigator)
    Dim s As New NotesSession
    Dim db As NotesDatabase
    Dim v As NotesView
    Dim d As NotesDocument
    Const viewname = "DOCArchiv1" '-- Ansicht nach Dokumentennummer, hier musste DEINE Ansicht rein
    Dim rt As notesrichtextitem



    Set db = s.CurrentDatabase
    Set v = db.GetView (viewname)


    Set d = v.GetFirstDocument


    If Not d Is Nothing Then Do


    '--Anfang der Verarbeitung



    If d.hasembedded = True Then '-- Wenn Anhang vorhanden
    '-- Anhang entfernen
    Call d.RemoveItem( "Anlage" ) '-- Zuerst das Feld weg da gleich Neuerstellung
    Call d.RemoveItem( "$file" ) '-- Dann Anhang töten
    End If


    Datei$ = d.SachNr (0) '-- Name aus Dokument
    dateiname$ = "00" & Cstr(Datei$)&".tif" '-- Zwei führende Nullen davor
    ordnername$ = Left(dateiname$,6) '-- 6 Stellen des Dateinamens von links


    Set xt = New notesrichtextitem (d,"Anlage") '--RT Feld neu definieren
    On Error Resume Next '-- Fehler abfangen wenn keine Datei vorhanden
    Call xt.embedobject (EMBED_ATTACHMENT,"","P:\tif\" & ordnername$ & "\" &dateiname$)


    Call d.save (True,True)


    Resume Next '-- Errorhandling, nächstes doc bei Fehler
    Set d = v.GetNextDocument (d)
    Loop Until d Is Nothing
    End If
    End Sub


    Läuft auch super, ABER :


    Das Script tötet erst alle Anhänge und prüft dann erst, ob eine neu einzufügende Anlage vorhanden ist. In dem Ordner, aus dem das Script die Dateien saugt liegen aber nur NEUE = AKTUELLE Dateien, nicht ALLE. Soll heißen, wenn das Script das aller erste mal mit ALLEN Dateien vollgepackt wurde, dies geschieht mit einer Kopie dieses Scriptes, das einen anderen Ordner verwendet, ist die Datenbank mit allen Datzeien gefüttert. Soweit so gut. Nun soll Natürlich nicht jedes Mal der gesammte Dateibestand gelöscht und neu eingefügt werden, sondern nur geänderte und neue Datein, die in einem anderen Ordner liegen. Aber da das Script erst löscht und dann nachschaut, ist natürlich alles weg, was vorher drin war. NUR die NEUEN Datein sind dann noch drin.


    Wie kann ich erst Prüfen, ob eine Datei vorhanden ist, dann erst löschen und neu einfügen und falls keine Datei vorhanden ist, soll er natürlich nichts machen, d.h. auch nichts löschen.


    Wie muss das Script verändert werden ?


    Danke für jeden Tip....