Domino 9 und frühere Versionen > ND6: Entwicklung
Attachment mit Memo ausdrucken
eknori (retired):
im Prinzip braucht man eigentlich nur das, um ein Att non Platte zu drucken
Sub PrintDefault (fname As String)
'Ref: Microsoft article Q170918
Dim hwnd As Long
Dim ret As Long
Dim msg As String
ret = ShellExecute(hwnd, "Print", fname, "", "", 0)
If ret<32 Then ' Error
Select Case ret
Case ERROR_FILE_NOT_FOUND
msg = "File not found"
Case ERROR_PATH_NOT_FOUND
msg = "Path not found"
Case SE_ERR_ACCESSDENIED
msg = "Access denied"
Case SE_ERR_OOM
msg = "Out of memory"
Case SE_ERR_DLLNOTFOUND
msg = "DLL not found"
Case SE_ERR_SHARE
msg = "A sharing violation occurred"
Case SE_ERR_ASSOCINCOMPLETE
msg = "Incomplete or invalid file association"
Case SE_ERR_DDETIMEOUT
msg = "DDE Time out"
Case SE_ERR_DDEFAIL
msg = "DDE transaction failed"
Case SE_ERR_DDEBUSY
msg = "DDE busy"
Case SE_ERR_NOASSOC
msg = "No association for file extension"
Case ERROR_BAD_FORMAT
msg = "Invalid EXE file or error in EXE image"
Case Else
msg = "Unknown error"
End Select
Msgbox MSG_UnableToPrint + fname + Chr$(13) + MSG_Continue, 16, msg
Print("Could not print attachment: " & fname)
Else
Print("Printing attachment : " & fname)
End If
End Sub
eknori (retired):
so, hier die fertige Lösung. Diue Datenbank enthält eine Teilmaske mit dem nötigen Code. Die teilmaske wird in die Memo Maske eingebunden und stellt dann einen Buhtong zur verfügung, der zunächst die Memo und dann die angehängten Dateien ausdruckt.
Es wird auf dem Standarddrucker gedruckt.
TMC:
Prima, sieht gut aus :D
Habs in R6 mit pdf, doc, xls und txt getestet, klappte einwandfrei.
Frage:
Warum unterscheidest Du teilweise noch (bzw. auskommentiert) zwischen den Office-Apps?
--- Code: --- Select Case Lcase$(FileExtension)
Case ""
Msgbox MSG_NoExtension, 16, MSG_UnableToPrint + fname
' Case ".doc"
' Call PrintMSWord (fname)
Case ".xls"
Call PrintMSExcel (fname)
' Case ".ppt"
' Call PrintMSPowerPoint (fname)
Case Else
PrintDefault (fname)
End Select
--- Ende Code ---
Navigation
[0] Themen-Index
[*] Vorherige Sete
Zur normalen Ansicht wechseln