Seite 1 von 1

externe PDF drucken mit List & Label

Verfasst: Sa, 21. Sep 2019 22:51
von Werner_Bayern
Servus,

geht das und wenn ja, wie?

Hab dazu weder in der Hilfe von DS-Datasoft noch bei List&Label was gefunden. Wir haben die Version 22.

Re: externe PDF drucken mit List & Label

Verfasst: So, 22. Sep 2019 10:36
von HaPe
Morgen Werner !
geht das und wenn ja, wie?
Gegenfrage: warum möchtest du "externe" PDFs (ich verstehe damit vorliegende PDF-Dateien) mit L&L drucken?
Drucken von Dokumenten jedweder Art geht auch mit ShellExecute wenn das zugehörige Programm installiert ist:
*-- Zuerst die Parameter setzen
lcOperation = 'Print'
lcFileName = tcDocument
lcParameter = ''
lcWorkDir = ''

*-- Dokument mit der Standard-Anwendung ausdrucken.
ShellExecute( 0, lcOperation, lcFileName, lcParameter, lcWorkDir, 0 )

Re: externe PDF drucken mit List & Label

Verfasst: So, 22. Sep 2019 11:03
von Tom
Einfach in ein Formular setzen. Oder über die Storage-Engine laden und drucken. Es gibt einige Wege.

Re: externe PDF drucken mit List & Label

Verfasst: So, 22. Sep 2019 13:02
von Werner_Bayern
HaPe hat geschrieben: So, 22. Sep 2019 10:36 Gegenfrage: warum möchtest du "externe" PDFs (ich verstehe damit vorliegende PDF-Dateien) mit L&L drucken?
Servus Hans-Peter,

Wg. Drucker- und Schachtanwahl.

Re: externe PDF drucken mit List & Label

Verfasst: So, 22. Sep 2019 13:12
von Werner_Bayern
Tom hat geschrieben: So, 22. Sep 2019 11:03 Einfach in ein Formular setzen. Oder über die Storage-Engine laden und drucken. Es gibt einige Wege.
Servus Tom,

bisher arbeite ich ausschließlich über die Klasse von Marcus, die mit L&L mitgeliefert wird. Wie geht das mit der Storage-Engine?

Re: externe PDF drucken mit List & Label

Verfasst: Mo, 23. Sep 2019 8:05
von Wolfgang Ciriack
Hallo Werner,
mit der Strorage-Egine kannst du m.E. nur LL-Vorschaudateien handeln.
Du kannst jedes Projekt als Vorschaudatei speichern:

Code: Alles auswählen

      LlPreviewSetTempPath(::hJob, tmppfad )
      LlsetOption(::hjob, LL_OPTION_INCREMENTAL_PREVIEW, .F.)
      nRet := LlPrintStart(::hjob, ::prj_typ, ::langdatei, LL_PRINT_PREVIEW)
Dann lädt man die Datei ins Storagesystem und kann jetzt mit diversen Funktionen die Vorschaudatei (oder Dateien) bearbeiten, z.B. Drucken

Code: Alles auswählen

   fh:=LlStgsysStorageOpen(tmppfad+::cListenName+".LL","",.F.,.T.)
   AnzSeit:=LlStgsysGetPageCount(fh)
   for i:=1 to AnzSeit
        nRet:=LlStgSysPrint(fh,myprinter,myprinter,i,i,0,LS_PRINTFLAG_METER,"Seite "+str(i,2)+" Original",::nHandle)
        if nRet=0
           nRet:=LlStgSysPrint(fh,myprinter2,myprinter2,i,i,0,0,"Seite "+str(i,2)+" Kopie",::nHandle)
        endif
   next
oder auch konvertieren, z.B. in jpg oder pdf

Code: Alles auswählen

     d:=tmppfad+::cExpDatei
     nRet:=LlStgSysConvert(fh,ConvtoAnsiCP(d),"JPEG;Resolution=300;Picture.JPEGQuality=50")
     nRet:=LlStgSysConvert(fh,ConvtoAnsiCP(d),"PDF")
Da du aber für deine Fragestellung erst eine Vorschaudatei aus dem bestehenden PDF erzeugen müsstest, ist m.E. dies nicht dafür geeignet.

Re: externe PDF drucken mit List & Label

Verfasst: Mo, 23. Sep 2019 12:40
von Werner_Bayern
Wolfgang Ciriack hat geschrieben: Mo, 23. Sep 2019 8:05 Da du aber für deine Fragestellung erst eine Vorschaudatei aus dem bestehenden PDF erzeugen müsstest, ist m.E. dies nicht dafür geeignet.
Yep. Danke.

Re: externe PDF drucken mit List & Label

Verfasst: Mo, 23. Sep 2019 18:29
von HaPe
Hallo Werner !
Wg. Drucker- und Schachtanwahl.
Kannst du nicht vor dem Drucken einen Auswahldialog zeigen, dann den ausgewählten Drucker und Schacht zum Windows-Standard-Drucker machen und nach dem Druck wieder den ursprünglichen Zustand herstellen?

Re: externe PDF drucken mit List & Label

