Dateinamen von Attachments

  • Hallo,


    Für eine Archivlösung möchte ich Notes-Dokumente prüfen, ob Anhänge vorhanden sind, welche vom Archivsystem nicht verarbeitet werden können. Hierfür habe ich eine Liste mit Dateinamenserweiterungen (.doc, .txt, ...) hinterlegt, welche verarbeitet werden können. Nun sollen also alle Anhänge mit der Liste verglichen und eine Fehlermeldung ausgegeben werden, wenn ein Dokument einen Dateianhang enthält, dessen Typ nicht in der Liste hinterlegt ist.


    Mein Problem ist nun, dass manchmal Notes intern einen anderen Namen als den Dateinamen vergibt. Wenn man beispielsweise einem Dokument zweimal die selbe Datei anhängt, so behält der erste Anhang seinen Dateinamen, der zweite bekommt aber einen anderen (ATTxxxxx). Somit kann ich die Dateiendung aber nicht mehr überprüfen. Dies kann man in den Feldeigenschaften bei $File nachvollziehen. Trotzdem muss der ursprüngliche Dateiname noch irgendwo vorhanden sein, da im Eigenschaftsdialog des Anhangs noch der richtige Name der Datei angezeigt wird.


    Weiß jemand, wie ich an diesen Dateinamen herankommen kann?
    Vielen Dank!


    Hier die bisherige Prüfung:


    • Offizieller Beitrag

    habs noch nicht probiert, aber bei notesEmbeddedObject.Source steht in der Hilfe:


    If the NotesEmbeddedObject is a file attachment, this property returns the file name of the original file.


    Damit sollte es eigentlich funktionieren.


    Gruß
    Dirk

    Rein logisches Denken verschafft uns keine Erkenntnis über die wirkliche Welt.
    Alle Erkenntnis der Wirklichkeit beginnt mit der Erfahrung und endet mit ihr.
    Alle Aussagen, zu denen man auf rein logischen Wegen kommt, sind, was die Realität angeht, vollkommen leer.
    Albert Einstein

  • Danke,


    ich hatte die Notes-Hilfe so interpretiert, dass @AttachmentNames und NotesEmbeddedObject.Source das selbe Ergebnis zurückgeben.
    Hab es gerade kurz getestet und wirklich sollte es dann mit .Source passen.


    Noch eine Frage zu den EmbeddedObjects:
    Wie bekomme ich denn alle EmbeddedObjects?


    rtItem.EmbeddedObjects ist sicher ein guter Start.
    Aber gibt es nicht noch ein paar Ausnahmen, dass Anhänge nicht in einem RTFeld, sondern direkt am Dokument hängen können?
    (forall o in doc.EmbeddedObjects wirft bei mir einen Type Missmatch, da es wohl nicht für Attachments gedacht ist)


    Ich hatte schon manchmal mit ein paar komischen Dokumenten zu tun, wo in der Maske kein Anhang angezeigt wurde, über die Feldeigenschaften aber sehr wohl ein Anhang erkennbar war. Leitete man so ein Dokument weiter, war der Anhang dann im neuen Dokument nicht mehr vorhanden.
    Kennt jemand dieses Phänomen?


    Vielen Dank
    Gerd

  • Also ich mach das ganz Standardmäßig:



    Dim ses As NotesSession
    Dim db As NotesDatabase
    Dim doc As NotesDocument
    Dim rtItem As NotesRichTextItem

    Set ses = New NotesSession
    Set db = ses.CurrentDatabase
    Set doc = db.UnprocessedDocuments.GetFirstDocument
    Set rtItem = doc.GetFirstItem("Body")
    Forall o In rtItem.EmbeddedObjects
    Msgbox o.Source
    End Forall

  • dnotes


    hier mein kurzer Beispielcode:


  • Heisst Dein Feld Body???
    Wenn ich bei mir den passenden Feldname angebe geht es. Allerdings liefert o.source nie den urspruenglichen Namen *gruebel


    Auch bei taurec´s Code kommt bei mir nie der urspruengliche *merde

  • Hallo,


    jetzt steh ich auch auf dem Schlauch, wenn ich's so mache, wie taurec vorgeschlagen hat, bekomme ich wieder nur den internen Namen des Attachments:



    dnotes
    ja, mein Feld heißt Body und bei mir kommt in dem weiter oben geposteten Code der ursprüngliche Dateiname zurück.

  • hmmm, vor dem gazen Problem stand ich gestern auch, aber ohne Programmierung, sondern wenn ich diese Mail mit zwei Dateianhängen herausschicke aus Notes, dann wird mir in meinem
    Internetaccount die erste Datei mit der richtigen Endung angezeigt
    (Angebot.PDF) und die andere Datei als ATT###


    schicke ich sowas zum Kunden weiß der mitunter nicht, was dieser Dateianhang bedeutet.


    Unsere einzige Möglichkeit bisher war: Datei herauslösen, Datei im Filesystem umbenennen, wieder anhängen....


    Selbstverständlich ist das nervig, wie kann ich das umgehen?

  • kann mich dunkel daran erinnern das mir ein kumpel mal erzählt hat das das mit den dateinamen erst ab einem bestimmten 6.5 release korrekt funktioniert. glaube es war hier ...

    bunt ist das dasein und granatenstark. volle kanne hoshi's!


    IBM Certified Advanced System Administrator (R5, D6, D7)
    IBM Certified Advanced Application Developer (R5, D6, D7, D8)