LabVIEWForum.de
LV11 stürzt beim Versuch zu drucken ab - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein)
+---- Forum: Datenbank & File IO (/Forum-Datenbank-File-IO)
+---- Thema: LV11 stürzt beim Versuch zu drucken ab (/Thread-LV11-stuerzt-beim-Versuch-zu-drucken-ab)



LV11 stürzt beim Versuch zu drucken ab - Mannie - 12.11.2014 06:24

Hallo,
ich arbeite erst seit drei Wochen mit Labview.
Bisher habe ich meine fragen immer mit älteren Beiträgen aus dem Forum klären können.
Diesmal habe ich leider nichts gefunden.
Ich habe ein Programm, wovon ich die betreffenden Teile in den Anhang getan habe.
Ich möchte das Frontpanel über Benutzereingabe entweder als PDF erstellen und/oder an einen Drucker senden.
Dazu lese ich die verfügbaren Drucker aus und nehme dies als Auswahl um den Drucker für das VI Einfaches drucken festzulegen.
Führe ich nun mein Programm aus, erscheint die Fehlermeldung wie im Anhang und LV stürzt ab.
Führe ich es aus, ohne den Haken bei drucken zu haben, fuktioniert es.
Auch wenn ich bei drucken den PDF Drucker wähle funktioniert es einwandfrei.
[attachment=51311]
[attachment=51312]
[attachment=51313]


RE: LV11 stürzt beim Versuch zu drucken ab - Nordvestlys - 12.11.2014 13:10

Passiert der Absturz auch dann, wenn "nur" gedruckt wird (also ohne PDF)?

Vermutung: Weil die beiden Case-Strukturen im rechten Teil genau gleichzeitig gestartet werden, könnte es sein, dass die Druckfunktion spinnt und den Absturz verursacht. Abhilfe wäre, eine zeitliche Abhängigkeit zu schaffen. (z.B. einen beliebigen Wert aus der PDF-Case-Struktur an den Rand der Drucken-Case-Struktur ziehen. Dann wird diese erst dann ausgeführt, wenn die andere Struktur beendet ist und der Wert anliegt.)

Weitere Möglichkeit wäre ein Fehler beim Versuch den speziellen gewünschten Drucker anzusprechen. Evtl. mal einen anderen Drucker ausprobieren?

Ansonsten: Debugging-Funktion einschalten, und zusehen "wann" es passiert....


RE: LV11 stürzt beim Versuch zu drucken ab - jg - 12.11.2014 13:53

Einzige Unterschiede, die mir auffallen:
- Bei PDF hast du "Sofortdruck" angeschlossen, das sollte aber der Standardwert sein...
- Der Name deines PDF Druckers. Hierzu die Rückfrage: Kommt da bei der Abfrage deiner Drucker derselbe String heraus?

Da in deinen beiden parallelen Case-Strukturen quasi derselbe Code vorhanden ist, könntest du das auch zusammenfassen zu einer Case-Struktur:
[attachment=51321]

Gruß, Jens

P.S.: Kleiner Tipp: Dein BD könnte lesbarer werden, wenn du bei deinen Controls im FP den Untertitel (Caption) verwenden würdest. Statt eine lokalen Variable "Nach Fertigstellung der Messung: Messprotokoll speichern als PDF" heißt sie dann z.B. nur noch "PDF-Druck".


RE: LV11 stürzt beim Versuch zu drucken ab - Nordvestlys - 12.11.2014 14:02

(12.11.2014 13:10 )Nordvestlys schrieb:  [...]

Ergänzung:
Meine erste Vermutung ist vermutlich ;-) falsch, weil das drucken-Sub-VI nicht "ablaufinvariant" ist, und somit nicht mehrere Instanzen davon gestartet werden. (Also wird der zweite Druckauftrag erst gestartet, wenn der erste abgeschlossen ist.)

Dafür ist mir aufgefallen, dass an den Eingängen ein kleiner roter Punkt ist, was bedeutet dass eine Typumwandlung stattfindet. Es könnte also sein, dass an den Eingängen unpassende Werte übergeben werden.
Üblicher Weg ist daher, mit einem Rechtsklick auf den Sub-VI-Eingang eine Konstante für diesen Eingang zu erstellen. Dort kann man entweder die passende Option wählen, oder die Cluster-Konstante als Vorlage für die Einstellungen benutzen. (Also die "festen" Werte in der Konstante wählen und etwaige dynamischen Werte wie gehabt über Cluster-Bündelung mit der Konstante als Eingangs-Cluster einstellen)

Dann sollte alles "genau" passen.


RE: LV11 stürzt beim Versuch zu drucken ab - Mannie - 12.11.2014 16:08

Hallo,
also der Absturz passiert immer dann wenn ich den richtigen Drucker wähle(übrigens ein Netzwerkdrucker, wenn das ws zur Sache tut).
Ich habe jetz den VI-Eingang mit einer konstante erstellt und nur mit Cluster aufschlüsseön und wieder bündeln den Drucker verändert.
Der rote Punkt ist immernoch da.
Ich lese ja die verfügbaren Drucker aus und schreibe sie über den Eigenschaftsknoten: Strings in den String: Drucker auswählen, mit dem ich auf dem FP dann den Drucker wähle.
Warum also ist das Datenformat falsch?

Vielen Dank für den Tipp mit den Captions. Ist schon umgesetzt.


RE: LV11 stürzt beim Versuch zu drucken ab - Y-P - 13.11.2014 08:58

Und noch ein kleiner Tip:

Wie es aussieht, verwendest Du viele Sequenzen hintereinander.
Hast Du Dir schon mal eine State-Machine angeschaut. Die würde ich in Deinem Fall nehmen.

Gruß Markus