Verfasst: Mo, 23. Sep 2019 21:04
von Tom
Ich bin im Kurzurlaub und kann erst übermorgen antworten.

Re: externe PDF drucken mit List & Label

Verfasst: Di, 24. Sep 2019 16:37
von Werner_Bayern
HaPe hat geschrieben: Mo, 23. Sep 2019 18:29 Kannst du nicht vor dem Drucken einen Auswahldialog zeigen, dann den ausgewählten Drucker und Schacht zum Windows-Standard-Drucker machen und nach dem Druck wieder den ursprünglichen Zustand herstellen?
So mache ich es aktuell, aber den Schacht kann man dabei nicht vorgeben? Ist auch nicht sehr elegant die Lösung, aber funktioniert grundsätzlich.

Re: externe PDF drucken mit List & Label

Verfasst: Di, 24. Sep 2019 16:40
von Werner_Bayern
Tom hat geschrieben: Mo, 23. Sep 2019 21:04 Ich bin im Kurzurlaub und kann erst übermorgen antworten.
Na dann brich doch mal Deinen Urlaub ab, ist doch das mindeste, was man erwarten kann :badgrin:
Oder hast über Cook gebucht und aus dem Kurzurlaub wird ein längerer Aufenthalt 8)

Kein Streß, hat Zeit, siehe Antwort an HaPe, momentan läuft es über SetDefaultPrinterA, ist halt nicht elegant und so flexibel.

Danke.

Re: externe PDF drucken mit List & Label

Verfasst: Di, 24. Sep 2019 16:57
von Tom
Hallo, Werner.

Mit dem StorageSystem habe ich tatsächlich den falschen Weg aufgezeigt - das benutzen wir, um Ausdrucke gleichzeitig in mehreren Formaten zu erzeugen. Aus der Vorschaudatei wird ein PDF-Dokument, die Vorschaudatei wird parallel an den Drucker geschickt und im Dokumentenmanagement gespeichert usw. Man hat nur einen Druckvorgang und mehrere Ergebnisse.

Wir drucken PDFs überwiegend über ein Control, das wir vor Jahren mal gekauft haben, den VSPDFViewer. Wir bieten außerdem die Möglichkeit, sie auf hierfür vorgesehenen Label-Projekten zu platzieren und dann zu drucken, was sozusagen ohne Umwege geht (man formatiert ein Label-Projekt für ein enthaltenes PDF und ändert programmseitig nur den Namen der Quelle), aber dabei muss man auf Formatierungen achten. Dasselbe machen wir dann auch mit Office- und Online-Dokumenten bzw. Websites. Bei Office hat das den großen Vorteil, dass es ohne installiertes Office funktioniert, aber auch hier ist der Rahmen die Formatierung des Formulars.

Re: externe PDF drucken mit List & Label

Verfasst: Di, 24. Sep 2019 17:36
von HaPe
Hallo Werner !
So mache ich es aktuell, aber den Schacht kann man dabei nicht vorgeben? Ist auch nicht sehr elegant die Lösung, aber funktioniert grundsätzlich.
Da sollte im Drucken-Dialog doch auch eine Schachtauswahl kommen?
Nicht schön, geht aber auch: Für jeden Schacht einen neuen Drucker anlegen, entsprechend benennen und den passenden Schacht vorgeben.

Re: externe PDF drucken mit List & Label

Verfasst: Di, 24. Sep 2019 19:49
von Marcus Herz
Hallo
In dsListLabel gibt es eine Methde SaveAsPDF, ist auch in der Hilfe beschrieben, ein Einzeiler.

Und wegen Schachtsteuerung: ich lege für jeden Schacht eine Freigabe an, sollte ein Schacht mal ausfallen, kann ein andere im Netz mit dem selben Namen freigegeben werden, und alles läuft weiter.
Grüße
Marcus

Re: externe PDF drucken mit List & Label

Verfasst: Di, 24. Sep 2019 19:51
von Werner_Bayern
Servus Tom und HaPe,

danke Euch. Dann werde ich wohl den Weg über eine lst gehen, einfach eine A4-Seite und dort ein PDF-Container drauf.

Heute hatten wir nämlich schon einen PC und auch einen Terminal-Server, die kein Standardprogramm zum Drucken von PDFs drauf hatten. Da ging dann der shellexecute-Befehl ins Leere.

Re: externe PDF drucken mit List & Label

Verfasst: Di, 24. Sep 2019 19:52
von Werner_Bayern
Servus Marcus,

es geht nicht ums Erzeugen, sondern ums Drucken von PDFs.

Re: externe PDF drucken mit List & Label

Verfasst: Fr, 25. Okt 2019 13:27
von ramses
Hallo Werner

die QuickPDF Lib kann problemlos PDF Files mit Drucker und Schachtwahl drucken.

Re: externe PDF drucken mit List & Label

Verfasst: Fr, 25. Okt 2019 15:20
von Koverhage
oder xpppdf (ist billiger). Da kann man auch auf alle QuickPDF Funktionen zugreifen.
Öffnen, Drucken, Schließen

Re: externe PDF drucken mit List & Label

Verfasst: Fr, 25. Okt 2019 21:35
von Werner_Bayern
Danke, schaue ich mir an.