AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein Brother P-Touch QL-1060N gibt mit SDK nur leere Etiketten aus
Thema durchsuchen
Ansicht
Themen-Optionen

Brother P-Touch QL-1060N gibt mit SDK nur leere Etiketten aus

Ein Thema von menten · begonnen am 30. Nov 2021 · letzter Beitrag vom 7. Dez 2021
Antwort Antwort
TiGü

Registriert seit: 6. Apr 2011
Ort: Berlin
3.074 Beiträge
 
Delphi 10.4 Sydney
 
#1

AW: Brother P-Touch QL-1060N gibt mit SDK nur leere Etiketten aus

  Alt 2. Dez 2021, 08:53
Haben die Methoden noch Rückgabewerte, die man auslesen und auswerten kann bzw. gibt es bei reiner boolscher Rückgabe sowas wie eine GetLastError-Funktion (Internet sagt: IDocument.ErrorCode)?
In vielen Beispielen wird vor StartPrint noch per IDocument.GetObject.Text oder IDocument.SetText das entsprechende Textfeld gesucht, zurückgegeben und gefüllt.
Fehlt dir das vielleicht?
Kenne deine Vorlagen-Datei (LBX) nicht?!
  Mit Zitat antworten Zitat
menten

Registriert seit: 3. Apr 2009
43 Beiträge
 
Delphi 10.3 Rio
 
#2

AW: Brother P-Touch QL-1060N gibt mit SDK nur leere Etiketten aus

  Alt 3. Dez 2021, 16:54
Hallo zusammen,

von dem C# Quellcode habe ich mal einen Screenshot angehägt. Das ist das original Beispiel aus dem SDK. Ich hab nur den Pfad zu den Templates geändert.

Ich habe auch mein Delphi Beispiel mal angehängt. Das ist mit einer frischen Windows 10 und Delphi 11 Umgebung gemacht und zeigt den gleichen Fehler wie meine ersten Tests mit Delphi 10. Wenn ich die Anwendung auf einem anderen Rechner laufen lasse, auf dem der Treiber installiert ist, bekomme ich erwartungsgemäß einen Fehler wegen nicht installierter Klasse. Nach der Installation des b-pac Clients ist der Fehler weg und das Label wird gedruckt, allerdings mit dem gleichen Fehler.

Die Vorlagendatei ist quasi leer. Ich habe da nur einen einfachen Text eingegeben und setzte in dem Beispiel auch keine Werte.


Ich hab auch mal ein Bild von einem Label angehägt. Für mich sieht das aus wie ein Initialisierungsfehler. Muss da vielleicht irgendeine DLL mit dazu?


Danke und Gruß
Stefan
Angehängte Grafiken
Dateityp: png 2021-12-03 17_31_38-Window.png (37,4 KB, 25x aufgerufen)
Dateityp: jpg 20211203_173809.jpg (177,9 KB, 22x aufgerufen)
Angehängte Dateien
Dateityp: zip Test BPac.zip (3,18 MB, 6x aufgerufen)
Stefan
  Mit Zitat antworten Zitat
hoika

Registriert seit: 5. Jul 2006
Ort: Magdeburg
8.277 Beiträge
 
Delphi 10.4 Sydney
 
#3

AW: Brother P-Touch QL-1060N gibt mit SDK nur leere Etiketten aus

  Alt 3. Dez 2021, 17:29
Hallo,
im c#-Code stehen noch zwei Zeilen
doc.GetObject

Ob das in Delphi fehlt?`
Kann ich mir nicht vorstellen, aber ...
Heiko
  Mit Zitat antworten Zitat
menten

Registriert seit: 3. Apr 2009
43 Beiträge
 
Delphi 10.3 Rio
 
#4

AW: Brother P-Touch QL-1060N gibt mit SDK nur leere Etiketten aus

  Alt 6. Dez 2021, 08:16
Hallo,

mit "getObject" greift man auf im Template angelegte Textobjekte zu und weist denen neue Werte zu.

Das habe ich weg gelassen umd das eben als Fehler ausschließen zu können.


Gruß
Stefan
Stefan
  Mit Zitat antworten Zitat
hoika

Registriert seit: 5. Jul 2006
Ort: Magdeburg
8.277 Beiträge
 
Delphi 10.4 Sydney
 
#5

AW: Brother P-Touch QL-1060N gibt mit SDK nur leere Etiketten aus

  Alt 6. Dez 2021, 20:03
Hallo,
das war der einzige Unterschied, den ich bei C# und Delphi sehe.
Heiko
  Mit Zitat antworten Zitat
menten

Registriert seit: 3. Apr 2009
43 Beiträge
 
Delphi 10.3 Rio
 
#6

AW: Brother P-Touch QL-1060N gibt mit SDK nur leere Etiketten aus

  Alt 7. Dez 2021, 18:33
Hallo noch mal,

Fehler gefunden. Offensichtlich sind die Beispiele nicht ganz aktuell. Der Beispielcode in der Hilfe verwendet "StartPrint". Allerdings muss man dabei entgegen den Beispielen dem Parameter "docName" einen Wert geben. Sonst kommt Fehler 25. So funktioniert der Druck:

<--

procedure TForm1.Button2Click(Sender: TObject);
var
FPTouchDocument: bpac_TLB.IDocument;
begin

FPTouchDocument := CreateComObject(CLASS_Document) as bpac_TLB.IDocument;

if FPTouchDocument.Open('.\test2.lbx') then
begin

if FPTouchDocument.GetObject('Text2') <> nil then
FPTouchDocument.GetObject('Text2').Text := 'testtext';

if FPTouchDocument.StartPrint('Sample', bpoDefault) then
begin

if FPTouchDocument.PrintOut(1, bpoDefault) then
begin
FPTouchDocument.EndPrint;
FPTouchDocument.Close;
end
else
ShowMessage(FPTouchDocument.ErrorCode.ToString);
end
else
ShowMessage(FPTouchDocument.ErrorCode.ToString);
end
else
ShowMessage(FPTouchDocument.ErrorCode.ToString);

end;

-->




Gruß
Stefan
Stefan
  Mit Zitat antworten Zitat
Antwort Antwort

 

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 05:02 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz