/[projects]/dao/DelphiScanner/LabelPrint.pas
ViewVC logotype

Diff of /dao/DelphiScanner/LabelPrint.pas

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 3094 by torben, Fri Aug 19 14:35:39 2016 UTC revision 3124 by torben, Wed Oct 19 06:59:57 2016 UTC
# Line 18  type Line 18  type
18    
19      procedure PrintLabel( Stregkode : String);      procedure PrintLabel( Stregkode : String);
20    
     procedure SendTilPrinter(kontrolKoreliste, RuteNummer, Kommentar, BoghandlerNavn, Koreliste, SmsKode, DBKbane, Leveringssted : String; var PrintNyLabel : Boolean; BoghandlerNummer : string = '');  
   
     procedure PrintFuldPakkeLabel( PakkeshopLabel : TLabelData);  
     procedure PrintFuldPakkeLabelLille( PakkeshopLabel : TLabelData);  
     procedure PrintFuldPakkeLabelStor( PakkeshopLabel : TLabelData);  
21    
22    
23      procedure PrintDaodirekteLabel( RuteNummer, Kommentar, BoghandlerNavn : String) ;      // PrintLabelData bliver brugt til PrinterTest
24        // og blicer derfor nødt til at være Public
25        procedure PrintLabelData( LabelData : TLabelData);
26    
     procedure TestZpl();  
     procedure PrintZPL( ZplData : string);  
27    
28      function GetPrinterCount() : Integer;      function GetPrinterCount() : Integer;
29    
30    
31    
32    private    private
33      parentForm : IParentForm;      parentForm : IParentForm;
34      Barcode : TStBarcode;      Barcode : TStBarcode;
35      var Config: TConfiguration;      var Config: TConfiguration;
36    
37    
38        procedure PrintZPL( ZplData : string);
39    
40    
41        procedure PrintSimpelLabel( LabelData : TLabelData) ;
42    
43        procedure PrintFuldPakkeLabel( PakkeshopLabel : TLabelData);
44        procedure PrintFuldPakkeLabelLille( PakkeshopLabel : TLabelData);
45        procedure PrintFuldPakkeLabelStor( PakkeshopLabel : TLabelData);
46    
47        procedure SendTilPrinter_old(kontrolKoreliste, RuteNummer, Kommentar, BoghandlerNavn, Koreliste, SmsKode, DBKbane, Leveringssted : String; var PrintNyLabel : Boolean; BoghandlerNummer : string = '');
48        procedure PrintDaodirekteLabel_old( RuteNummer, Kommentar, BoghandlerNavn : String) ;
49    
50    
51    
52      function SavePChar(p: PChar): PChar;      function SavePChar(p: PChar): PChar;
53      function GetCurrentPrinterHandle(): THandle;      function GetCurrentPrinterHandle(): THandle;
54    
# Line 55  uses Line 66  uses
66    Math, // DegToRad() bruges i PrinTLabelData    Math, // DegToRad() bruges i PrinTLabelData
67    Forms,    Forms,
68    IdHTTP,    IdHTTP,
69    Graphics    Graphics,
70      XMLDoc
71    ;    ;
72    
73    
# Line 112  begin Line 124  begin
124  end;  end;
125    
126    
127  procedure TLabelPrint.PrintDaodirekteLabel( RuteNummer, Kommentar, BoghandlerNavn : String) ;  procedure TLabelPrint.PrintDaodirekteLabel_old( RuteNummer, Kommentar, BoghandlerNavn : String) ;
128  begin  begin
129    with Printer do    with Printer do
130        begin        begin
# Line 163  begin Line 175  begin
175  //            'Test'  skal vise alarmlinie, samt opdatere listbox1  //            'Test'  skal vise alarmlinie, samt opdatere listbox1
176  //            'Timer' skal kun vise alarmlinie  //            'Timer' skal kun vise alarmlinie
177    
178    if (PrinterNavn = 'Ingen') and ( (tjektype = 'Opstart') or (tjektype = 'Test') ) then  //  if (PrinterNavn = 'Ingen') and ( (tjektype = 'Opstart') or (tjektype = 'Test') ) then
179    begin  //  begin
180    //
181      parentForm.LogMessage( 'Der er fravalgt printer i dette program' );  //    parentForm.LogMessage( 'Der er fravalgt printer i dette program' );
182    end  //  end
183    else if (Printer.Printers.Count = 0) and ( (tjektype = 'Opstart') or (tjektype = 'Test') ) then  //  else
184      if (Printer.Printers.Count = 0) and ( (tjektype = 'Opstart') or (tjektype = 'Test') ) then
185    begin    begin
186      parentForm.LogMessage( 'Der er ikke installeret en printer på denne PC' );      parentForm.LogMessage( 'Der er ikke installeret en printer på denne PC' );
187    end    end
# Line 249  var Line 262  var
262    
263    httpClient: TIdHTTP;    httpClient: TIdHTTP;
264    
265      XMLDocument1: TXMLDocument;
266    
267      LabelData: TLabelData;
268    
269    
270  begin  begin
# Line 263  begin Line 279  begin
279    httpClient.Free();    httpClient.Free();
280    
281    
282      XMLDocument1 := parentForm.GetXMLDocument();
283    
284      XMLDocument1.LoadFromXML(response);
285    
286      LabelData := TLabelData.Create(XMLDocument1);
287      PrintLabelData(LabelData);
288      LabelData.Free();
289    
290    
291  end;  end;
292    
293  procedure TLabelPrint.SendTilPrinter(kontrolKoreliste, RuteNummer, Kommentar, BoghandlerNavn, Koreliste, SmsKode, DBKbane, Leveringssted : String; var PrintNyLabel : Boolean; BoghandlerNummer : string = '');  procedure TLabelPrint.PrintLabelData( LabelData : TLabelData);
294    begin
295      if LabelData.LabelType = 'zpl' then
296      begin
297        PrintZPL(LabelData.ZPL);
298      end
299      else if (LabelData.LabelType = 'simpel') then
300      begin
301        PrintSimpelLabel(LabelData);
302      end
303      else
304      begin
305        PrintFuldPakkeLabel(LabelData);
306      end;
307    end;
308    
309    
310    
311    procedure TLabelPrint.SendTilPrinter_old(kontrolKoreliste, RuteNummer, Kommentar, BoghandlerNavn, Koreliste, SmsKode, DBKbane, Leveringssted : String; var PrintNyLabel : Boolean; BoghandlerNummer : string = '');
312  begin  begin
313      with Printer do      with Printer do
314      begin      begin
# Line 343  begin Line 384  begin
384        BeginDoc();        BeginDoc();
385    
386    
387        Canvas.Font.Size := 16;        Canvas.Font.Size := 15;
388        Canvas.TextOut(15,10, 'Code: ' + PakkeshopLabel.Tjekkode + '     '  + PakkeshopLabel.Overskrift);        Canvas.TextOut(15,10, 'Code: ' + PakkeshopLabel.Tjekkode + '     '  + PakkeshopLabel.Overskrift);
389    
390    
391    
392        Canvas.TextOut(25, 90, PakkeshopLabel.Navn );        Canvas.TextOut(25, 90, PakkeshopLabel.Navn );
393        Canvas.TextOut(25, 135, PakkeshopLabel.Vejnavn );        Canvas.TextOut(25, 140, PakkeshopLabel.Vejnavn );
394        Canvas.TextOut(25, 180, PakkeshopLabel.Postnr );        Canvas.TextOut(25, 190, PakkeshopLabel.Postnr );
395    
396    
397        Canvas.Font.Size := 9;        Canvas.Font.Size := 9;
# Line 601  begin Line 642  begin
642  end;  end;
643    
644  // Online zpl viewer  // Online zpl viewer
 // http://labelary.com/viewer.html  
 procedure TLabelPrint.TestZpl();  
 var  
   zpl: string;  
 begin  
   zpl :=  
 '^XA'#13#10 +  
 '^PON'#13#10 +  
 '^FWN'#13#10 +  
   
 '^FX Top section with company logo, name and address.'#13#10 +  
 '^CF0,60'#13#10 +  
 '^FO50,50^GB100,100,100^FS'#13#10+  
 '^FO75,75^FR^GB100,100,100^FS'#13#10+  
 '^FO88,88^GB50,50,50^FS'#13#10+  
 '^FO220,50^FDInternational Shipping, Inc.^FS'#13#10+  
 '^CF0,40'#13#10+  
 '^FO220,100^FD1000 Shipping Lane^FS'#13#10+  
 '^FO220,135^FDShelbyville TN 38102^FS'#13#10+  
 '^FO220,170^FDUnited States (USA)^FS'#13#10+  
 '^FO50,250^GB700,1,3^FS'#13#10 +  
 '^XZ'#13#10  
   ;  
645    
   PrintZpl(zpl);  
 end;  
646    
647  procedure TLabelPrint.PrintZPL( ZplData : string);  procedure TLabelPrint.PrintZPL( ZplData : string);
648  var  var
# Line 699  begin Line 715  begin
715    
716  end;  end;
717    
718    procedure TLabelPrint.PrintSimpelLabel( LabelData : TLabelData) ;
719    begin
720      with Printer do
721          begin
722            BeginDoc;
723    
724            Canvas.Font.Size := 20;
725            Canvas.TextOut(10, 20, LabelData.SimpelLinie1);
726            Canvas.TextOut(10, 120, LabelData.SimpelLinie2);
727            Canvas.TextOut(10, 220, LabelData.SimpelLinie3);
728    
729            EndDoc;
730          end;
731    
732    
733    
734      Printers.SetPrinter( TPrinter.Create() ).Free();//Work around for KB3177725
735    
736    end;
737    
738    
739    
740  function TLabelPrint.GetPrinterCount() : Integer;  function TLabelPrint.GetPrinterCount() : Integer;
741  begin  begin

Legend:
Removed from v.3094  
changed lines
  Added in v.3124

  ViewVC Help
Powered by ViewVC 1.1.20