Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Mein Drucker druckt nicht! Uwe Habermann

Ähnliche Präsentationen


Präsentation zum Thema: "Mein Drucker druckt nicht! Uwe Habermann"—  Präsentation transkript:

1 Mein Drucker druckt nicht! Uwe Habermann

2 Mein Drucker druckt nicht! Das Lieblingsthema des Supports Wer ist Schuld? Der Kunde oder wir? Wer ist Schuld? Der Kunde oder wir? Was können wir tun? Was können wir tun? Beispiele für mögliche ProblemeBeispiele für mögliche Probleme Probleme vermeiden!Probleme vermeiden! LösungenLösungen

3 Mein Drucker druckt nicht! Wie druckt VFP? Druckertreiber ist externes Programm Druckertreiber ist externes Programm Es wird Code außerhalb von VFP ausgeführt Es wird Code außerhalb von VFP ausgeführt Kann modale Dialoge anzeigen Kann modale Dialoge anzeigen Kann Dialoge anzeigen Kann Dialoge anzeigen Beispiel! Beispiel!

4 Mein Drucker druckt nicht! C VFP benutzt arithmetischen Co-Prozessor VFP benutzt arithmetischen Co-Prozessor Druckertreiber stellt Fehlerbehandlung um Druckertreiber stellt Fehlerbehandlung um Betraf zum Beispiel Druckertreiber von HP Betraf zum Beispiel Druckertreiber von HP Workaround:Workaround: DECLARE _fpreset IN MSVCRT20 =_fpreset() Gefixed seit VFP 6 SP5 Gefixed seit VFP 6 SP5

5 Mein Drucker druckt nicht! C Programmabsturz an praktisch beliebiger Stelle Programmabsturz an praktisch beliebiger Stelle Verursacht durch Unidrv.dll Beispiel: HP Laserdrucker Verursacht durch Unidrv.dll Beispiel: HP Laserdrucker

6 Mein Drucker druckt nicht! Pfad nicht gefunden Druckertreiber verstellt den aktuellen Pfad Druckertreiber verstellt den aktuellen Pfad Microsoft Office Document Image WriterMicrosoft Office Document Image Writer PDFmailPDFmail Canon MultifunktionsgeräteCanon Multifunktionsgeräte Workaround: Workaround: CD JUSTPATH(SYS(16,0)) Beispiel! Beispiel!

7 Mein Drucker druckt nicht! Fehler beim Laden des Druckertreibers Standardverhalten bis FPW Standardverhalten bis FPW Workaround:Workaround: USE.frx BLANK FIELDS expr, tag, tag2 Normalerweise kein Fehler in VFP Normalerweise kein Fehler in VFP Rückgabewert des Druckertreibers Rückgabewert des Druckertreibers Beispiel! Beispiel!

8 Mein Drucker druckt nicht! Berichtsdateien patchen Berichtsdatei patchen Berichtsdatei patchen Eine Berichtsdatei kann mit USE geöffnet werdenEine Berichtsdatei kann mit USE geöffnet werden USE.frx BROWSE

9 Mein Drucker druckt nicht! Titelbereich ist zu groß, um auf die Seite zu passen Warum? Warum? Ursache: expr Ursache: exprORIENTATION=0PAPERSIZE=256COLOR=2 Beispiel! Beispiel!

10 Mein Drucker druckt nicht! VFP 9: Druckerumgebung speichern? In der Regel nicht speichern In der Regel nicht speichern Trotzdem bleibt ein Problem Trotzdem bleibt ein Problem Expr: Expr:ORIENTATION=0PAPERSIZE=256COLOR=2 Speichern kann aber auch sinnvoll sein Speichern kann aber auch sinnvoll sein Beispiel: SchachteinstellungBeispiel: Schachteinstellung

11 Mein Drucker druckt nicht! Berichtsdateien patchen Maßeinheit ist 1/10000 Zoll Maßeinheit ist 1/10000 Zoll Im ersten Datensatz stehen die Druckerinformationen Im ersten Datensatz stehen die Druckerinformationen Die Felder Expr, Tag und Tag2 können geleert werden, ausgenommen OrientationDie Felder Expr, Tag und Tag2 können geleert werden, ausgenommen Orientation BLANK FIELDS expr, tag, tag2BLANK FIELDS expr, tag, tag2

12 Mein Drucker druckt nicht! Berichtsdateien patchen * Project Hook BeforeBuild * Entfernt die Druckereinstellungen aus allen Reports. LOCAL lnZ WITH _VFP.ActiveProject.Files FOR lnZ = 1 TO.Count IF.Item(lnZ).Type = "R" WAIT WINDOW.Item(lnZ).name NOWAIT USE (.Item(lnZ).name) BLANK FIELDS TAG, tag2 IF "ORIENTATION=1" $ UPPER(expr) REPLACE expr WITH "ORIENTATION=1" ELSE BLANK FIELD expr ENDIFUSEENDIFNEXTENDWITH WAIT CLEAR

13 Mein Drucker druckt nicht! Fehlerbehandlung Seit VFP 8 ist während der Ausführung des Report-Befehls die aktuelle Fehlerbehandlung aktiv Seit VFP 8 ist während der Ausführung des Report-Befehls die aktuelle Fehlerbehandlung aktiv Es ist jedoch nicht möglich die Ausführung nach einem Fehler fortzusetzen! Es ist jedoch nicht möglich die Ausführung nach einem Fehler fortzusetzen! Beispiel! Beispiel!

14 Mein Drucker druckt nicht! Fehlerbehandlung Immer! Immer!TRY REPORT FORM … CATCHMESSAGEBOX(MESSAGE(),64,"Fehler")ENDTRY

15 Mein Drucker druckt nicht! Wann führt das zu einem Fehler? SET PRINTER TO DEFAULT Wenn kein Druckertreiber installiert ist! Wenn kein Druckertreiber installiert ist! Fehler beim Zugriff auf den Drucker-Spooler.Fehler beim Zugriff auf den Drucker-Spooler. Also: Also:TRY SET PRINTER TO DEFAULT CATCHENDTRY

16 Mein Drucker druckt nicht! Berichte einschließen oder mitliefern? Beides! Beides! Bearbeiten eines Berichts durch den Anwender Bearbeiten eines Berichts durch den Anwender MODIFY REPORT ? Exportieren einer Berichtsdatei aus der laufenden Exe-Datei Exportieren einer Berichtsdatei aus der laufenden Exe-Datei USE.frx COPY TO.frx

17 Mein Drucker druckt nicht! VFP 9: Reportbehavior 90 Die Lösung aller Probleme? Die Lösung aller Probleme? Oder neue Probleme? Oder neue Probleme? Was ist zu beachten? Was ist zu beachten?

18 Mein Drucker druckt nicht! Variable ´_REPORTOUTPUT´ wurde nicht gefunden Report Apps mitliefern oder einschließen Report Apps mitliefern oder einschließen Sonst Laufzeitfehler beim Kunden Sonst Laufzeitfehler beim Kunden Artikel in FoxX 17 Artikel in FoxX 17

19 Mein Drucker druckt nicht! Reportbehavior 90 Nicht native in der VFP 9 Runtime enthalten Nicht native in der VFP 9 Runtime enthalten Erfordert die Berichtsanwendungen: Erfordert die Berichtsanwendungen: ReportOutput.app (REPORT FORM …)ReportOutput.app (REPORT FORM …) ReportPreview.app (… PREVIEW)ReportPreview.app (… PREVIEW) ReportBuilder.app (nur für MODIFY REPORT)ReportBuilder.app (nur für MODIFY REPORT) Quellcode zu finden in Quellcode zu finden inTools\xsource\xsource.zip

20 Mein Drucker druckt nicht! Reportbehavior 90 Wahlweise Wahlweise Installation der Berichtsanwendungen auf dem Kunden-PCInstallation der Berichtsanwendungen auf dem Kunden-PC Einbeziehung des Quellcodes in das eigene ProjektEinbeziehung des Quellcodes in das eigene Projekt

21 Mein Drucker druckt nicht! Installation beim Kunden Berichtsanwendungen werden automatisch gefunden, wenn sie im Ordner der VFP 9 Runtime installiert sind Berichtsanwendungen werden automatisch gefunden, wenn sie im Ordner der VFP 9 Runtime installiert sind Installation mit InstallShield Express per Merge Module VFP9RptApps.msm möglich Installation mit InstallShield Express per Merge Module VFP9RptApps.msm möglich Nachteil: die Berichtsanwenungen werden nur in einer englischen Version geliefert Nachteil: die Berichtsanwenungen werden nur in einer englischen Version geliefert

22 Mein Drucker druckt nicht! Systemvariablen Wenn die Berichtsanwendungen nicht im Ordner der VFP 9 Runtime installiert werden, müssen die Systemvariablen gesetzt werden: Wenn die Berichtsanwendungen nicht im Ordner der VFP 9 Runtime installiert werden, müssen die Systemvariablen gesetzt werden: _reportoutput = + "ReportOutput.app" _reportpreview = + "ReportPreview.app" _reportbuilder = + "ReportBuilder.app"

23 Mein Drucker druckt nicht! Sourcecode in eigenen Projekten VFPSource\ReportOutput (ca. 500 KB) VFPSource\ReportOutput (ca. 500 KB) _REPORTOUTPUT = "frxoutput.prg" VFPSource\ReportPreview (ca. 650 KB) VFPSource\ReportPreview (ca. 650 KB) _REPORTPREVIEW = "frxpreview.prg" VFPSource\ReportBuilder (ca. 1 MB) VFPSource\ReportBuilder (ca. 1 MB) _REPORTBUILDER = "frxbuilder.prg"

24 Mein Drucker druckt nicht! Lokalisierung ReportOutput:reportoutput_locs.h ReportOutput:reportoutput_locs.hreportlisteners_locs.h ReportPreview:frxpreview_loc.h ReportPreview:frxpreview_loc.h ReportBuilder:_frxcursor.h ReportBuilder:_frxcursor.hfrxbuilder_loc.h Wichtig Wichtig In frxbuilder_loc.h und frxpreview_loc.h: #define USE_LOC_STRINGS_IN_UI.T.

25 Mein Drucker druckt nicht! Reportlistener Berichtsausgabe im XML oder HTML Format ist nur möglich, wenn _reportlistener.vcx/vct in das eigene Projekt einbezogen wird Berichtsausgabe im XML oder HTML Format ist nur möglich, wenn _reportlistener.vcx/vct in das eigene Projekt einbezogen wird

26 Mein Drucker druckt nicht! Was noch? Berichtsausgabe erfolgt im Grafikmodus Berichtsausgabe erfolgt im Grafikmodus Große Druck-Jobs Große Druck-Jobs Kein Text aus PDF kopierbar? Kein Text aus PDF kopierbar? Beispiel! Beispiel!

27 Mein Drucker druckt nicht! Vielen Dank für Euer Interesse! Uwe Habermann


Herunterladen ppt "Mein Drucker druckt nicht! Uwe Habermann"

Ähnliche Präsentationen


Google-Anzeigen