Autor Thema: Speichern unter in LS gesucht  (Gelesen 2200 mal)

Offline Don Pasquale

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.390
  • Geschlecht: Männlich
  • Don Pasquale
    • Auf Verlorenem Posten
Speichern unter in LS gesucht
« am: 05.02.04 - 13:48:00 »
Hallo Lotus-Fans,

in einer Anwendung möchte ich dem Benutzer die Möglickeit geben,
das angehängte Dokument ins FileSystem abzuspeichern.
Mit dem folgenden Code funktioniert das auch, ich suche aber mehr
einen komfortablen "Speichern unter" Dialog.
Vielleicht weiß ja jemand einen API Befehl ?

Ciao
Don Pasquale



   Dim workspace As New NotesUIWorkspace
   Dim uidoc As NotesUIDocument
   Dim doc As NotesDocument
   Dim session As New notessession
   Dim wk As New notesuiworkspace
   Dim folder As String
   
   Set uidoc = workspace.CurrentDocument
   Set doc = uidoc.Document
   Set ritem=doc.getfirstitem("Body")
   
   
   If (ritem.type=RICHTEXT)Then
      If Isarray(ritem.embeddedobjects) Then
         Forall o In ritem.embeddedobjects
            If (o.type=EMBED_ATTACHMENT) Then
               
               folder = BrowseFolder (doc.CERT_Destination(0), "Wohin soll das Dokument gespeichert werden ?")
               Messagebox(folder)
               Call o.ExtractFile( folder  & "\" & o.Source & ".tif" )
            End If
         End Forall
      End If
   End If


Function BrowseFolder (path As String, windowtitle As String) As String
   
   Dim X As Long, bi As BROWSEINFO, dwIList As Long
   Dim wPos As Integer
   Dim cam2 As String
   
   bi.pszDisplayName = path
   bi.hOwner = hWndAccessApp
   bi.lpszTitle = title
   bi.ulFlags = BIF_RETURNONLYFSDIRS
   
   dwIList = SHBrowseForFolder (bi)
   cam2 = Space$(512)
   X = SHGetPathFromIDList(Byval dwIList, Byval cam2)
   
   If X Then
      wPos = Instr (cam2, Chr(0))
      BrowseFolder = Left$ (cam2, wPos - 1)
   Else
      BrowseFolder = ""
   End If
   
End Function
« Letzte Änderung: 05.02.04 - 13:50:26 von Don Pasquale »

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re:Speichern unter in LS gesucht
« Antwort #1 am: 05.02.04 - 13:52:51 »
Wäre die Methode SaveFileDialog aus NotesUIWorkspace nicht besser geeignet ?

Bernhard

Offline Don Pasquale

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.390
  • Geschlecht: Männlich
  • Don Pasquale
    • Auf Verlorenem Posten
Re:Speichern unter in LS gesucht
« Antwort #2 am: 05.02.04 - 14:03:33 »
Hmm,
wo Du recht hast, hast Du recht.

Wieso in die Ferne schweifen, sieh das Gute liegt so nah !

Ciao
Don Pasquale
ps: Ich hätte jetzt auch das mit dem Wald und den Bäumen,
aber heute mal was Anderes.

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re:Speichern unter in LS gesucht
« Antwort #3 am: 05.02.04 - 14:07:57 »
 ;)

Offline Don Pasquale

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.390
  • Geschlecht: Männlich
  • Don Pasquale
    • Auf Verlorenem Posten
Re:Speichern unter in LS gesucht
« Antwort #4 am: 05.02.04 - 14:12:24 »
Hier nun in Kürze die Lösung:
Sollte im Dokument das Feld TITEL ausgefüllt sein,
so wird der TITEL und tif als Speichername vorgeschlagen
ansonsten der Name des Attachments.
Das StandardVerzeichnis sollte man sich aus dem Profildokument holen
Ciao
Don Pasquale

Sub Click(Source As Button)
   
   Dim workspace As New NotesUIWorkspace
   Dim uidoc As NotesUIDocument
   Dim doc As NotesDocument
   Dim session As New notessession
   Dim wk As New notesuiworkspace
   Dim folder As Variant
   Dim ritem As NotesRichtextItem
   Set uidoc = workspace.CurrentDocument
   Set doc = uidoc.Document
   Set ritem = doc.getfirstitem("Body")
   Dim StandardVerzeichnis As String
   
   StandardVerzeichnis = "C:\TEMP"
   
   If (ritem.type=RICHTEXT)Then
      If Isarray(ritem.embeddedobjects) Then
         Forall o In ritem.embeddedobjects
            If (o.type=EMBED_ATTACHMENT) Then
               If doc.titel(0) <> "" Then
                  folder = workspace.SaveFileDialog ( False, "Speichern unter ..",, StandardVerzeichnis , doc.Titel(0) & ".tif" )                  
               Else
                  folder = workspace.SaveFileDialog ( False, "Speichern unter ..",, StandardVerzeichnis , o.source & ".tif")                  
               End If
               Messagebox folder(0)
            End If
         End Forall
      End If
   End If
   
   
End Sub
« Letzte Änderung: 16.02.04 - 14:22:40 von Don Pasquale »

Offline Don Pasquale

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.390
  • Geschlecht: Männlich
  • Don Pasquale
    • Auf Verlorenem Posten
Re:Speichern unter in LS gesucht
« Antwort #5 am: 16.02.04 - 14:23:40 »
Ruder zurück,

der Code wird zwar Fehlerfrei durchlaufen, aber die Datei wird nicht gespeichert.

???

Ciao
Don Pasquale

Offline Axel

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.658
  • Geschlecht: Männlich
  • It's not a bug, it's Notes
Re:Speichern unter in LS gesucht
« Antwort #6 am: 16.02.04 - 14:50:49 »
Hi,

wundert mich nicht.  :o  ;)

Wo ist die Anweisung zum speichdern? Du fragst mit SaveFileDialog nur das Verzeichnis und den Namen ab.


Axel

Ohne Computer wären wir noch lange nicht hinterm Mond!

Offline eknori

  • @Notes Preisträger
  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 11.728
  • Geschlecht: Männlich
Egal wie tief man die Messlatte für den menschlichen Verstand auch ansetzt: jeden Tag kommt jemand und marschiert erhobenen Hauptes drunter her!

Offline Don Pasquale

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.390
  • Geschlecht: Männlich
  • Don Pasquale
    • Auf Verlorenem Posten
Re:Speichern unter in LS gesucht
« Antwort #8 am: 16.02.04 - 15:20:02 »
Hi, wundert mich nicht.  :o  ;)
Wo ist die Anweisung zum speichdern? Du fragst mit SaveFileDialog nur das Verzeichnis und den Namen ab.
Axel

Um so Unwesentlichkeiten kümmer ich mich nicht.


Danke erledigt !

Offline Axel

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.658
  • Geschlecht: Männlich
  • It's not a bug, it's Notes
Re:Speichern unter in LS gesucht
« Antwort #9 am: 16.02.04 - 15:25:00 »
Hi,

tja, manchmal sieht man den Wald vor lauter Bäumen nicht.  ;) ;D ;D

Aber dafür hast du ja uns.    8)


Axel
Ohne Computer wären wir noch lange nicht hinterm Mond!

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz