Autor Thema: Anhänge überprüfen  (Gelesen 2663 mal)

Offline Daniel87

  • Frischling
  • *
  • Beiträge: 9
  • Geschlecht: Männlich
    • All@Style
Anhänge überprüfen
« am: 14.01.08 - 13:19:52 »
Hallo,

ich habe folgendes Problem:

In meinem Dokument kann ein User eine Datei anhängen. Dann beginnt der Workflow und verschiedene Personen müssen dem Dokument zustimmen. Der Ersteller von dem Dokument soll die Datei später noch ändern können, was ja kein Problem ist, jedoch soll der Workflow dann von vorne beginnen. Nun weiß ich aber nicht, wie ich bemerken kann ob der Verfasser vom dem Dokument den Anhang geändert hat oder nicht.

Am liebsten würde ich das Änderungsdatum der Datei in ein verstecktes Feld packen und die aus dem Feld dann mit dem Änderungsdatum der Datei vergleichen. Nur wie komme ich in Lotus Notes an das Änderungsdatum der Datei?

Für eine Hilfe wäre ich sehr dankbar.

Gruß

Daniel 

botschi

  • Gast
Re: Anhänge überprüfen
« Antwort #1 am: 14.01.08 - 13:22:56 »
Wenn man die Datei nur über einen Knopf einfügen/löschen/ersetzen kann, könntest Du ein Flag setzen.

Matthias

Offline Daniel87

  • Frischling
  • *
  • Beiträge: 9
  • Geschlecht: Männlich
    • All@Style
Re: Anhänge überprüfen
« Antwort #2 am: 14.01.08 - 13:25:12 »
Hallo Matthias,

die Datei soll man leider über mehrere wege einfügen können, deshalb geht das leider nicht.

Gruß

Daniel

Offline m3

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.102
  • Geschlecht: Männlich
  • Non ex transverso sed deorsum!
    • leyrers online pamphlet
Re: Anhänge überprüfen
« Antwort #3 am: 14.01.08 - 13:25:35 »
Ins Filesystem schreiben und dann die File-Eigenschaften ansehen. Seltsamerweise wird dann das "Last Modified" Datum immer dem Speicherdatum entsprechen, befürchte ich.

HTH
m³ aka. Martin -- leyrers online pamphlet | LEYON - All things Lotus (IBM Collaborations Solutions)

All programs evolve until they can send email.
Except Microsoft Exchange.
    - Memorable Quotes from Alt.Sysadmin.Recovery

"Lotus Notes ist wie ein Badezimmer, geht ohne Kacheln, aber nicht so gut." -- Peter Klett

"If there isn't at least a handful of solutions for any given problem, it isn't IBM"™ - @notessensai

klaussal

  • Gast
Re: Anhänge überprüfen
« Antwort #4 am: 14.01.08 - 13:29:30 »
Und wo speichert Notes das Änderungsdatum des Anhangs ?

In den Dok-Eigenschaften ist nix zu finden...

Offline ata

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 5.092
  • Geschlecht: Männlich
  • drenaiondrufflos
    • Anton Tauscher Privat
Re: Anhänge überprüfen
« Antwort #5 am: 14.01.08 - 14:17:34 »
... eventuell ist es per COM auslesbar - soweit es sich um Attachments handelt wie Word-Dateien oder EXCEL-Sheets...

Toni
Grüßle Toni :)

Offline Daniel87

  • Frischling
  • *
  • Beiträge: 9
  • Geschlecht: Männlich
    • All@Style
Re: Anhänge überprüfen
« Antwort #6 am: 14.01.08 - 14:20:59 »
Bei dem Anhang handelt es sich überwiegend um .pdf und Worddateien

Offline ata

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 5.092
  • Geschlecht: Männlich
  • drenaiondrufflos
    • Anton Tauscher Privat
Re: Anhänge überprüfen
« Antwort #7 am: 14.01.08 - 14:22:31 »
... Word-Dateien sind kein Problem - bei PDF wird es schon schwieriger - ich probier mal ein paar Sachen aus...

Toni
Grüßle Toni :)

Offline ata

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 5.092
  • Geschlecht: Männlich
  • drenaiondrufflos
    • Anton Tauscher Privat
Re: Anhänge überprüfen
« Antwort #8 am: 14.01.08 - 15:26:15 »
... du könntest mal folgendes ausprobieren:

Code
Function FileLastModified( sFile As String ) As String
   Dim fso As Variant
   Dim fsoFile As Variant
   Dim sLastModified As String
   '
   Set fso = CreateObject( "Scripting.FileSystemObject" )
   If fso.FileExists( sFile ) Then
      ' Print "Die Datei existiert"
      Set fsoFile = fso.GetFile( sFile )
      sLastModified = fsoFile.DateLastModified
      Set fsoFile = Nothing
      Set fso = Nothing
   Else
      ' Print "Die Datei existiert nicht"
      sLastModified = ""
      Set fso = Nothing
   End If
   '
   FileLastModified = sLastModified
   '
End Function


... sollte eventuell für jede Datei funktionieren - zuvor das Attachment lösen und dann mit der Funktion angrabben...

Toni

*** edit ***
... habe noch einen Fehler debuggt...

Toni
« Letzte Änderung: 14.01.08 - 22:56:23 von ata »
Grüßle Toni :)

Offline Daniel87

  • Frischling
  • *
  • Beiträge: 9
  • Geschlecht: Männlich
    • All@Style
Re: Anhänge überprüfen
« Antwort #9 am: 15.01.08 - 07:18:14 »
Hallo Toni,

vielen Dank für deine Mühen. Eine Frage habe ich aber noch, da ich vor kurzem erst mit Lotus Notes angefangen habe. Der Anhang wird in einem RichText-Feld gespeichert, wie kann ich den da raus lösen?

Gruß

Daniel

Offline ata

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 5.092
  • Geschlecht: Männlich
  • drenaiondrufflos
    • Anton Tauscher Privat
Re: Anhänge überprüfen
« Antwort #10 am: 15.01.08 - 09:09:42 »
... du initialisierst das Dokument im Backend, dann das RichTextItem - schau mal in der Hilfe unter "NotesEmbeddedObject" - dort findest du im Beispielcode unter ExtractFile alles was du benötigst. Probier dich da mal dran aus...

Toni
Grüßle Toni :)

Offline Daniel87

  • Frischling
  • *
  • Beiträge: 9
  • Geschlecht: Männlich
    • All@Style
Re: Anhänge überprüfen
« Antwort #11 am: 15.01.08 - 09:24:38 »
Danke für die Hilfestellung.

Gruß

Daniel

Offline ata

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 5.092
  • Geschlecht: Männlich
  • drenaiondrufflos
    • Anton Tauscher Privat
Re: Anhänge überprüfen
« Antwort #12 am: 15.01.08 - 09:39:29 »
... ich habe den Code soeben getestet und festgestellt, daß er  - verständlicherweise - einen Leerstring zurückliefert, wenn die Datei seit ihrer Erstellung noch nie verändert wurde, daher habe ich die Funktion um das Erstellungsdatum erweitert:

Code
Function FileLastModified( sFile As String ) As String
   Dim fso As Variant
   Dim fsoFile As Variant
   Dim sLastModified As String
   '
   Set fso = CreateObject( "Scripting.FileSystemObject" )
   If fso.FileExists( sFile ) Then
      Set fsoFile = fso.GetFile( sFile )
      sLastModified = fsoFile.DateLastModified
      '
      If sLastModified = "" Then sLastModified = fsoFile.DateCreated
      '
      Set fsoFile = Nothing
      Set fso = Nothing
   Else
      sLastModified = ""
      Set fso = Nothing
   End If
   FileLastModified = sLastModified
End Function

Toni
Grüßle Toni :)

Offline it898ur

  • Senior Mitglied
  • ****
  • Beiträge: 478
Re: Anhänge überprüfen
« Antwort #13 am: 16.01.08 - 09:20:55 »
Einfacher geht es mit @AttachmentModifiedTimes (ggf. mit Evaluate) - die alten Werte in der Maske merken und bei jedem Speichern vergleichen - jetzt kann man Änderungen an den Anhängen nachvollziehen.

Gruß

André

Offline ata

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 5.092
  • Geschlecht: Männlich
  • drenaiondrufflos
    • Anton Tauscher Privat
Re: Anhänge überprüfen
« Antwort #14 am: 16.01.08 - 10:30:32 »
... die @-Funktion kannte ich noch nicht  ;D :o ;D - das erspart den Zugriff per LS und Windows-Objekten...

Toni
Grüßle Toni :)

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz