Autor Thema: Attachments aus einer Dialogbox heraus drucken  (Gelesen 1746 mal)

Offline Legolas

  • Senior Mitglied
  • ****
  • Beiträge: 446
  • Geschlecht: Männlich
Attachments aus einer Dialogbox heraus drucken
« am: 23.01.08 - 15:06:49 »
Hallo Forum,

ich habe folgende Situation:
Mein Kunde möchte aus Sicherheitsgründen für seine User einen Druck-Button im Dokument haben, bei dem eine Dialogbox angezeigt wird, die alle evt. hinterlegten Attachments inkl. des als PDF konvertierten Notesdokuments beinhaltet.
Die Attachements mit den als PDF konvertierten Dokumenten sind soweit vorhanden.

Kennt jemand eine Lösung, wie man Attachments (z.B. PDF) aus einer Dialogbox heraus ausdrucken kann.
Mit Drucken meine ich hier, das PDF aufrufen und über Acrobat-Reader manuell auszudrucken.

Nur.... aus einer Dialogbox funktioniert der Aufruf (das Starten des Attachments) nicht!

Grüße

Bernd



Arbeite klug, nicht hart.

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: Attachments aus einer Dialogbox heraus drucken
« Antwort #1 am: 23.01.08 - 15:33:11 »
Mir ist da im Moment kein Weg bekannt.

Ich muss auch ganz ehrlich sagen, mir erschließt sich auch noch nicht so ganz der Sinn dieser Aktion. Was soll das mit Sicherheit zu tun haben?


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

Offline Legolas

  • Senior Mitglied
  • ****
  • Beiträge: 446
  • Geschlecht: Männlich
Re: Attachments aus einer Dialogbox heraus drucken
« Antwort #2 am: 23.01.08 - 15:38:03 »
Das die User nicht vergessen alle Attachments auszudrucken!

Mein Kunde ist hier seerhr visuell veranlagt und auch entprechend von seiner Websphere Umgebung (diverse Java-Applikationen) verwöhnt.

Aber...
gibt es eine Möglichkeit, Attachments autom. via Sript zu starten.
Eine alternative Idee wäre, per Auswahllsite (Checkbox) die Attchments zur Verfügung zu stellen um im Anschluss bei deren Auswahl diese autom. zu starten.

Geht so was?

Gruß
Bernd
Arbeite klug, nicht hart.

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: Attachments aus einer Dialogbox heraus drucken
« Antwort #3 am: 23.01.08 - 15:46:45 »
Ich habe in grauer Vorzeit mal was aus dem Web gefischt.

Zitat
Print all attachments using shellExecute in Windows

This script prints all attachments on a Notes document's Body field. You do not need to know the attachment names ahead of time, or the application that needs to be invoked to print them. The shellExecute command uses the Windows registry to determine the correct application to print the attachment.

This works with Notes Clients 4.6.7 and 5.0.11 running Windows 2000 or XP. It probably works with other Windows versions and Notes clients as well.

This code detaches attachments in the Body field for the current document and saves them on the user's hard drive in the c:\notes\data directory.

Note: This code leaves these attachments on the user's hard drive. You will need to add a separate routine to delete them, because the shellExecute print process does not like you deleting the files while it is printing. I did not include code here to delete these temporary files.

Code:
'This code adapted from a VB code posted by Dev Ashish
'http://www.mvps.org/access/api/api0018.htm
'Remember these declarations
Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" _ (Byval
hwnd As Long, Byval lpszOp As String, _ Byval lpszFile As String, Byval
lpszParams As String, _ Byval LpszDir As String, Byval FsShowCmd As Long) As
Long

Declare Private Function GetDesktopWindow Lib "user32" () As Long

Private Const SW_HIDE = 0&

'You need to call the this sub from some other sub, like the Click or
Initialize sub. ' like this:
' Call PrintAttachment (doc)

Sub PrintAttachment(doc As NotesDocument)
        Dim rtItem As NotesRichTextItem
        Dim Scr_hDC As Long
        Dim ret As Long
        Dim file As String
       
        Set rtItem = doc.GetFirstItem("Body")
        If Not rtItem Is Nothing Then
                Forall o In rtItem.EmbeddedObjects
                        file =  o.Name
                        Call o.ExtractFile( "c:\notes\data\" & file )
                        Scr_hDC = GetDesktopWindow()
                        ret = shellExecute(Scr_hDC, "print",file ,Null ,"c:\notes\data\" ,SW_HIDE)
                       
                        If ret <= 32 Then
                                Msgbox "An error occurs while printing!"

                        End If
                End Forall
        End If
End Sub


Schau's dir mal an, vielleicht hilft dir das weiter.


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

Offline Legolas

  • Senior Mitglied
  • ****
  • Beiträge: 446
  • Geschlecht: Männlich
Re: Attachments aus einer Dialogbox heraus drucken
« Antwort #4 am: 23.01.08 - 16:42:33 »
Geanau das habe ich gesucht!  ;D
Funktioniert wunderbar!

Gruß
Bernd
Arbeite klug, nicht hart.

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz