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

Diff of /dao/DelphiScanner/Main.pas

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

revision 2652 by torben, Sun Aug 23 10:38:56 2015 UTC revision 2678 by torben, Wed Aug 26 13:20:47 2015 UTC
# Line 8  uses Line 8  uses
8    IdTCPClient, IdHTTP, xmldom, XMLIntf, msxmldom, XMLDoc, IniFiles, AppEvnts,    IdTCPClient, IdHTTP, xmldom, XMLIntf, msxmldom, XMLDoc, IniFiles, AppEvnts,
9    Menus, ExtCtrls, ComCtrls, StrUtils, MMSystem, DateUtils,    Menus, ExtCtrls, ComCtrls, StrUtils, MMSystem, DateUtils,
10    IdExplicitTLSClientServerBase, IdFTP, pngimage, GIFImg, IdException,    IdExplicitTLSClientServerBase, IdFTP, pngimage, GIFImg, IdException,
11    Winspool, Registry, ShellApi, ClipBrd, Buttons, wininet    Winspool, Registry, ShellApi, ClipBrd, Buttons, wininet,
12      UITypes,
13      PakkeshopLabels,
14      StBarC,
15      Math // DegToRad() bruges i PrintPakkeshopLabel
16    
17    
18    ;    ;
19    
20  type  type
# Line 20  type Line 26  type
26      IdHTTP1: TIdHTTP;      IdHTTP1: TIdHTTP;
27      XMLDocument1: TXMLDocument;      XMLDocument1: TXMLDocument;
28      ApplicationEvents1: TApplicationEvents;      ApplicationEvents1: TApplicationEvents;
29      CheckBox1: TCheckBox;      chkSporgEfterKunde: TCheckBox;
30      KommentarST: TStaticText;      KommentarST: TStaticText;
31      MainMenu1: TMainMenu;      MainMenu1: TMainMenu;
32      N1: TMenuItem;      N1: TMenuItem;
# Line 36  type Line 42  type
42      Lukprogrammet1: TMenuItem;      Lukprogrammet1: TMenuItem;
43      N2: TMenuItem;      N2: TMenuItem;
44      N3: TMenuItem;      N3: TMenuItem;
45      RadioButton1: TRadioButton;      radioStorPakke: TRadioButton;
46      RadioButton2: TRadioButton;      radioLillePakke: TRadioButton;
47      N4: TMenuItem;      N4: TMenuItem;
48      Storepakker1: TMenuItem;      Storepakker1: TMenuItem;
49      Smpakker1: TMenuItem;      Smpakker1: TMenuItem;
# Line 56  type Line 62  type
62      DownloadButton03: TButton;      DownloadButton03: TButton;
63      Pakkeshoplevering1: TMenuItem;      Pakkeshoplevering1: TMenuItem;
64      PakkeshopText1: TStaticText;      PakkeshopText1: TStaticText;
65      PakkeshopNulstil: TButton;      btnNulstil: TButton;
66      Returpakkerfrapakkeshop1: TMenuItem;      Returpakkerfrapakkeshop1: TMenuItem;
67      Altidprintepakkelabel1: TMenuItem;      Altidprintepakkelabel1: TMenuItem;
68      chkAltidPrintLabel: TCheckBox;      chkAltidPrintLabel: TCheckBox;
# Line 66  type Line 72  type
72      Manual1: TMenuItem;      Manual1: TMenuItem;
73      PrinterstatusStaticText1: TStaticText;      PrinterstatusStaticText1: TStaticText;
74      Timer1: TTimer;      Timer1: TTimer;
75      CheckBox3: TCheckBox;      chkScanTjekkode: TCheckBox;
76      Scanogstjekkoden1: TMenuItem;      Scanogstjekkoden1: TMenuItem;
77      Automatisktjekkodestyring1: TMenuItem;      Automatisktjekkodestyring1: TMenuItem;
78      Automatiskvalg1: TMenuItem;      Automatiskvalg1: TMenuItem;
# Line 77  type Line 83  type
83      PanelValg4: TPanel;      PanelValg4: TPanel;
84      PanelValg5: TPanel;      PanelValg5: TPanel;
85      PanelValg6: TPanel;      PanelValg6: TPanel;
86        PanelValg7: TPanel;
87      Manualgenerel1: TMenuItem;      Manualgenerel1: TMenuItem;
88      StaticTextManglendePakker: TStaticText;      StaticTextManglendePakker: TStaticText;
89      PanelManglendePakker1: TPanel;      PanelManglendePakker1: TPanel;
# Line 85  type Line 92  type
92      PanelManglendePakker4: TPanel;      PanelManglendePakker4: TPanel;
93      PanelManglendePakker5: TPanel;      PanelManglendePakker5: TPanel;
94      PanelManglendePakker6: TPanel;      PanelManglendePakker6: TPanel;
95      PanelValg7: TPanel;      menuIndlevering: TMenuItem;
96    
97    
98    function Explode(var a: TStrArray; Border, S: string): Integer;    function Explode(var a: TStrArray; Border, S: string): Integer;
99    function BarCodeValid (ACode: string): boolean;    function BarCodeValid (ACode: string): boolean;
100    function Sto_GetFmtFileVersion(const FileName: String = ''; const Fmt: String = '%d.%d.%d.%d'): String;    function Sto_GetFmtFileVersion(const FileName: String = ''): String;
101    function TColorToHex(Color : TColor) : string;    function TColorToHex(Color : TColor) : string;
102    function HexToTColor(sColor : string) : TColor;    function HexToTColor(sColor : string) : TColor;
103    function getProddato() : TDate;    function getProddato() : TDate;
# Line 113  type Line 121  type
121    procedure FormKeyPress(Sender: TObject; var Key: Char);    procedure FormKeyPress(Sender: TObject; var Key: Char);
122    procedure FormCreate(Sender: TObject);    procedure FormCreate(Sender: TObject);
123    procedure ApplicationEvents1Idle(Sender: TObject; var Done: Boolean);    procedure ApplicationEvents1Idle(Sender: TObject; var Done: Boolean);
124    procedure RadioButton1Click(Sender: TObject);    procedure radioStorPakkeClick(Sender: TObject);
125    procedure RadioButton2Click(Sender: TObject);    procedure radioLillePakkeClick(Sender: TObject);
126    procedure CheckBox1Click(Sender: TObject);    procedure chkSporgEfterKundeClick(Sender: TObject);
127    procedure Pakkernormal1Click(Sender: TObject);    procedure Pakkernormal1Click(Sender: TObject);
128    procedure Testforbindelsen1Click(Sender: TObject);    procedure Testforbindelsen1Click(Sender: TObject);
129    procedure Testprinter1Click(Sender: TObject);    procedure Testprinter1Click(Sender: TObject);
# Line 143  type Line 151  type
151    procedure UploadButton01Click(Sender: TObject);    procedure UploadButton01Click(Sender: TObject);
152    procedure DownloadButton03Click(Sender: TObject);    procedure DownloadButton03Click(Sender: TObject);
153    procedure Pakkeshoplevering1Click(Sender: TObject);    procedure Pakkeshoplevering1Click(Sender: TObject);
154    procedure PakkeshopNulstilClick(Sender: TObject);    procedure btnNulstilClick(Sender: TObject);
155    procedure Returpakkerfrapakkeshop1Click(Sender: TObject);    procedure Returpakkerfrapakkeshop1Click(Sender: TObject);
156    procedure InitNatxpresslevering();    procedure InitNatxpresslevering();
157    procedure InitReturFraDao();    procedure InitReturFraDao();
# Line 158  type Line 166  type
166    procedure EKLoverforselClick(Sender: TObject);    procedure EKLoverforselClick(Sender: TObject);
167    procedure Uploadlogfil1Click(Sender: TObject);    procedure Uploadlogfil1Click(Sender: TObject);
168    procedure Manual1Click(Sender: TObject);    procedure Manual1Click(Sender: TObject);
   procedure CheckPrintQue(tjektype : string);  
169    procedure Timer1Timer(Sender: TObject);    procedure Timer1Timer(Sender: TObject);
170    procedure Scanogstjekkoden1Click(Sender: TObject);    procedure Scanogstjekkoden1Click(Sender: TObject);
171    procedure CheckBox3Click(Sender: TObject);    procedure chkScanTjekkodeClick(Sender: TObject);
172    procedure Automatisktjekkodestyring1Click(Sender: TObject);    procedure Automatisktjekkodestyring1Click(Sender: TObject);
173    procedure SendInfoTilServer(Sted, Scanningtype, Infotype, Info : String);    procedure SendInfoTilServer(Sted, Scanningtype, Infotype, Info : String);
174    procedure Automatiskvalg1Click(Sender: TObject);    procedure Automatiskvalg1Click(Sender: TObject);
# Line 172  type Line 179  type
179    procedure PanelValg4Click(Sender: TObject);    procedure PanelValg4Click(Sender: TObject);
180    procedure PanelValg5Click(Sender: TObject);    procedure PanelValg5Click(Sender: TObject);
181    procedure PanelValg6Click(Sender: TObject);    procedure PanelValg6Click(Sender: TObject);
182      procedure PanelValg7Click(Sender: TObject);
183    
184    procedure NulstilAutomatiskValg();    procedure NulstilAutomatiskValg();
185    procedure SletLogfiler(Path: string; FileList: TStrings);    procedure SletLogfiler(Path: string; FileList: TStrings);
186    procedure Manualgenerel1Click(Sender: TObject);    procedure Manualgenerel1Click(Sender: TObject);
187    procedure TjekkerUrls();    procedure TjekkerUrls();
188  // 20150310: start  
189    procedure RoundCornerOf(Control: TWinControl);    procedure RoundCornerOf(Control: TWinControl);
190      procedure menuIndleveringClick(Sender: TObject);
191    
192      procedure PrintPakkeshopLabel( PakkeshopLabel : TPakkeshopLabel);
193      procedure CheckPrintQue(tjektype : string);
194    
     procedure PanelValg7Click(Sender: TObject);  
 // 20150310: slut  
195    
196    private    private
197      SpecialVersionSted, SpecialVersionScanningtype: String;    // Bruges når programmet skal bruges udenfor DAO scanningssteder      SpecialVersionSted, SpecialVersionScanningtype: String;    // Bruges når programmet skal bruges udenfor DAO scanningssteder
# Line 188  type Line 199  type
199      SkrivLog : String;      SkrivLog : String;
200      Sted : String;      Sted : String;
201      StedNavn : String;      StedNavn : String;
202      Url, UrlNormal, UrlReturDAO, UrlReturBoghandler, UrlBudlevering, UrlManglendeScanninger, UrlPakkeshoplevering, UrlReturPakkeshop, UrlPakkeshopManglendeScanninger, UrlPakkeshopManglendeReturScanninger,UrlEKLoverforsel : String;      Url, UrlNormal, UrlReturDAO, UrlReturBoghandler, UrlBudlevering, UrlManglendeScanninger, UrlPakkeshoplevering, UrlReturPakkeshop, UrlPakkeshopManglendeScanninger, UrlPakkeshopManglendeReturScanninger,UrlIndleveringsPakke,UrlEKLoverforsel : String;
203  // 29150330: start  // 29150330: start
204      UrlEKLoverforselPakkeshop : String;      UrlEKLoverforselPakkeshop : String;
205  // 20150330: slut  // 20150330: slut
# Line 196  type Line 207  type
207      Scanningtype, TestFunktionen, Pakketype, SporgEfterBoghandler : String;      Scanningtype, TestFunktionen, Pakketype, SporgEfterBoghandler : String;
208      ScanTjekkode : String;      ScanTjekkode : String;
209      ScanTjekkodeAutomatik : string;      ScanTjekkodeAutomatik : string;
210      Farve, FarveNormal, FarveReturDAO, FarveReturBoghandler, FarveBudlevering, FarvePakkeshoplevering, FarveReturPakkeshop : String;      Farve, FarveNormal, FarveReturDAO, FarveReturBoghandler, FarveBudlevering, FarvePakkeshoplevering, FarveReturPakkeshop, FarveIndlevering : String;
211      Titel, TitelNormal, TitelReturDAO, TitelReturBoghandler, TitelBudlevering, TitelPakkeshoplevering, TitelReturPakkeshop : String;      Titel, TitelNormal, TitelReturDAO, TitelReturBoghandler, TitelBudlevering, TitelPakkeshoplevering, TitelReturPakkeshop, TitelIndlevering : String;
212      LabelType : integer;      LabelType : integer;
213      AlarmLyd : String;      AlarmLyd : String;
214      ScannetOkLyd : String;      ScannetOkLyd : String;
# Line 243  type Line 254  type
254      BoghandlerStregkode, BoghandlerTjekkode : String;      BoghandlerStregkode, BoghandlerTjekkode : String;
255      TjekUrls : String;      TjekUrls : String;
256    
257        Barcode : TStBarcode;
258    
259            function CheckSumModulo10(const data:string):string;          { used for EAN 8/13 }            function CheckSumModulo10(const data:string):string;          { used for EAN 8/13 }
260    
261      procedure PrintLabel(RuteNummer, Kommentar, BoghandlerNavn, Koreliste, SmsKode, DBKbane, Leveringssted : String; var PrintNyLabel : Boolean; BoghandlerNummer : String = '');      procedure PrintLabel(RuteNummer, Kommentar, BoghandlerNavn, Koreliste, SmsKode, DBKbane, Leveringssted : String; var PrintNyLabel : Boolean; BoghandlerNummer : String = '');
# Line 255  type Line 268  type
268      procedure IndlesScanningLogFil();      procedure IndlesScanningLogFil();
269      procedure SkrivScanningLogFil(var tekst : string);      procedure SkrivScanningLogFil(var tekst : string);
270      function TjekKoreliste(var RuteNummer, Koreliste : string) : string;      function TjekKoreliste(var RuteNummer, Koreliste : string) : string;
271        procedure VisAlarmSkaerm(strMessage: string);
272    
273    public    public
274      { Public declarations }      { Public declarations }
275    end;    end;
276    
277          function GetPixelsPerInchX(): Integer;
278        function GetPixelsPerInchY(): Integer;
279    
280  var  var
281    MainForm: TMainForm;    MainForm: TMainForm;
282    
# Line 298  begin Line 315  begin
315      StaticTextManglendePakker.Caption := '';      StaticTextManglendePakker.Caption := '';
316  // 20150309: slut  // 20150309: slut
317    
318        Barcode := TStBarcode.Create(MainForm);//Dynamisk oprettelse af Barcode component
319    
320      PanelValg1.Color := clBtnFace;      PanelValg1.Color := clBtnFace;
321      if PanelValg1.Enabled = true then      if PanelValg1.Enabled = true then
322      begin      begin
# Line 409  begin Line 428  begin
428      else      else
429        PakkeshopText1.Visible := false;        PakkeshopText1.Visible := false;
430    
431      CheckBox3.Checked := false;      chkScanTjekkode.Checked := false;
432      CheckBox3.Enabled := false;      chkScanTjekkode.Enabled := false;
433      Scanogstjekkoden1.Enabled := false;      Scanogstjekkoden1.Enabled := false;
434    
435      if (Scanningtype = '1') or (Scanningtype = '5') then      if (Scanningtype = '1') or (Scanningtype = '5') then
436      begin      begin
437        if (ScanTjekkode = '1') then        if (ScanTjekkode = '1') then
438        begin        begin
439          CheckBox3.Checked := true;          chkScanTjekkode.Checked := true;
440          CheckBox3.Enabled := true;          chkScanTjekkode.Enabled := true;
441          Scanogstjekkoden1.Enabled := true;          Scanogstjekkoden1.Enabled := true;
442        end        end
443        else        else
444        begin        begin
445          CheckBox3.Checked := false;          chkScanTjekkode.Checked := false;
446          CheckBox3.Enabled := true;         // False vil forhindre indtastning af tjekkode i nat x-press scanning          chkScanTjekkode.Enabled := true;         // False vil forhindre indtastning af tjekkode i nat x-press scanning
447          Scanogstjekkoden1.Enabled := true; // False vil forhindre indtastning af tjekkode i nat x-press scanning          Scanogstjekkoden1.Enabled := true; // False vil forhindre indtastning af tjekkode i nat x-press scanning
448        end;        end;
449      end;      end;
450    
451      if Automatisktjekkodestyring1.Checked then      if Automatisktjekkodestyring1.Checked then
452      begin      begin
453        CheckBox3.Enabled := false;        chkScanTjekkode.Enabled := false;
454        Scanogstjekkoden1.Enabled := false;        Scanogstjekkoden1.Enabled := false;
455      end;      end;
456    
# Line 490  procedure TMainForm.Automatisktjekkodest Line 509  procedure TMainForm.Automatisktjekkodest
509  begin  begin
510    if Automatisktjekkodestyring1.Checked then    if Automatisktjekkodestyring1.Checked then
511    begin    begin
512       CheckBox3.Enabled := false;       chkScanTjekkode.Enabled := false;
513       Scanogstjekkoden1.Enabled := false;       Scanogstjekkoden1.Enabled := false;
514    end    end
515    else    else
516    begin    begin
517       CheckBox3.Enabled := true;       chkScanTjekkode.Enabled := true;
518       Scanogstjekkoden1.Enabled := true;       Scanogstjekkoden1.Enabled := true;
519    end;    end;
520    
# Line 531  const Line 550  const
550    crlf = Chr(13) + Chr(10) ;  // Carriage return & Linefeed    crlf = Chr(13) + Chr(10) ;  // Carriage return & Linefeed
551  var  var
552    printerInd : integer;    printerInd : integer;
   i : Integer;  
 // 20150310: start  
553    gemScanningtype : String;    gemScanningtype : String;
 // 20150310: slut  
554    
555  begin  begin
556    // Initierer nogle variabler    // Initierer nogle variabler
# Line 542  begin Line 558  begin
558    Application.ShowHint := True;    Application.ShowHint := True;
559    PrinterstatusStaticText1.Caption := '';    PrinterstatusStaticText1.Caption := '';
560    PrinterstatusStaticText1.Color := MainForm.Color;    PrinterstatusStaticText1.Color := MainForm.Color;
561  // 20150306: start  
562    PakkeshopNulstil.BringToFront;    btnNulstil.BringToFront;
563  // 20150306: slut  
 // 20150310: start  
564    RoundCornerOf(PanelManglendePakker1);    RoundCornerOf(PanelManglendePakker1);
565    RoundCornerOf(PanelManglendePakker2);    RoundCornerOf(PanelManglendePakker2);
566    RoundCornerOf(PanelManglendePakker3);    RoundCornerOf(PanelManglendePakker3);
567    RoundCornerOf(PanelManglendePakker4);    RoundCornerOf(PanelManglendePakker4);
568    RoundCornerOf(PanelManglendePakker5);    RoundCornerOf(PanelManglendePakker5);
569    RoundCornerOf(PanelManglendePakker6);    RoundCornerOf(PanelManglendePakker6);
570  // 20150310: slut  
571    
572    // Hvis mappen Docs eksisterer kan vi vælge Manual i menuen Hjælp    // Hvis mappen Docs eksisterer kan vi vælge Manual i menuen Hjælp
573    if DirectoryExists('Docs') then    if DirectoryExists('Docs') then
# Line 579  begin Line 594  begin
594      UrlBudlevering := ReadString('Settings','UrlBudlevering','http://omdeling.info/webservices/bogpakkekontrol/bogpakkekontrol.php?sted=%s&pakkenummer=%s&leveringstype=%s&pakkestorrelse=%s');      UrlBudlevering := ReadString('Settings','UrlBudlevering','http://omdeling.info/webservices/bogpakkekontrol/bogpakkekontrol.php?sted=%s&pakkenummer=%s&leveringstype=%s&pakkestorrelse=%s');
595      UrlManglendeScanninger := ReadString('Settings','UrlManglendeScanninger','http://omdeling.info/webservices/bogpakkekontrol/bogpakkemanglendescanninger.php?sted=%s&type=%s');      UrlManglendeScanninger := ReadString('Settings','UrlManglendeScanninger','http://omdeling.info/webservices/bogpakkekontrol/bogpakkemanglendescanninger.php?sted=%s&type=%s');
596      UrlEKLoverforsel := ReadString('Settings','UrlEKLoverforsel','http://omdeling.info/webservices/bogpakkekontrol/bogpakkertilekl.php?sted=%s');      UrlEKLoverforsel := ReadString('Settings','UrlEKLoverforsel','http://omdeling.info/webservices/bogpakkekontrol/bogpakkertilekl.php?sted=%s');
597  // 20150330: start  
598      UrlEKLoverforselPakkeshop := ReadString('Settings','UrlEKLoverforselPakkeshop','http://omdeling.info/webservices/pakkeshop/pakkertilekl.php?sted=%s');      UrlEKLoverforselPakkeshop := ReadString('Settings','UrlEKLoverforselPakkeshop','http://omdeling.info/webservices/pakkeshop/pakkertilekl.php?sted=%s');
599  // 20150330: slut  
600      UrlPakkeshoplevering := ReadString('Settings','UrlPakkeshoplevering','http://omdeling.info/webservices/pakkeshop/pakkekontrol.php?sted=%s&stregkode=%s&tjekkode=%s');      UrlPakkeshoplevering := ReadString('Settings','UrlPakkeshoplevering','http://omdeling.info/webservices/pakkeshop/pakkekontrol.php?sted=%s&stregkode=%s&tjekkode=%s');
601      UrlReturPakkeshop := ReadString('Settings','UrlReturPakkeshop','http://omdeling.info/webservices/pakkeshop/returpakkekontrol.php?sted=%s&stregkode=%s');      UrlReturPakkeshop := ReadString('Settings','UrlReturPakkeshop','http://omdeling.info/webservices/pakkeshop/returpakkekontrol.php?sted=%s&stregkode=%s');
602      UrlPakkeshopManglendeScanninger := ReadString('Settings','UrlPakkeshopManglendeScanninger','http://omdeling.info/webservices/pakkeshop/pakkemanglendescanninger.php?sted=%s');      UrlPakkeshopManglendeScanninger := ReadString('Settings','UrlPakkeshopManglendeScanninger','http://omdeling.info/webservices/pakkeshop/pakkemanglendescanninger.php?sted=%s');
603      UrlPakkeshopManglendeReturScanninger := ReadString('Settings','UrlPakkeshopManglendeReturScanninger','http://omdeling.info/webservices/pakkeshop/pakkemanglendereturscanninger.php?sted=%s');      UrlPakkeshopManglendeReturScanninger := ReadString('Settings','UrlPakkeshopManglendeReturScanninger','http://omdeling.info/webservices/pakkeshop/pakkemanglendereturscanninger.php?sted=%s');
604    
605        UrlIndleveringsPakke := ReadString('Settings','UrlIndleveringsPakke','http://omdeling.info/webservices/pakkeshop/PakkekontrolIndleveringskode.php?sted=%s&pakkekode=%s');
606    
607    
608      LabelType := ReadInteger('Settings','LabelType',1);      LabelType := ReadInteger('Settings','LabelType',1);
609      FarveNormal := ReadString('Settings','FarveNormal','D8D8D8');      FarveNormal := ReadString('Settings','FarveNormal','D8D8D8');
610      TitelNormal := ReadString('Settings','TitelNormal','Modtagelse af DAO NAT X-PRESS pakker');      TitelNormal := ReadString('Settings','TitelNormal','Modtagelse af DAO NAT X-PRESS pakker');
# Line 597  begin Line 616  begin
616      TitelBudlevering := ReadString('Settings','TitelBudlevering','Modtagelse af DAO DIREKTE pakker');      TitelBudlevering := ReadString('Settings','TitelBudlevering','Modtagelse af DAO DIREKTE pakker');
617      FarvePakkeshoplevering := ReadString('Settings','FarvePakkeshoplevering','99FFFF');      FarvePakkeshoplevering := ReadString('Settings','FarvePakkeshoplevering','99FFFF');
618      TitelPakkeshoplevering := ReadString('Settings','TitelPakkeshoplevering','Modtagelse af DAO PAKKESHOP pakker');      TitelPakkeshoplevering := ReadString('Settings','TitelPakkeshoplevering','Modtagelse af DAO PAKKESHOP pakker');
619    
620      FarveReturPakkeshop := ReadString('Settings','FarveReturPakkeshop','99FFCC');      FarveReturPakkeshop := ReadString('Settings','FarveReturPakkeshop','99FFCC');
621      TitelReturPakkeshop := ReadString('Settings','TitelReturPakkeshop','Returforsendelse fra pakkeshop');      TitelReturPakkeshop := ReadString('Settings','TitelReturPakkeshop','Returforsendelse fra pakkeshop');
622    
623        FarveIndlevering := ReadString('Settings', 'FarveIndlevering', 'E5B2CB');
624        TitelIndlevering := ReadString('Settings', 'TitelIndlevering', 'Indleveringskode');
625    
626    
627      SporgEfterBoghandler := ReadString('Settings','SporgEfterBoghandler','0');      SporgEfterBoghandler := ReadString('Settings','SporgEfterBoghandler','0');
628      ScanTjekkode := ReadString('Settings','ScanTjekkode','0');      ScanTjekkode := ReadString('Settings','ScanTjekkode','0');
629      ScanTjekkodeAutomatik := ReadString('Settings','ScanTjekkodeAutomatik','1');      ScanTjekkodeAutomatik := ReadString('Settings','ScanTjekkodeAutomatik','1');
# Line 608  begin Line 633  begin
633      AlarmLyd := ReadString('Settings','AlarmLyd','Sounds\Alarm.wav');      AlarmLyd := ReadString('Settings','AlarmLyd','Sounds\Alarm.wav');
634      ScannetOkLyd := ReadString('Settings','ScannetOkLyd','Sounds\Ok.wav');      ScannetOkLyd := ReadString('Settings','ScannetOkLyd','Sounds\Ok.wav');
635      ScannetOkStorLyd := ReadString('Settings','ScannetOkStorLyd','Sounds\Ok_stor.wav');      ScannetOkStorLyd := ReadString('Settings','ScannetOkStorLyd','Sounds\Ok_stor.wav');
636  // 20150317: start  
637      ScannetOkTilTjekkodeLyd := ReadString('Settings','ScannetOkTilTjekkodeLyd','Sounds\Ok_til_tjekkode.wav');      ScannetOkTilTjekkodeLyd := ReadString('Settings','ScannetOkTilTjekkodeLyd','Sounds\Ok_til_tjekkode.wav');
638  // 20150317: slut  
639      PrinterNavn := ReadString('Settings','PrinterNavn','');      PrinterNavn := ReadString('Settings','PrinterNavn','');
640      TjekPrinter := ReadString('Settings','TjekPrinter','1');      TjekPrinter := ReadString('Settings','TjekPrinter','1');
641      TjekUrls := ReadString('Settings','TjekUrls','2');      TjekUrls := ReadString('Settings','TjekUrls','2');
642    
643      if (SkrivLog = '1') then      if (SkrivLog = '1') then
644      begin      begin
645        logTekst := 'Program start (Version: ' + Sto_GetFmtFileVersion('','') + ') Dato: ' + FormatDateTime('yyyy-mm-dd hh:nn:ss',now);        logTekst := 'Program start (Version: ' + Sto_GetFmtFileVersion('') + ') Dato: ' + FormatDateTime('yyyy-mm-dd hh:nn:ss',now);
646        try        try
647          SkrivScanningLogFil(logTekst);          SkrivScanningLogFil(logTekst);
648          Uploadlogfil1.Enabled := true;          Uploadlogfil1.Enabled := true;
# Line 711  begin Line 736  begin
736    
737      if SporgEfterBoghandler = '1' then      if SporgEfterBoghandler = '1' then
738      begin      begin
739        CheckBox1.Checked := true;        chkSporgEfterKunde.Checked := true;
740        Sprgefterboghandlernummer1.Checked := true;        Sprgefterboghandlernummer1.Checked := true;
741      end      end
742      else      else
743      begin      begin
744        CheckBox1.Checked := false;        chkSporgEfterKunde.Checked := false;
745        Sprgefterboghandlernummer1.Checked := false;        Sprgefterboghandlernummer1.Checked := false;
746      end;      end;
747    
748      if ScanTjekkode = '1' then      if ScanTjekkode = '1' then
749      begin      begin
750        CheckBox3.Checked := true;        chkScanTjekkode.Checked := true;
751        Scanogstjekkoden1.Checked := true;        Scanogstjekkoden1.Checked := true;
752      end      end
753      else      else
754      begin      begin
755        CheckBox3.Checked := false;        chkScanTjekkode.Checked := false;
756        Scanogstjekkoden1.Checked := false;        Scanogstjekkoden1.Checked := false;
757      end;      end;
758    
759      if ScanTjekkodeAutomatik = '1' then      if ScanTjekkodeAutomatik = '1' then
760      begin      begin
761        Automatisktjekkodestyring1.Checked := true;        Automatisktjekkodestyring1.Checked := true;
762        CheckBox3.Enabled := false;        chkScanTjekkode.Enabled := false;
763        Scanogstjekkoden1.Enabled := false;        Scanogstjekkoden1.Enabled := false;
764      end;      end;
765    
# Line 826  begin Line 851  begin
851        PanelValg5.Font.Color := clInactiveCaption;        PanelValg5.Font.Color := clInactiveCaption;
852        PanelValg6.Enabled := false;        PanelValg6.Enabled := false;
853        PanelValg6.Font.Color := clInactiveCaption;        PanelValg6.Font.Color := clInactiveCaption;
854          PanelValg7.Enabled := false;
855          PanelValg7.Font.Color := clInactiveCaption;
856    
857       // her skal vi også disable de menupunkter DBK ikke kan bruge       // her skal vi også disable de menupunkter DBK ikke kan bruge
858        ReturpakkerfraDAO1.Enabled := false;        ReturpakkerfraDAO1.Enabled := false;
859        Returpakkerfraboghandler1.Enabled := false;        Returpakkerfraboghandler1.Enabled := false;
860  // 20150317: start  
861        Pakkeshoplevering1.Enabled := false;        Pakkeshoplevering1.Enabled := false;
862        Returpakkerfrapakkeshop1.Enabled := false;        Returpakkerfrapakkeshop1.Enabled := false;
863  // 20150317: slut  
864        if SpecialVersionScanningtype = 'A' then        if SpecialVersionScanningtype = 'A' then
865        begin        begin
866           Scanningtype := '1';           Scanningtype := '1';
# Line 862  begin Line 890  begin
890        PanelValg5.Font.Color := clInactiveCaption;        PanelValg5.Font.Color := clInactiveCaption;
891        PanelValg6.Enabled := false;        PanelValg6.Enabled := false;
892        PanelValg6.Font.Color := clInactiveCaption;        PanelValg6.Font.Color := clInactiveCaption;
893          PanelValg7.Enabled := false;
894          PanelValg7.Font.Color := clInactiveCaption;
895       // her skal vi også disable de menupunkter Bladhusene (01, 02, 03 og 04) ikke kan bruge       // her skal vi også disable de menupunkter Bladhusene (01, 02, 03 og 04) ikke kan bruge
896  // 20150317: start  
897        Automatiskvalg1.Enabled := false;        Automatiskvalg1.Enabled := false;
898  // 20150317: slut  
899        Pakkernormal1.Enabled := false;        Pakkernormal1.Enabled := false;
900        ReturpakkerfraDAO1.Enabled := false;        ReturpakkerfraDAO1.Enabled := false;
901        Returpakkerfraboghandler1.Enabled := false;        Returpakkerfraboghandler1.Enabled := false;
# Line 957  begin Line 987  begin
987             RutenummerST.Caption := '';             RutenummerST.Caption := '';
988             BoghandlerNavnST.Caption := 'Fejl i urls';             BoghandlerNavnST.Caption := 'Fejl i urls';
989             KommentarST.Caption := 'Se log vinduet';             KommentarST.Caption := 'Se log vinduet';
990             PakkeshopNulstil.Visible := true;             btnNulstil.Visible := true;
991             exit;             exit;
992          end;          end;
993      end      end
# Line 1000  begin Line 1030  begin
1030      if Pakketype = '1' then      if Pakketype = '1' then
1031      begin      begin
1032        Storepakker1.Checked := true;        Storepakker1.Checked := true;
1033        RadioButton1.Checked := true;        radioStorPakke.Checked := true;
1034      end      end
1035      else      else
1036      begin      begin
1037        Smpakker1.Checked := true;        Smpakker1.Checked := true;
1038        RadioButton2.Checked := true;        radioLillePakke.Checked := true;
1039      end;      end;
1040    
1041      if TestFunktionen = '1' then      if TestFunktionen = '1' then
# Line 1045  begin Line 1075  begin
1075        ScannetOkStorLyd := '';        ScannetOkStorLyd := '';
1076      end;      end;
1077    
1078  // 20150317: start  
1079      if not FileExists(ScannetOkTilTjekkodeLyd) then      if not FileExists(ScannetOkTilTjekkodeLyd) then
1080      begin      begin
1081        ScannetOkTilTjekkodeLyd := '';        ScannetOkTilTjekkodeLyd := '';
1082      end;      end;
1083  // 20150317: slut  
1084    
1085      if (PrinterNavn <> '') then      if (PrinterNavn <> '') then
1086      begin      begin
# Line 1083  begin Line 1113  begin
1113          InitBladhus();          InitBladhus();
1114        end;        end;
1115    
1116  // 20150310: start  
1117      // Opbygger PanelManglendePakker information      // Opbygger PanelManglendePakker information
1118      gemScanningtype := Scanningtype;      gemScanningtype := Scanningtype;
1119    
# Line 1124  begin Line 1154  begin
1154      end;      end;
1155    
1156      Scanningtype := gemScanningtype;      Scanningtype := gemScanningtype;
 // 20150310: slut  
1157    
1158      SendInfoTilServer(Sted, Scanningtype, 'Begin', '');      SendInfoTilServer(Sted, Scanningtype, 'Begin', '');
1159      SendInfoTilServer(Sted, Scanningtype, 'ProgramVersion', Sto_GetFmtFileVersion('',''));      SendInfoTilServer(Sted, Scanningtype, 'ProgramVersion', Sto_GetFmtFileVersion(''));
1160    
1161  end;  end;
1162    
# Line 1145  var Line 1174  var
1174    BoghandlerNavn : String;    BoghandlerNavn : String;
1175    Koreliste : String;    Koreliste : String;
1176    PrintNyLabel : Boolean;    PrintNyLabel : Boolean;
   List1msg : String;  
1177    pakkeErScannet : Integer;    pakkeErScannet : Integer;
1178    pakkeForkertSted : Integer;    pakkeForkertSted : Integer;
1179    tjekkodeMangler : Integer;    tjekkodeMangler : Integer;
# Line 1170  begin Line 1198  begin
1198      ClipboardData := Clipboard.AsText;      ClipboardData := Clipboard.AsText;
1199      numberString := ClipboardData;      numberString := ClipboardData;
1200      Val(numberString, float, errorPos);      Val(numberString, float, errorPos);
1201  // 20150311: start  
1202  //    if (ClipboardData <> '') and (errorPos = 0) then      //    if (ClipboardData <> '') and (errorPos = 0) then
1203      if (ClipboardData <> '') and (errorPos = 0)      if (ClipboardData <> '') and (errorPos = 0)
1204      or (NumberString = 'Nulstil')      or (NumberString = 'Nulstil')
1205      or (NumberString = 'Indtast kundenummer')      or (NumberString = 'Indtast kundenummer')
# Line 1186  begin Line 1214  begin
1214      or (NumberString = 'DAO DIREKTE')      or (NumberString = 'DAO DIREKTE')
1215      or (NumberString = 'DAO PAKKESHOP')      or (NumberString = 'DAO PAKKESHOP')
1216      or (NumberString = 'Retur fra pakkeshop') then      or (NumberString = 'Retur fra pakkeshop') then
1217  // 20150311: slut  
1218      begin      begin
1219        Stregkode := Stregkode + ClipboardData;        Stregkode := Stregkode + ClipboardData;
1220        StregkodeST.Caption := StregKode;        StregkodeST.Caption := StregKode;
# Line 1199  begin Line 1227  begin
1227    
1228    if Key = #13 then     // Enter    if Key = #13 then     // Enter
1229    begin    begin
 // 20150306: start  
1230      if (Length(Trim(Stregkode)) = 0) then      if (Length(Trim(Stregkode)) = 0) then
1231      begin      begin
1232        PlaySound(PWideChar(AlarmLyd));        VisAlarmSkaerm( 'Der skal scannes en stregkode...' );
1233        List1msg := 'Der skal scannes en stregkode...';  
       ListBox1.Items.Insert(0,List1Msg);  
       MainForm.Color := clRed;  
 // 20150316: start  
       RuteNummerST.Caption := '';  
       BoghandlerNavnST.Caption := '';  
 // 20150316: slut  
       KommentarST.Caption := List1msg;  
       PakkeshopNulstil.Visible := true;  
1234        exit;        exit;
1235      end;      end;
 // 20150306: slut  
1236    
 // 20150311: start  
1237      if StregKode = 'Nulstil' then      if StregKode = 'Nulstil' then
1238      begin      begin
1239         PakkeshopNulstil.Click();         btnNulstil.Click();
1240         exit;         exit;
1241      end;      end;
1242    
1243      if PakkeshopNulstil.Visible then      if btnNulstil.Visible then
1244      begin      begin
1245         PlaySound(PWideChar(AlarmLyd));        VisAlarmSkaerm( 'HUSK at klikke Nulstil før ny scanning...' );
1246  // 20150312: start  
 //       List1msg := 'HUSK at trykke Nulstil før ny scanning...';  
        List1msg := 'HUSK at klikke Nulstil før ny scanning...';  
 // 20150312: slut  
        ListBox1.Items.Insert(0,List1Msg);  
        MainForm.Color := clRed;  
        KommentarST.Caption := List1msg;  
 // 20150312: start  
        Stregkode := '';  
        StregkodeST.Caption := StregKode;  
 // 20150312: slut  
1247         exit;         exit;
1248      end;      end;
1249    
1250      if StregKode = 'Lille pakke' then      if StregKode = 'Lille pakke' then
1251      begin      begin
1252         if RadioButton2.Enabled = true then         if radioLillePakke.Enabled = true then
1253         begin         begin
1254            InitLillePakke();            InitLillePakke();
1255         end         end
1256         else         else
1257         begin         begin
1258          //ShowMessage('Ændring ikke tilladt');            VisAlarmSkaerm( Stregkode + ' kan ikke vælges på dette scanningsted' );
         // Her skal komme en 'rød skærm' alarm  
          PlaySound(PWideChar(AlarmLyd));  
          List1msg := Stregkode + ' kan ikke vælges på dette scanningsted';  
          ListBox1.Items.Insert(0,List1Msg);  
          MainForm.Color := clRed;  
 // 20150316: start  
          RuteNummerST.Caption := '';  
          BoghandlerNavnST.Caption := '';  
 // 20150316: slut  
          KommentarST.Caption := List1msg;  
          PakkeshopNulstil.Visible := true;  
1259         end;         end;
1260         Stregkode := '';         Stregkode := '';
1261         StregkodeST.Caption := StregKode;         StregkodeST.Caption := StregKode;
# Line 1268  begin Line 1264  begin
1264    
1265      if StregKode = 'Stor pakke' then      if StregKode = 'Stor pakke' then
1266      begin      begin
1267         if RadioButton1.Enabled = true then         if radioStorPakke.Enabled = true then
1268         begin         begin
1269            InitStorPakke();            InitStorPakke();
1270         end         end
1271         else         else
1272         begin         begin
1273          //ShowMessage('Ændring ikke tilladt');            VisAlarmSkaerm( Stregkode + ' kan ikke vælges på dette scanningsted' );
         // Her skal komme en 'rød skærm' alarm  
          PlaySound(PWideChar(AlarmLyd));  
          List1msg := Stregkode + ' kan ikke vælges på dette scanningsted';  
          ListBox1.Items.Insert(0,List1Msg);  
          MainForm.Color := clRed;  
 // 20150316: start  
          RuteNummerST.Caption := '';  
          BoghandlerNavnST.Caption := '';  
 // 20150316: slut  
          KommentarST.Caption := List1msg;  
          PakkeshopNulstil.Visible := true;  
1274         end;         end;
1275         Stregkode := '';         Stregkode := '';
1276         StregkodeST.Caption := StregKode;         StregkodeST.Caption := StregKode;
# Line 1294  begin Line 1279  begin
1279    
1280      if StregKode = 'Indtast kundenummer' then      if StregKode = 'Indtast kundenummer' then
1281      begin      begin
1282         if CheckBox1.Enabled = true then         if chkSporgEfterKunde.Enabled = true then
1283         begin         begin
1284           if (CheckBox1.State = cbChecked) then           if (chkSporgEfterKunde.State = cbChecked) then
1285           begin           begin
1286            CheckBox1.State := cbUnchecked;            chkSporgEfterKunde.State := cbUnchecked;
1287           end           end
1288           else           else
1289           begin           begin
1290            CheckBox1.State := cbChecked;            chkSporgEfterKunde.State := cbChecked;
1291           end;           end;
1292         end         end
1293         else         else
1294         begin         begin
1295          //ShowMessage('Ændring ikke tilladt');            VisAlarmSkaerm( Stregkode + ' kan ikke vælges på dette scanningsted' );
         // Her skal komme en 'rød skærm' alarm  
          PlaySound(PWideChar(AlarmLyd));  
          List1msg := Stregkode + ' kan ikke vælges på dette scanningsted';  
          ListBox1.Items.Insert(0,List1Msg);  
          MainForm.Color := clRed;  
 // 20150316: start  
          RuteNummerST.Caption := '';  
          BoghandlerNavnST.Caption := '';  
 // 20150316: slut  
          KommentarST.Caption := List1msg;  
          PakkeshopNulstil.Visible := true;  
1296         end;         end;
1297         Stregkode := '';         Stregkode := '';
1298         StregkodeST.Caption := StregKode;         StregkodeST.Caption := StregKode;
# Line 1327  begin Line 1301  begin
1301    
1302      if (Stregkode = 'Scan tjekkode') or (PakkeshopStregkode = 'Scan tjekkode') or (BoghandlerStregkode = 'Scan tjekkode') then      if (Stregkode = 'Scan tjekkode') or (PakkeshopStregkode = 'Scan tjekkode') or (BoghandlerStregkode = 'Scan tjekkode') then
1303      begin      begin
1304        if CheckBox3.Enabled = true then        if chkScanTjekkode.Enabled = true then
1305        begin        begin
1306           if (CheckBox3.State = cbChecked) then           if (chkScanTjekkode.State = cbChecked) then
1307           begin           begin
1308            CheckBox3.State := cbUnchecked;            chkScanTjekkode.State := cbUnchecked;
1309           end           end
1310           else           else
1311           begin           begin
1312            CheckBox3.State := cbChecked;            chkScanTjekkode.State := cbChecked;
1313           end;           end;
1314        end        end
1315        else        else
1316        begin        begin
1317          //ShowMessage('Ændring ikke tilladt');            VisAlarmSkaerm( Stregkode + ' kan ikke vælges på dette scanningsted' );
         // Her skal komme en 'rød skærm' alarm  
          PlaySound(PWideChar(AlarmLyd));  
          List1msg := Stregkode + ' kan ikke vælges på dette scanningsted';  
          ListBox1.Items.Insert(0,List1Msg);  
          MainForm.Color := clRed;  
 // 20150316: start  
          RuteNummerST.Caption := '';  
          BoghandlerNavnST.Caption := '';  
 // 20150316: slut  
          KommentarST.Caption := List1msg;  
          PakkeshopNulstil.Visible := true;  
1318        end;        end;
1319        Stregkode := '';        Stregkode := '';
1320        StregkodeST.Caption := StregKode;        StregkodeST.Caption := StregKode;
# Line 1366  begin Line 1329  begin
1329         end         end
1330         else         else
1331         begin         begin
1332          //ShowMessage('Ændring ikke tilladt');            VisAlarmSkaerm(Stregkode + ' kan ikke vælges på dette scanningsted');
         // Her skal komme en 'rød skærm' alarm  
          PlaySound(PWideChar(AlarmLyd));  
          List1msg := Stregkode + ' kan ikke vælges på dette scanningsted';  
          ListBox1.Items.Insert(0,List1Msg);  
          MainForm.Color := clRed;  
 // 20150316: start  
          RuteNummerST.Caption := '';  
          BoghandlerNavnST.Caption := '';  
 // 20150316: slut  
          KommentarST.Caption := List1msg;  
          PakkeshopNulstil.Visible := true;  
1333         end;         end;
1334         Stregkode := '';         Stregkode := '';
1335         StregkodeST.Caption := StregKode;         StregkodeST.Caption := StregKode;
1336         exit;         exit;
1337      end;      end;
1338    
1339  // 20150323: start  
 //    if StregKode = 'DAO NAT X-PRESS' then  
1340      if (StregKode = 'DAO NAT X-PRESS' ) or (StregKode = 'DAO NAT X+PRESS') then      if (StregKode = 'DAO NAT X-PRESS' ) or (StregKode = 'DAO NAT X+PRESS') then
 // 20150323: slut  
1341      begin      begin
1342         if (PanelValg1.Enabled = true) then         if (PanelValg1.Enabled = true) then
1343         begin         begin
# Line 1395  begin Line 1345  begin
1345         end         end
1346         else         else
1347         begin         begin
1348          //ShowMessage('Ændring ikke tilladt');          VisAlarmSkaerm(Stregkode + ' kan ikke vælges på dette scanningsted');
         // Her skal komme en 'rød skærm' alarm  
          PlaySound(PWideChar(AlarmLyd));  
          List1msg := Stregkode + ' kan ikke vælges på dette scanningsted';  
          ListBox1.Items.Insert(0,List1Msg);  
          MainForm.Color := clRed;  
 // 20150316: start  
          RuteNummerST.Caption := '';  
          BoghandlerNavnST.Caption := '';  
 // 20150316: slut  
          KommentarST.Caption := List1msg;  
          PakkeshopNulstil.Visible := true;  
1349         end;         end;
1350         Stregkode := '';         Stregkode := '';
1351         StregkodeST.Caption := StregKode;         StregkodeST.Caption := StregKode;
# Line 1421  begin Line 1360  begin
1360         end         end
1361         else         else
1362         begin         begin
1363          //ShowMessage('Ændring ikke tilladt');            VisAlarmSkaerm( Stregkode + ' kan ikke vælges på dette scanningsted' );
         // Her skal komme en 'rød skærm' alarm  
          PlaySound(PWideChar(AlarmLyd));  
          List1msg := Stregkode + ' kan ikke vælges på dette scanningsted';  
          ListBox1.Items.Insert(0,List1Msg);  
          MainForm.Color := clRed;  
 // 20150316: start  
          RuteNummerST.Caption := '';  
          BoghandlerNavnST.Caption := '';  
 // 20150316: slut  
          KommentarST.Caption := List1msg;  
          PakkeshopNulstil.Visible := true;  
1364         end;         end;
1365         Stregkode := '';         Stregkode := '';
1366         StregkodeST.Caption := StregKode;         StregkodeST.Caption := StregKode;
# Line 1447  begin Line 1375  begin
1375         end         end
1376         else         else
1377         begin         begin
1378          //ShowMessage('Ændring ikke tilladt');            VisAlarmSkaerm( Stregkode + ' kan ikke vælges på dette scanningsted' );
         // Her skal komme en 'rød skærm' alarm  
          PlaySound(PWideChar(AlarmLyd));  
          List1msg := Stregkode + ' kan ikke vælges på dette scanningsted';  
          ListBox1.Items.Insert(0,List1Msg);  
          MainForm.Color := clRed;  
 // 20150316: start  
          RuteNummerST.Caption := '';  
          BoghandlerNavnST.Caption := '';  
 // 20150316: slut  
          KommentarST.Caption := List1msg;  
          PakkeshopNulstil.Visible := true;  
1379         end;         end;
1380         Stregkode := '';         Stregkode := '';
1381         StregkodeST.Caption := StregKode;         StregkodeST.Caption := StregKode;
# Line 1473  begin Line 1390  begin
1390         end         end
1391         else         else
1392         begin         begin
1393          //ShowMessage('Ændring ikke tilladt');            VisAlarmSkaerm( Stregkode + ' kan ikke vælges på dette scanningsted' );
         // Her skal komme en 'rød skærm' alarm  
          PlaySound(PWideChar(AlarmLyd));  
          List1msg := Stregkode + ' kan ikke vælges på dette scanningsted';  
          ListBox1.Items.Insert(0,List1Msg);  
          MainForm.Color := clRed;  
 // 20150316: start  
          RuteNummerST.Caption := '';  
          BoghandlerNavnST.Caption := '';  
 // 20150316: slut  
          KommentarST.Caption := List1msg;  
          PakkeshopNulstil.Visible := true;  
1394         end;         end;
1395         Stregkode := '';         Stregkode := '';
1396         StregkodeST.Caption := StregKode;         StregkodeST.Caption := StregKode;
# Line 1499  begin Line 1405  begin
1405         end         end
1406         else         else
1407         begin         begin
1408          //ShowMessage('Ændring ikke tilladt');            VisAlarmSkaerm( Stregkode + ' kan ikke vælges på dette scanningsted' );
         // Her skal komme en 'rød skærm' alarm  
          PlaySound(PWideChar(AlarmLyd));  
          List1msg := Stregkode + ' kan ikke vælges på dette scanningsted';  
          ListBox1.Items.Insert(0,List1Msg);  
          MainForm.Color := clRed;  
 // 20150316: start  
          RuteNummerST.Caption := '';  
          BoghandlerNavnST.Caption := '';  
 // 20150316: slut  
          KommentarST.Caption := List1msg;  
          PakkeshopNulstil.Visible := true;  
1409         end;         end;
1410         Stregkode := '';         Stregkode := '';
1411         StregkodeST.Caption := StregKode;         StregkodeST.Caption := StregKode;
# Line 1525  begin Line 1420  begin
1420         end         end
1421         else         else
1422         begin         begin
1423          //ShowMessage('Ændring ikke tilladt');            VisAlarmSkaerm( Stregkode + ' kan ikke vælges på dette scanningsted' );
         // Her skal komme en 'rød skærm' alarm  
          PlaySound(PWideChar(AlarmLyd));  
          List1msg := Stregkode + ' kan ikke vælges på dette scanningsted';  
          ListBox1.Items.Insert(0,List1Msg);  
          MainForm.Color := clRed;  
 // 20150316: start  
          RuteNummerST.Caption := '';  
          BoghandlerNavnST.Caption := '';  
 // 20150316: slut  
          KommentarST.Caption := List1msg;  
          PakkeshopNulstil.Visible := true;  
1424         end;         end;
1425         Stregkode := '';         Stregkode := '';
1426         StregkodeST.Caption := StregKode;         StregkodeST.Caption := StregKode;
1427         exit;         exit;
1428      end;      end;
1429  // 20150311: slut  
1430    
1431      if (Length(Stregkode) > 8) then      if (Length(Stregkode) > 8) then
1432      begin      begin
# Line 1597  begin Line 1481  begin
1481          or (Pakkescanningtype = '5') and (PanelValg5.Enabled = false)          or (Pakkescanningtype = '5') and (PanelValg5.Enabled = false)
1482          or (Pakkescanningtype = '6') and (PanelValg6.Enabled = false)  ) then          or (Pakkescanningtype = '6') and (PanelValg6.Enabled = false)  ) then
1483      begin   // Her skal komme en alarm og rød skærm      begin   // Her skal komme en alarm og rød skærm
1484         PlaySound(PWideChar(AlarmLyd));          VisAlarmSkaerm( Stregkode + ' kan ikke vælges på dette scanningsted' );
1485         List1msg := 'Pakketype ' + Pakketype + ' kan ikke scannes på dette scanningsted';  
        ListBox1.Items.Insert(0,List1Msg);  
        MainForm.Color := clRed;  
 // 20150316: start  
        RuteNummerST.Caption := '';  
        BoghandlerNavnST.Caption := '';  
 // 20150316: slut  
        KommentarST.Caption := List1msg;  
        PakkeshopNulstil.Visible := true;  
 // 20150311: start  
        StregKode := '';  
        StregkodeST.Caption := StregKode;  
 // 20150311: slut  
1486         exit;         exit;
1487      end;      end;
1488    
# Line 1626  begin Line 1498  begin
1498              end;              end;
1499            end            end
1500        // Retur kan ikke scannes med 'Automatisk valg'        // Retur kan ikke scannes med 'Automatisk valg'
1501  (*  
       else if Pakketype = 'NatXpressReturDAO' then  
           begin  
             if Scanningtype <> '2' then  
             begin  
               Scanningtype := '2';  
               InitReturFraDao();  
             end;  
           end  
       else if Pakketype = 'NatXpressReturKunde' then  
           begin  
             if Scanningtype <> '3' then  
             begin  
               Scanningtype := '3';  
               InitReturFraKunde();  
             end;  
           end  
 *)  
1502        else if Pakketype = 'Direkte' then        else if Pakketype = 'Direkte' then
1503            begin            begin
1504              if Scanningtype <> '4' then              if Scanningtype <> '4' then
# Line 1661  begin Line 1516  begin
1516              end;              end;
1517            end            end
1518        // Retur kan ikke scannes med 'Automatisk valg'        // Retur kan ikke scannes med 'Automatisk valg'
1519  (*  
       else if Pakketype = 'PakkeshopRetur' then  
           begin  
             if Scanningtype <> '6' then  
             begin  
               Scanningtype := '6';  
               InitReturFraPakkeshop();  
             end;  
           end  
 *)  
1520        else        else
1521            begin   // Her skal komme en alarm og rød skærm            begin
1522               PlaySound(PWideChar(AlarmLyd));            // Her skal komme en alarm og rød skærm
1523               List1msg := 'Pakken kan ikke scannes med automatisk valg';              VisAlarmSkaerm( Stregkode + ' kan ikke vælges på dette scanningsted' );
1524               ListBox1.Items.Insert(0,List1Msg);  
              MainForm.Color := clRed;  
 // 20150316: start  
              RuteNummerST.Caption := '';  
              BoghandlerNavnST.Caption := '';  
 // 20150316: slut  
              KommentarST.Caption := List1msg;  
              PakkeshopNulstil.Visible := true;  
 // 20150311: start  
              StregKode := '';  
              StregkodeST.Caption := StregKode;  
 // 20150311: slut  
1525               exit;               exit;
1526            end;            end;
1527        Stregkode := GemStregkode;        Stregkode := GemStregkode;
1528      end      end
1529      else if Automatiskvalg1.Checked and (PakkeshopText1.Caption = 'Stregkode') then      else if Automatiskvalg1.Checked and (PakkeshopText1.Caption = 'Stregkode') then
1530      begin      begin
1531        PlaySound(PWideChar(AlarmLyd));        VisAlarmSkaerm( 'Pakkenummer ikke gyldigt (for kort)' );
1532        List1msg := 'Pakkenummer ikke gyldigt (for kort)';  
       ListBox1.Items.Insert(0,List1Msg);  
       MainForm.Color := clRed;  
 // 20150316: start  
       RuteNummerST.Caption := '';  
       BoghandlerNavnST.Caption := '';  
 // 20150316: slut  
       KommentarST.Caption := List1msg;  
       PakkeshopNulstil.Visible := true;  
 // 20150312: start  
       StregKode := '';  
       StregkodeST.Caption := StregKode;  
 // 20150312: slut  
1533        exit;        exit;
1534      end;      end;
1535    
# Line 1714  begin Line 1537  begin
1537      begin      begin
1538        if ( (Pakkescanningtype <> Scanningtype) and (Scanningtype <> '2') and (Scanningtype <> '3') ) then        if ( (Pakkescanningtype <> Scanningtype) and (Scanningtype <> '2') and (Scanningtype <> '3') ) then
1539        begin        begin
         PlaySound(PWideChar(AlarmLyd));  
         List1msg := 'Pakke findes som pakketype: ' + Pakketype;  
         ListBox1.Items.Insert(0,List1Msg);  
         MainForm.Color := clRed;  
 // 20150316: start  
          RuteNummerST.Caption := '';  
          BoghandlerNavnST.Caption := '';  
 // 20150316: slut  
         KommentarST.Caption := List1msg;  
         PakkeshopNulstil.Visible := true;  
 // 20150312: start  
         StregKode := '';  
         StregkodeST.Caption := StregKode;  
 // 20150312: slut  
         exit;  
       end;  
     end;  
1540    
1541  // 20150311: start          VisAlarmSkaerm( 'Pakke findes som pakketype: ' + Pakketype );
 (*  
     if StregKode = 'Nulstil' then  
     begin  
        PakkeshopNulstil.Click();  
        exit;  
     end;  
1542    
1543      if PakkeshopNulstil.Visible then          exit;
1544      begin        end;
        PlaySound(PWideChar(AlarmLyd));  
        List1msg := 'HUSK at trykke Nulstil før ny scanning...';  
        ListBox1.Items.Insert(0,List1Msg);  
        MainForm.Color := clRed;  
        KommentarST.Caption := List1msg;  
        exit;  
1545      end;      end;
1546    
     if StregKode = 'Lille pakke' then  
     begin  
        InitLillePakke();  
        exit;  
     end;  
   
     if StregKode = 'Stor pakke' then  
     begin  
        InitStorPakke();  
        exit;  
     end;  
   
     if StregKode = 'Indtast kundenummer' then  
     begin  
        if (CheckBox1.State = cbChecked) then  
        begin  
         CheckBox1.State := cbUnchecked;  
        end  
        else  
        begin  
         CheckBox1.State := cbChecked;  
        end;  
        Stregkode := '';  
        exit;  
     end;  
   
     if (Stregkode = 'Scan tjekkode') or (PakkeshopStregkode = 'Scan tjekkode') or (BoghandlerStregkode = 'Scan tjekkode') then  
     begin  
        if (CheckBox3.State = cbChecked) then  
        begin  
         CheckBox3.State := cbUnchecked;  
        end  
        else  
        begin  
         CheckBox3.State := cbChecked;  
        end;  
        Stregkode := '';  
        exit;  
     end;  
 *)  
 // 20150311: slut  
1547    
1548    
1549      if (PakkeshopText1.Visible = true) and (PakkeshopText1.Caption = 'Stregkode') and Automatisktjekkodestyring1.Checked then      if (PakkeshopText1.Visible = true) and (PakkeshopText1.Caption = 'Stregkode') and Automatisktjekkodestyring1.Checked then
1550      begin      begin
1551        CheckBox3.Checked := false;        chkScanTjekkode.Checked := false;
1552        for i := 0 to length(stregkoderMedTjekkodeArray)-1 do        for i := 0 to length(stregkoderMedTjekkodeArray)-1 do
1553        begin        begin
1554          if (Stregkode=stregkoderMedTjekkodeArray[i]) then          if (Stregkode=stregkoderMedTjekkodeArray[i]) then
1555          begin          begin
1556              CheckBox3.Checked := true;              chkScanTjekkode.Checked := true;
1557              Scanogstjekkoden1.Checked := true;              Scanogstjekkoden1.Checked := true;
1558          end;          end;
1559        end;        end;
# Line 1812  begin Line 1565  begin
1565             BoghandlerStregkode := Stregkode;             BoghandlerStregkode := Stregkode;
1566             BoghandlerTjekkode := '';             BoghandlerTjekkode := '';
1567             PakkeshopText1.Caption := 'Stregkode';             PakkeshopText1.Caption := 'Stregkode';
1568             PakkeshopNulstil.Visible := false;             btnNulstil.Visible := false;
1569             Stregkode := '';             Stregkode := '';
1570             InitScreen();             InitScreen();
1571        end        end
# Line 1824  begin Line 1577  begin
1577             BoghandlerStregkode := Stregkode;             BoghandlerStregkode := Stregkode;
1578             BoghandlerTjekkode := '-1';             BoghandlerTjekkode := '-1';
1579             PakkeshopText1.Caption := 'Stregkode';             PakkeshopText1.Caption := 'Stregkode';
1580             PakkeshopNulstil.Visible := false;             btnNulstil.Visible := false;
1581             Stregkode := '';             Stregkode := '';
1582             InitScreen();             InitScreen();
1583        end        end
# Line 1836  begin Line 1589  begin
1589              PakkeshopStregkode := Stregkode;              PakkeshopStregkode := Stregkode;
1590              BoghandlerStregkode := Stregkode;              BoghandlerStregkode := Stregkode;
1591              PakkeshopText1.Caption := 'Tjekkode';              PakkeshopText1.Caption := 'Tjekkode';
1592  // 20150317: start  
1593              PlaySound(PWideChar(ScannetOkTilTjekkodeLyd));              PlaySound(PWideChar(ScannetOkTilTjekkodeLyd));
1594  // 20150317: slut  
1595             end             end
1596            else            else
1597             begin             begin
1598                List1msg := 'Du skal scanne en stregkode';                VisAlarmSkaerm( 'Du skal scanne en stregkode' );
               ListBox1.Items.Insert(0,List1Msg);  
               //logTekst := RightStr(List1Msg, Length(List1Msg)-10);  
               //SkrivScanningLogFil(logTekst);  
               PlaySound(PWideChar(AlarmLyd));  
               PakkeshopNulstil.Visible := true;  
               MainForm.Color := clRed;  
1599             end;             end;
1600            Stregkode := '';            Stregkode := '';
1601            InitScreen();            InitScreen();
# Line 1864  begin Line 1611  begin
1611                MainForm.Color := HexToTColor(FarvePakkeshoplevering);                MainForm.Color := HexToTColor(FarvePakkeshoplevering);
1612             if (Pakkernormal1.Checked) then             if (Pakkernormal1.Checked) then
1613                MainForm.Color := HexToTColor(FarveNormal);                MainForm.Color := HexToTColor(FarveNormal);
1614             PakkeshopNulstil.Visible := false;             btnNulstil.Visible := false;
1615           end           end
1616          else          else
1617           begin           begin
1618                if (PakkeshopLevering1.Checked) then                if (PakkeshopLevering1.Checked) then
1619                  List1msg := 'Du skal scanne en tjekkode til stregkode ' + PakkeshopStregkode;                  VisAlarmSkaerm('Du skal scanne en tjekkode til stregkode ' + PakkeshopStregkode);
1620                if (Pakkernormal1.Checked) then                if (Pakkernormal1.Checked) then
1621                  List1msg := 'Du skal scanne en tjekkode til stregkode ' + BoghandlerStregkode;                  VisAlarmSkaerm('Du skal scanne en tjekkode til stregkode ' + BoghandlerStregkode);
1622                KommentarST.Caption := List1msg;                  
               ListBox1.Items.Insert(0,List1Msg);  
               //logTekst := RightStr(List1Msg, Length(List1Msg)-10);  
               //SkrivScanningLogFil(logTekst);  
               PlaySound(PWideChar(AlarmLyd));  
               PakkeshopNulstil.Visible := true;  
               MainForm.Color := clRed;  
 // 20150323: start  
1623                StregKode := '';                StregKode := '';
1624                StregkodeST.Caption := StregKode;                StregkodeST.Caption := StregKode;
1625  // 20150323: slut  
1626                exit;                exit;
1627           end;           end;
1628          Stregkode := '';          Stregkode := '';
# Line 1903  begin Line 1643  begin
1643            // Hvis der var sql fejl i opdateringen skal dette fejlmeldes her            // Hvis der var sql fejl i opdateringen skal dette fejlmeldes her
1644            if Rutenummer = 'sql fejl' then            if Rutenummer = 'sql fejl' then
1645            begin   // Her skal komme en alarm og rød skærm            begin   // Her skal komme en alarm og rød skærm
1646               PlaySound(PWideChar(AlarmLyd));               VisAlarmSkaerm( 'SQL fejl: ' + Kommentar );
1647               //List1msg := 'SQL fejl: ' + Kommentar;  
              //ListBox1.Items.Insert(0,List1Msg);  
              MainForm.Color := clRed;  
              //KommentarST.Caption := List1msg;  
              PakkeshopNulstil.Visible := true;  
1648              exit;              exit;
1649            end;            end;
1650            if (Pakkernormal1.Checked or Budlevering1.Checked or PakkeshopLevering1.Checked) then            if (Pakkernormal1.Checked or Budlevering1.Checked or PakkeshopLevering1.Checked) then
# Line 1928  begin Line 1664  begin
1664              if (pakkeErScannet > 0) or (pakkeForkertSted > 0) or (tjekkodemangler > 0) then              if (pakkeErScannet > 0) or (pakkeForkertSted > 0) or (tjekkodemangler > 0) then
1665              begin              begin
1666                PlaySound(PWideChar(AlarmLyd));                PlaySound(PWideChar(AlarmLyd));
1667                PakkeshopNulstil.Visible := true;                btnNulstil.Visible := true;
1668                MainForm.Color := clRed;                MainForm.Color := clRed;
1669              end;              end;
1670           end;           end;
# Line 1943  begin Line 1679  begin
1679              begin              begin
1680                PlaySound(PWideChar(ScannetOkLyd));                PlaySound(PWideChar(ScannetOkLyd));
1681              end;              end;
1682              PakkeshopNulstil.Visible := false;              btnNulstil.Visible := false;
1683            end            end
1684            else if (Returpakkerfradao1.Checked or Returpakkerfraboghandler1.Checked) then            else if (Returpakkerfradao1.Checked or Returpakkerfraboghandler1.Checked) then
1685            begin            begin
# Line 1956  begin Line 1692  begin
1692              begin              begin
1693                PlaySound(PWideChar(ScannetOkLyd));                PlaySound(PWideChar(ScannetOkLyd));
1694              end;              end;
1695              PakkeshopNulstil.Visible := false;              btnNulstil.Visible := false;
1696            end            end
1697            else if Copy(Kommentar,1,8) = 'OPRETTET' then            else if Copy(Kommentar,1,8) = 'OPRETTET' then
1698            begin            begin
1699              List1msg := 'Pakke ' + PakkeshopStregkode + ' skal gemmes på lager indtil data modtages';              VisAlarmSkaerm( 'Pakke ' + PakkeshopStregkode + ' skal gemmes på lager indtil data modtages' );
             ListBox1.Items.Insert(0,List1Msg);  
             MainForm.Color := clRed;  
             PlaySound(PWideChar(AlarmLyd));  
             PakkeshopNulstil.Visible := true;  
1700            end            end
1701            else if Kommentar = StregKode then    // budlevering  til 'Ukendt tur'            else if Kommentar = StregKode then    // budlevering  til 'Ukendt tur'
1702            begin            begin
1703            end            end
1704            else            else
1705            begin            begin
1706              MainForm.Color := clRed;              VisAlarmSkaerm('');
             PlaySound(PWideChar(AlarmLyd));  
             PakkeshopNulstil.Visible := true;  
1707            end;            end;
1708           if not PakkeshopNulstil.Visible then           if not btnNulstil.Visible then
1709            begin            begin
1710  // 20150310: start  
 //            SletStregkodelinieFraListboks2(StregKode);  
 // 20150310: slut  
1711              If (Budlevering1.Checked) then              If (Budlevering1.Checked) then
1712              begin              begin
1713                if Storepakker1.Checked then                if Storepakker1.Checked then
# Line 1993  begin Line 1721  begin
1721                InitLillePakke();                InitLillePakke();
1722              end;              end;
1723            end;            end;
1724  // 20150310: start  
1725            SletStregkodelinieFraListboks2(StregKode);            SletStregkodelinieFraListboks2(StregKode);
1726  // 20150310: slut  
1727            PakkeshopStregkode := '';            PakkeshopStregkode := '';
1728            PakkeshopTjekkode := '';            PakkeshopTjekkode := '';
1729            BoghandlerStregkode := '';            BoghandlerStregkode := '';
# Line 2026  begin Line 1754  begin
1754    
1755    Key := #0;    Key := #0;
1756    
1757  end;  end; //End of OnKeyPress
1758    
1759  procedure TMainForm.SendInfoTilServer(Sted, Scanningtype, Infotype, Info : String);  procedure TMainForm.SendInfoTilServer(Sted, Scanningtype, Infotype, Info : String);
1760  const  const
# Line 2063  end; Line 1791  end;
1791    
1792  procedure TMainForm.SletStregkodelinieFraListboks2(StregKode : String);  procedure TMainForm.SletStregkodelinieFraListboks2(StregKode : String);
1793  var  var
 // 20150309: start  
 //  i:integer;  
1794    i : Integer;    i : Integer;
1795    wrkAntal : String;    wrkAntal : String;
1796    wrkAntalIdag, wrkAntalSenere : Integer;    wrkAntalIdag, wrkAntalSenere : Integer;
1797  // 20150309: slut  
1798    
1799  begin  begin
1800      if Budlevering1.Checked or Pakkeshoplevering1.Checked or Returpakkerfrapakkeshop1.Checked or Pakkernormal1.Checked then      if Budlevering1.Checked or Pakkeshoplevering1.Checked or Returpakkerfrapakkeshop1.Checked or Pakkernormal1.Checked then
# Line 2076  begin Line 1802  begin
1802        for i := ListBox2.items.count-1 downto 0 do        for i := ListBox2.items.count-1 downto 0 do
1803          if pos(StregKode,ListBox2.items[i]) <> 0 then          if pos(StregKode,ListBox2.items[i]) <> 0 then
1804          begin          begin
1805  // 20150309: start  
1806            // Ajourføring af tæller for manglende pakker (scanninger)            // Ajourføring af tæller for manglende pakker (scanninger)
1807            wrkAntal := StaticTextManglendePakker.Caption;            wrkAntal := StaticTextManglendePakker.Caption;
1808            if (pos('/', wrkAntal) > 0) then  // både pakker idag og senere            if (pos('/', wrkAntal) > 0) then  // både pakker idag og senere
# Line 2112  begin Line 1838  begin
1838            begin            begin
1839              StaticTextManglendePakker.Caption := IntToStr(wrkAntalIdag);              StaticTextManglendePakker.Caption := IntToStr(wrkAntalIdag);
1840            end;            end;
 // 20150309: slut  
1841    
 // 20150310: start  
1842            if (Scanningtype = '1') then            if (Scanningtype = '1') then
1843            begin            begin
1844              PanelManglendePakker1.Caption := IntToStr(wrkAntalIdag + wrkAntalSenere);              PanelManglendePakker1.Caption := IntToStr(wrkAntalIdag + wrkAntalSenere);
# Line 2219  begin Line 1943  begin
1943  end;  end;
1944    
1945  procedure TMainForm.InitBladhus();  procedure TMainForm.InitBladhus();
 var  
   LogFilnavn : string;  
1946    
1947  begin  begin
1948    Altidprintepakkelabel1.Enabled := false;    Altidprintepakkelabel1.Enabled := false;
# Line 2297  begin Line 2019  begin
2019              Testprinter1.Visible := true;              Testprinter1.Visible := true;
2020              Smpakker1.Enabled := true;              Smpakker1.Enabled := true;
2021              Storepakker1.Enabled := true;              Storepakker1.Enabled := true;
2022              RadioButton1.Enabled := true;              radioStorPakke.Enabled := true;
2023              RadioButton2.Enabled := true;              radioLillePakke.Enabled := true;
2024              DownloadButton01.Enabled := false;     // kontrolfil bruges ikke her              DownloadButton01.Enabled := false;     // kontrolfil bruges ikke her
2025              OpdaterListenButton01.Enabled := true;              OpdaterListenButton01.Enabled := true;
2026              IdFTP1.Passive := true;              IdFTP1.Passive := true;
# Line 2335  begin Line 2057  begin
2057              Testprinter1.Visible := true;              Testprinter1.Visible := true;
2058              Smpakker1.Enabled := true;              Smpakker1.Enabled := true;
2059              Storepakker1.Enabled := true;              Storepakker1.Enabled := true;
2060              RadioButton1.Enabled := true;              radioStorPakke.Enabled := true;
2061              RadioButton2.Enabled := true;              radioLillePakke.Enabled := true;
2062              DownloadButton01.Enabled := false;    // kontrolfil bruges ikke her              DownloadButton01.Enabled := false;    // kontrolfil bruges ikke her
2063              OpdaterListenButton01.Enabled := true;              OpdaterListenButton01.Enabled := true;
2064              IdFTP1.Passive := true;              IdFTP1.Passive := true;
# Line 2354  var Line 2076  var
2076    URLStr : String;    URLStr : String;
2077    pakkestorrelse : String;    pakkestorrelse : String;
2078    PrintNyLabelInteger : Integer;    PrintNyLabelInteger : Integer;
2079    
2080      PakkeshopLabel: TPakkeshopLabel;
2081  begin  begin
2082    if RadioButton1.Checked then    if radioStorPakke.Checked then
2083    begin    begin
2084      pakkestorrelse := 'Stor';      pakkestorrelse := 'Stor';
2085    end;    end;
2086    if RadioButton2.Checked then    if radioLillePakke.Checked then
2087    begin    begin
2088      pakkestorrelse := 'Lille';      pakkestorrelse := 'Lille';
2089    end;    end;
2090    
2091    
2092    if Pakkernormal1.Checked then    if Pakkernormal1.Checked then
2093    begin    begin
2094       if (BoghandlerTjekkode = '') then       if (BoghandlerTjekkode = '') then
# Line 2391  begin Line 2117  begin
2117    begin    begin
2118       URLStr := Format(UrlReturPakkeshop,[Sted, PakkeNr]);       URLStr := Format(UrlReturPakkeshop,[Sted, PakkeNr]);
2119    end    end
2120      else if menuIndlevering.Checked then
2121      begin
2122        URLStr := Format(UrlIndleveringsPakke,[Sted, PakkeNr]);
2123      end
2124    else    else
2125    begin    begin
2126      exit;      exit;
# Line 2425  begin Line 2155  begin
2155        BoghandlerNavn := XMLDocument1.ChildNodes.FindNode('PakkeKontrol').ChildNodes.FindNode('PakkeshopNr').Text;        BoghandlerNavn := XMLDocument1.ChildNodes.FindNode('PakkeKontrol').ChildNodes.FindNode('PakkeshopNr').Text;
2156        BoghandlerNavn := BoghandlerNavn + ' ' + XMLDocument1.ChildNodes.FindNode('PakkeKontrol').ChildNodes.FindNode('PakkeshopNavn').Text;        BoghandlerNavn := BoghandlerNavn + ' ' + XMLDocument1.ChildNodes.FindNode('PakkeKontrol').ChildNodes.FindNode('PakkeshopNavn').Text;
2157        PrintNyLabel := False;        PrintNyLabel := False;
2158  // 20150310: start  
2159        if Pakkeshoplevering1.Checked then        if Pakkeshoplevering1.Checked then
2160        begin        begin
 // 20150310: slut  
2161          try          try
2162            PrintNyLabelInteger := StrToInt(XMLDocument1.ChildNodes.FindNode('PakkeKontrol').ChildNodes.FindNode('PakkeshopPrintPakkeLabel').Text);            PrintNyLabelInteger := StrToInt(XMLDocument1.ChildNodes.FindNode('PakkeKontrol').ChildNodes.FindNode('PakkeshopPrintPakkeLabel').Text);
2163          except on e:exception do          except on e:exception do
# Line 2438  begin Line 2167  begin
2167          begin          begin
2168            PrintNyLabel := True;            PrintNyLabel := True;
2169          end;          end;
 // 20150310: start  
2170        end;        end;
 // 20150310: slut  
2171       end       end
2172        else if menuIndlevering.Checked then
2173        begin
2174    
2175    
2176    
2177    
2178         Kommentar := XMLDocument1.ChildNodes.FindNode('PakkeKontrol').ChildNodes.FindNode('Stregkodematch').Text;
2179         if (Kommentar = 'Ok') then
2180         begin
2181           PrintNyLabel := True; //Indleveringskode vil ALTID udskrive label
2182           PakkeshopLabel := TPakkeshopLabel.Create( XMLDocument1 ); //Opret struct og parse xml doc
2183    
2184           PrintPakkeshopLabel( PakkeshopLabel );
2185    
2186         end;
2187    
2188    
2189        end
2190      else      else
2191       begin       begin
2192        RuteNummer := XMLDocument1.ChildNodes.FindNode('BogpakkeKontrol').ChildNodes.FindNode('TurId').Text;        RuteNummer := XMLDocument1.ChildNodes.FindNode('BogpakkeKontrol').ChildNodes.FindNode('TurId').Text;
# Line 2474  begin Line 2219  begin
2219          PrintNyLabel := True;          PrintNyLabel := True;
2220        end;        end;
2221      end;      end;
2222    
2223    
2224      if (BladhusSted > 00) and (BladhusSted < Length(BladhusStedNavn)) then      if (BladhusSted > 00) and (BladhusSted < Length(BladhusStedNavn)) then
2225      begin      begin
2226        if (Leveringssted <> BladhusStedKode[BladhusSted]) and (BladhusStedKode[BladhusSted] <> 'DBK') then        if (Leveringssted <> BladhusStedKode[BladhusSted]) and (BladhusStedKode[BladhusSted] <> 'DBK') then
# Line 2514  begin Line 2261  begin
2261    if Pakkeshoplevering1.Checked then    if Pakkeshoplevering1.Checked then
2262      List1msg := List1msg + PakkeshopStregkode + ' ' + PakkeshopTjekkode + '; ' + KommentarST.Caption + '; ';      List1msg := List1msg + PakkeshopStregkode + ' ' + PakkeshopTjekkode + '; ' + KommentarST.Caption + '; ';
2263    List1Pakkestorrelse := '';    List1Pakkestorrelse := '';
2264    if RadioButton1.Checked then    if radioStorPakke.Checked then
2265    begin    begin
2266      List1Pakkestorrelse := 'Stor pakke';      List1Pakkestorrelse := 'Stor pakke';
2267    end;    end;
2268    if RadioButton2.Checked then    if radioLillePakke.Checked then
2269    begin    begin
2270      List1Pakkestorrelse := 'Lille pakke';      List1Pakkestorrelse := 'Lille pakke';
2271    end;    end;
# Line 2540  begin Line 2287  begin
2287    if Budlevering1.Checked then    if Budlevering1.Checked then
2288    begin    begin
2289       List1msg := TimeToStr(now) + '; ' + Kommentar + '; ' + BoghandlerNavn;       List1msg := TimeToStr(now) + '; ' + Kommentar + '; ' + BoghandlerNavn;
2290        if (RadioButton1.Checked) then        if (radioStorPakke.Checked) then
2291        begin        begin
2292          List1msg := List1msg + '; Stor pakke';          List1msg := List1msg + '; Stor pakke';
2293        end;        end;
2294        if (RadioButton2.Checked) then        if (radioLillePakke.Checked) then
2295        begin        begin
2296          List1msg := List1msg + '; Lille pakke';          List1msg := List1msg + '; Lille pakke';
2297        end;        end;
# Line 2601  begin Line 2348  begin
2348    end;    end;
2349    pakkeForkertSted := pos('burde være hos', Kommentar);    pakkeForkertSted := pos('burde være hos', Kommentar);
2350    
2351  // 20150306: start  
2352  //  if Sprgefterboghandlernummer1.Enabled and CheckBox1.Checked and (RuteNummer = 'Ukendt') or (RuteNummer = 'Ukendt tur') or (RuteNummer = 'Retur ukendt') or (pakkeErScannet > 0) or (pakkeForkertSted > 0) then    if Sprgefterboghandlernummer1.Enabled and chkSporgEfterKunde.Checked and ( (RuteNummer = 'Ukendt') or (RuteNummer = 'Ukendt tur') or (RuteNummer = 'Retur ukendt') or (pakkeErScannet > 0) or (pakkeForkertSted > 0) ) then
2353    if Sprgefterboghandlernummer1.Enabled and CheckBox1.Checked and ( (RuteNummer = 'Ukendt') or (RuteNummer = 'Ukendt tur') or (RuteNummer = 'Retur ukendt') or (pakkeErScannet > 0) or (pakkeForkertSted > 0) ) then  
 // 20150306: slut  
2354    begin    begin
2355        if (RuteNummer = 'Ukendt') then        if (RuteNummer = 'Ukendt') then
2356        begin        begin
# Line 2631  begin Line 2377  begin
2377       if (BoghandlerNavn = 'Ukendt pakke') then       if (BoghandlerNavn = 'Ukendt pakke') then
2378       begin       begin
2379          PrintNyLabel := false;          PrintNyLabel := false;
2380  // 20150306: start  
 //        PlaySound(PWideChar(AlarmLyd));  
2381          PlaySound(PWideChar(AlarmLyd));          PlaySound(PWideChar(AlarmLyd));
2382          MainForm.Color := clRed;          MainForm.Color := clRed;
2383          PakkeshopNulstil.Visible := true;          btnNulstil.Visible := true;
2384  // 20150306: slut  
2385       end       end
2386       else       else
2387       begin       begin
# Line 2652  begin Line 2397  begin
2397            ListBox1.Items.Insert(0,List1Msg);            ListBox1.Items.Insert(0,List1Msg);
2398            logTekst := RightStr(List1Msg, Length(List1Msg)-10);            logTekst := RightStr(List1Msg, Length(List1Msg)-10);
2399            SkrivScanningLogFil(logTekst);            SkrivScanningLogFil(logTekst);
2400  // 20150213: start  
2401            if (PrinterNavn = 'Ingen') then            if (PrinterNavn = 'Ingen') then
2402            begin            begin
2403               PrintNyLabel := false;               PrintNyLabel := false;
2404            end;            end;
2405  // 20150313: slut  
 // 20150306: start  
 //          PlaySound(PWideChar(AlarmLyd));  
2406            if (PrintNyLabel = false) then  // Hvis vi ikke printer label skal vi vise en 'rød skærm' alarm            if (PrintNyLabel = false) then  // Hvis vi ikke printer label skal vi vise en 'rød skærm' alarm
2407            begin            begin
2408              PlaySound(PWideChar(AlarmLyd));              PlaySound(PWideChar(AlarmLyd));
2409              MainForm.Color := clRed;              MainForm.Color := clRed;
2410              PakkeshopNulstil.Visible := true;              btnNulstil.Visible := true;
2411            end;            end;
2412  // 20150306: slut  
2413         end;         end;
2414         kontrolKoreliste := TjekKoreliste(RuteNummer, Koreliste);         kontrolKoreliste := TjekKoreliste(RuteNummer, Koreliste);
2415         if (kontrolKoreliste <> RuteNummer) then         if (kontrolKoreliste <> RuteNummer) then
# Line 2685  begin Line 2428  begin
2428            ListBox1.Items.Insert(0,List1Msg);            ListBox1.Items.Insert(0,List1Msg);
2429            logTekst := RightStr(List1Msg, Length(List1Msg)-10);            logTekst := RightStr(List1Msg, Length(List1Msg)-10);
2430            SkrivScanningLogFil(logTekst);            SkrivScanningLogFil(logTekst);
2431  // 20150306: start  
 //          PlaySound(PWideChar(AlarmLyd));  
2432            if (PrintNyLabel = false) then  // Hvis vi ikke printer label skal vi vise en 'rød skærm' alarm            if (PrintNyLabel = false) then  // Hvis vi ikke printer label skal vi vise en 'rød skærm' alarm
2433            begin            begin
2434              PlaySound(PWideChar(AlarmLyd));              PlaySound(PWideChar(AlarmLyd));
2435              MainForm.Color := clRed;              MainForm.Color := clRed;
2436              PakkeshopNulstil.Visible := true;              btnNulstil.Visible := true;
2437            end;            end;
2438  // 20150306: slut  
 // 20150306: start  
 //       end  
 //       else  
 //       begin  
2439         end;         end;
2440       end;       end;
2441    
# Line 2719  begin Line 2457  begin
2457                end;                end;
2458              end;              end;
2459        01 :  begin;        01 :  begin;
2460               if PrintNyLabel and ( (kontrolKoreliste <> '') and (kontrolKoreliste <> RuteNummer) ) or (RuteNummer = 'Rutenr') then               if PrintNyLabel or ( (kontrolKoreliste <> '') and (kontrolKoreliste <> RuteNummer) ) or (RuteNummer = 'Rutenr') then
2461                    // Ovenstående test er lidt speciel fordi der i programmet nogle steder er byttet rundt på rute og køreliste                    // Ovenstående test er lidt speciel fordi der i programmet nogle steder er byttet rundt på rute og køreliste
2462                    // Meningen er at der kun skal printes hvis der er forskel i kørelisterne eller ruterne - eller vi kommer fra test funktionen (Rutenr = 'Rutenr')                    // Meningen er at der kun skal printes hvis der er forskel i kørelisterne eller ruterne - eller vi kommer fra test funktionen (Rutenr = 'Rutenr')
2463                begin                begin
# Line 2733  begin Line 2471  begin
2471                end;                end;
2472              end;              end;
2473        03 :  begin;        03 :  begin;
2474               if PrintNyLabel and ( (kontrolKoreliste <> '') and (kontrolKoreliste <> RuteNummer) ) or (RuteNummer = 'Rutenr') then               if PrintNyLabel or ( (kontrolKoreliste <> '') and (kontrolKoreliste <> RuteNummer) ) or (RuteNummer = 'Rutenr') then
2475                    // Ovenstående test er lidt speciel fordi der i programmet nogle steder er byttet rundt på rute og køreliste                    // Ovenstående test er lidt speciel fordi der i programmet nogle steder er byttet rundt på rute og køreliste
2476                    // Meningen er at der kun skal printes hvis der er forskel i kørelisterne eller ruterne - eller vi kommer fra test funktionen (Rutenr = 'Rutenr')                    // Meningen er at der kun skal printes hvis der er forskel i kørelisterne eller ruterne - eller vi kommer fra test funktionen (Rutenr = 'Rutenr')
2477               begin               begin
# Line 2757  begin Line 2495  begin
2495      exit;      exit;
2496    end;    end;
2497    
2498    if Budlevering1.Checked or ( Sprgefterboghandlernummer1.Enabled and CheckBox1.Checked and ( (RuteNummer = 'Ukendt') or (RuteNummer = 'Ukendt tur') or (RuteNummer = 'Retur ukendt') or (pakkeErScannet > 0) ) and (printNyLabel = false) ) then    if Budlevering1.Checked or ( Sprgefterboghandlernummer1.Enabled and chkSporgEfterKunde.Checked and ( (RuteNummer = 'Ukendt') or (RuteNummer = 'Ukendt tur') or (RuteNummer = 'Retur ukendt') or (pakkeErScannet > 0) ) and (printNyLabel = false) ) then
2499    begin    begin
2500    end    end
2501    else    else
# Line 2832  begin Line 2570  begin
2570          Canvas.TextOut(XPosSorteringsfelt2,YPosSorteringsfelt2, Leveringssted);   // sorteringsoplysning 2          Canvas.TextOut(XPosSorteringsfelt2,YPosSorteringsfelt2, Leveringssted);   // sorteringsoplysning 2
2571        end;        end;
2572        Canvas.Font.Size := FontSizeKommentar;        Canvas.Font.Size := FontSizeKommentar;
2573    
2574        Kommentar := StringReplace(Kommentar, #$A, ' - ', [rfReplaceAll, rfIgnoreCase]);        Kommentar := StringReplace(Kommentar, #$A, ' - ', [rfReplaceAll, rfIgnoreCase]);
 // 20150304: start  
2575        Kommentar := StringReplace(Kommentar, 'PAKKE ER SCANNET', '', [rfReplaceAll, rfIgnoreCase]);        Kommentar := StringReplace(Kommentar, 'PAKKE ER SCANNET', '', [rfReplaceAll, rfIgnoreCase]);
2576  // 20150304: slut  
2577        Canvas.TextOut(XPosKommentar,YPosKommentar, Kommentar);  // Kan ikke lave linieskift (se tidligere kommentar om samme)        Canvas.TextOut(XPosKommentar,YPosKommentar, Kommentar);  // Kan ikke lave linieskift (se tidligere kommentar om samme)
2578        if SmsKode <> '' then        if SmsKode <> '' then
2579        begin        begin
# Line 2849  begin Line 2587  begin
2587  end;  end;
2588    
2589    
2590  procedure TMainForm.RadioButton1Click(Sender: TObject);  procedure TMainForm.radioStorPakkeClick(Sender: TObject);
2591  begin  begin
2592      Storepakker1.Checked := true;      Storepakker1.Checked := true;
2593      RadioButton1.Checked := true;      radioStorPakke.Checked := true;
2594  end;  end;
2595    
2596  procedure TMainForm.RadioButton2Click(Sender: TObject);  procedure TMainForm.radioLillePakkeClick(Sender: TObject);
2597  begin  begin
2598      Smpakker1.Checked := true;      Smpakker1.Checked := true;
2599      RadioButton2.Checked := true;      radioLillePakke.Checked := true;
2600  end;  end;
2601    
2602    
2603  procedure TMainForm.CheckBox1Click(Sender: TObject);  procedure TMainForm.chkSporgEfterKundeClick(Sender: TObject);
2604  begin  begin
2605    if CheckBox1.Checked then    if chkSporgEfterKunde.Checked then
2606    begin    begin
2607       Sprgefterboghandlernummer1.Checked := true;       Sprgefterboghandlernummer1.Checked := true;
2608    end    end
# Line 2888  begin Line 2626  begin
2626    
2627  end;  end;
2628    
2629  procedure TMainForm.CheckBox3Click(Sender: TObject);  procedure TMainForm.chkScanTjekkodeClick(Sender: TObject);
2630  begin  begin
2631    if CheckBox3.Checked then    if chkScanTjekkode.Checked then
2632    begin    begin
2633       Scanogstjekkoden1.Checked := true;       Scanogstjekkoden1.Checked := true;
2634    end    end
# Line 2912  begin Line 2650  begin
2650      Automatiskvalg1.Checked := false;      Automatiskvalg1.Checked := false;
2651      PanelValgA.Color := clBtnFace;      PanelValgA.Color := clBtnFace;
2652      PanelValgA.Font.Color := clWindowText;      PanelValgA.Font.Color := clWindowText;
2653  // 20150317: start  
2654      if (SpecialVersionSted = '01')      if (SpecialVersionSted = '01')
2655      or (SpecialVersionSted = '02')        or (SpecialVersionSted = '02')
2656      or (SpecialVersionSted = '03')        or (SpecialVersionSted = '03')
2657      or (SpecialVersionSted = '04') then        or (SpecialVersionSted = '04') then
2658      begin      begin
2659        // her skal vi også disable knappen for 01, 02, 03 og 04 (NS, BK, FD og DBK)        // her skal vi også disable knappen for 01, 02, 03 og 04 (NS, BK, FD og DBK)
2660        PanelValgA.Enabled := false;        PanelValgA.Enabled := false;
# Line 3223  begin Line 2961  begin
2961            end;            end;
2962          end;          end;
2963    
2964  // 20150330: start  
2965          // Tjekker UrlEKLoverforselPakkeshop          // Tjekker UrlEKLoverforselPakkeshop
2966          if PanelValg5.Enabled = true then          if PanelValg5.Enabled = true then
2967          begin          begin
# Line 3251  begin Line 2989  begin
2989              end;              end;
2990            end;            end;
2991          end;          end;
2992  // 20150330: slut  
2993    
2994          // Tjekker UrlFindPakketype          // Tjekker UrlFindPakketype
2995          if CheckUrl(UrlFindPakketype) then          if CheckUrl(UrlFindPakketype) then
# Line 3342  begin Line 3080  begin
3080      repeat      repeat
3081        if (SR.Attr <> faDirectory) then        if (SR.Attr <> faDirectory) then
3082        begin        begin
3083    
3084          dt := fileDateToDateTime(SR.Time);  // finder filens timestamp for seneste ændring          dt := fileDateToDateTime(SR.Time);  // finder filens timestamp for seneste ændring
3085          CreationTime := SR.FindData.ftCreationTime;  // finder filens timestamp for oprettelse          CreationTime := SR.FindData.ftCreationTime;  // finder filens timestamp for oprettelse
3086          dtCreation := FileTime2DateTime(CreationTime);   // finder filens timestamp for oprettelse          dtCreation := FileTime2DateTime(CreationTime);   // finder filens timestamp for oprettelse
# Line 3381  begin Line 3120  begin
3120    end;    end;
3121  end;  end;
3122    
3123  procedure TMainForm.PakkeshopNulstilClick(Sender: TObject);  procedure TMainForm.btnNulstilClick(Sender: TObject);
3124  begin  begin
3125    PakkeshopStregkode := '';    PakkeshopStregkode := '';
3126    PakkeshopTjekkode := '';    PakkeshopTjekkode := '';
3127    PakkeshopNulstil.Visible := false;    btnNulstil.Visible := false;
3128    PakkeshopText1.Caption := 'Stregkode';    PakkeshopText1.Caption := 'Stregkode';
3129    BoghandlerStregkode := '';    BoghandlerStregkode := '';
3130    BoghandlerTjekkode := '';    BoghandlerTjekkode := '';
# Line 3514  var Line 3253  var
3253    BoghandlerNavn : String;    BoghandlerNavn : String;
3254    Koreliste : String;    Koreliste : String;
3255    Falsk : Boolean;    Falsk : Boolean;
   Sand : Boolean;  
3256    SmsKode : String;    SmsKode : String;
3257    DBKbane : String;    DBKbane : String;
3258    Leveringssted : String;    Leveringssted : String;
# Line 3536  begin Line 3274  begin
3274      // Her kommer en alarm og rød skærm      // Her kommer en alarm og rød skærm
3275      PlaySound(PWideChar(AlarmLyd));      PlaySound(PWideChar(AlarmLyd));
3276      MainForm.Color := clRed;      MainForm.Color := clRed;
3277      PakkeshopNulstil.Visible := true;      btnNulstil.Visible := true;
3278    end    end
3279    else    else
3280    begin    begin
3281      Falsk := False;      Falsk := False;
3282      Sand := True;  
3283      HentPakkeInfoFraServer(Sted,'111111111100000', RuteNummer, Kommentar, BoghandlerNavn, Koreliste, SmsKode, DBKbane, Leveringssted, Falsk, '');      HentPakkeInfoFraServer(Sted,'111111111100000', RuteNummer, Kommentar, BoghandlerNavn, Koreliste, SmsKode, DBKbane, Leveringssted, Falsk, '');
3284      UpdateScreen(RuteNummer, Kommentar, BoghandlerNavn, Koreliste, '');      UpdateScreen(RuteNummer, Kommentar, BoghandlerNavn, Koreliste, '');
3285      SmsKode := '999999';      SmsKode := '999999';
# Line 3561  var Line 3299  var
3299    BoghandlerNavn : String;    BoghandlerNavn : String;
3300    Koreliste : String;    Koreliste : String;
3301    Falsk : Boolean;    Falsk : Boolean;
   Sand : Boolean;  
3302    SmsKode : String;    SmsKode : String;
3303    DBKbane : String;    DBKbane : String;
3304    Leveringssted : String;    Leveringssted : String;
# Line 3570  begin Line 3307  begin
3307    Kommentar := '***** Kommentar *****';    Kommentar := '***** Kommentar *****';
3308    BoghandlerNavn := 'Modtagernavn';    BoghandlerNavn := 'Modtagernavn';
3309    Falsk := False;    Falsk := False;
3310    Sand := True;  
3311    
3312    if (Printer.Printers.Count = 0) then    if (Printer.Printers.Count = 0) then
3313    begin    begin
# Line 3643  var Line 3380  var
3380   tekst, filversion : String;   tekst, filversion : String;
3381  begin  begin
3382    
3383    filversion := Sto_GetFmtFileVersion('','');    filversion := Sto_GetFmtFileVersion('');
3384    tekst := 'Program til indscanning af pakker'+crlf+'Version '+filversion+crlf+crlf+'Udviklet af it afdelingen, DAO';    tekst := 'Program til indscanning af pakker'+crlf+'Version '+filversion+crlf+crlf+'Udviklet af it afdelingen, DAO';
3385    
3386    tekst := tekst+crlf+crlf;    tekst := tekst+crlf+crlf;
# Line 3778  begin Line 3515  begin
3515    end;    end;
3516  end;  end;
3517    
3518    procedure TMainForm.menuIndleveringClick(Sender: TObject);
3519    begin
3520      Scanningtype := '7';
3521      NulstilAutomatiskValg();
3522      InitIndleveringskode();
3523    end;
3524    
3525  procedure TMainForm.Sprgefterboghandlernummer1Click(Sender: TObject);  procedure TMainForm.Sprgefterboghandlernummer1Click(Sender: TObject);
3526  begin  begin
3527    
3528    if Sprgefterboghandlernummer1.Checked then    if Sprgefterboghandlernummer1.Checked then
3529    begin    begin
3530       CheckBox1.Checked := true;       chkSporgEfterKunde.Checked := true;
3531    end    end
3532    else    else
3533    begin    begin
3534       CheckBox1.Checked := false;       chkSporgEfterKunde.Checked := false;
3535    end;    end;
3536    
3537    
# Line 3810  end; Line 3554  end;
3554  procedure TMainForm.InitNatxpresslevering();  procedure TMainForm.InitNatxpresslevering();
3555  begin  begin
3556        AutomatiskTjekkodeStyring1.Enabled := true;        AutomatiskTjekkodeStyring1.Enabled := true;
3557        PakkeshopNulstil.Visible := false;        btnNulstil.Visible := false;
3558        Pakkernormal1.Checked := true;        Pakkernormal1.Checked := true;
3559        InitForm(FarveNormal,TitelNormal,UrlNormal);        InitForm(FarveNormal,TitelNormal,UrlNormal);
3560        PanelValg1.Color := clGreen;        PanelValg1.Color := clGreen;
3561        PanelValg1.Font.Color := clWhite;        PanelValg1.Font.Color := clWhite;
3562        CheckBox1.Enabled := true;  
3563        chkAltidPrintLabel.Enabled := true;        chkAltidPrintLabel.Enabled := true;
3564        Altidprintepakkelabel1.Enabled := true;        Altidprintepakkelabel1.Enabled := true;
3565        Altidprintepakkelabel1.Checked := false;        Altidprintepakkelabel1.Checked := false;
3566        chkAltidPrintLabel.Checked := false;        chkAltidPrintLabel.Checked := false;
3567        Sprgefterboghandlernummer1.Checked := false;        Sprgefterboghandlernummer1.Checked := false;
3568        CheckBox1.Checked := false;        chkSporgEfterKunde.Checked := false;
3569        Sprgefterboghandlernummer1.Enabled := true;        Sprgefterboghandlernummer1.Enabled := true;
3570        Smpakker1.Enabled := false;        Smpakker1.Enabled := false;
3571        Storepakker1.Enabled := false;        Storepakker1.Enabled := false;
3572        RadioButton1.Enabled := false;        radioStorPakke.Enabled := false;
3573        RadioButton2.Enabled := false;        radioLillePakke.Enabled := false;
3574        ListBox1.Visible := true;        ListBox1.Visible := true;
3575        OpdaterListenButton01.Enabled := true;        OpdaterListenButton01.Enabled := true;
3576        EKLoverforsel.Enabled := true;        EKLoverforsel.Enabled := true;
# Line 3843  procedure TMainForm.InitReturFraDao(); Line 3587  procedure TMainForm.InitReturFraDao();
3587  begin  begin
3588        AutomatiskTjekkodeStyring1.Enabled := false;        AutomatiskTjekkodeStyring1.Enabled := false;
3589        ReturpakkerfraDAO1.Checked := true;        ReturpakkerfraDAO1.Checked := true;
3590        PakkeshopNulstil.Visible := false;        btnNulstil.Visible := false;
3591        InitForm(FarveReturDAO,TitelReturDAO,UrlReturDAO);        InitForm(FarveReturDAO,TitelReturDAO,UrlReturDAO);
3592        PanelValg2.Color := clGreen;        PanelValg2.Color := clGreen;
3593        PanelValg2.Font.Color := clWhite;        PanelValg2.Font.Color := clWhite;
3594        CheckBox1.Enabled := false;  
3595        chkAltidPrintLabel.Enabled := false;        chkAltidPrintLabel.Enabled := false;
3596        Altidprintepakkelabel1.Enabled := false;        Altidprintepakkelabel1.Enabled := false;
3597    
3598        Altidprintepakkelabel1.Checked := false;        Altidprintepakkelabel1.Checked := false;
3599        Sprgefterboghandlernummer1.Checked := false;        Sprgefterboghandlernummer1.Checked := false;
3600        CheckBox1.Checked := false;        chkSporgEfterKunde.Checked := false;
3601        Sprgefterboghandlernummer1.Enabled := false;        Sprgefterboghandlernummer1.Enabled := false;
3602        Smpakker1.Enabled := true;        Smpakker1.Enabled := true;
3603        Storepakker1.Enabled := true;        Storepakker1.Enabled := true;
3604        RadioButton1.Enabled := true;        radioStorPakke.Enabled := true;
3605        RadioButton2.Enabled := true;        radioLillePakke.Enabled := true;
3606        ListBox1.Visible := true;        ListBox1.Visible := true;
3607        ListBox1.Items.Clear;        ListBox1.Items.Clear;
3608        ListBox2.Items.Clear;        ListBox2.Items.Clear;
# Line 3870  procedure TMainForm.InitReturFraKunde(); Line 3614  procedure TMainForm.InitReturFraKunde();
3614  begin  begin
3615        AutomatiskTjekkodeStyring1.Enabled := false;        AutomatiskTjekkodeStyring1.Enabled := false;
3616        Returpakkerfraboghandler1.Checked := true;        Returpakkerfraboghandler1.Checked := true;
3617        PakkeshopNulstil.Visible := false;        btnNulstil.Visible := false;
3618        InitForm(FarveReturBoghandler,TitelReturBoghandler,UrlReturBoghandler);        InitForm(FarveReturBoghandler,TitelReturBoghandler,UrlReturBoghandler);
3619        PanelValg3.Color := clGreen;        PanelValg3.Color := clGreen;
3620        PanelValg3.Font.Color := clWhite;        PanelValg3.Font.Color := clWhite;
3621        CheckBox1.Enabled := false;  
3622        chkAltidPrintLabel.Enabled := false;        chkAltidPrintLabel.Enabled := false;
3623        Altidprintepakkelabel1.Enabled := false;        Altidprintepakkelabel1.Enabled := false;
3624        Altidprintepakkelabel1.Checked := false;        Altidprintepakkelabel1.Checked := false;
3625        Sprgefterboghandlernummer1.Checked := false;        Sprgefterboghandlernummer1.Checked := false;
3626        CheckBox1.Checked := false;        chkSporgEfterKunde.Checked := false;
3627        Sprgefterboghandlernummer1.Enabled := false;        Sprgefterboghandlernummer1.Enabled := false;
3628        Smpakker1.Enabled := true;        Smpakker1.Enabled := true;
3629        Storepakker1.Enabled := true;        Storepakker1.Enabled := true;
3630        RadioButton1.Enabled := true;        radioStorPakke.Enabled := true;
3631        RadioButton2.Enabled := true;        radioLillePakke.Enabled := true;
3632        ListBox1.Visible := true;        ListBox1.Visible := true;
3633        ListBox1.Items.Clear;        ListBox1.Items.Clear;
3634        ListBox2.Items.Clear;        ListBox2.Items.Clear;
# Line 3896  procedure TMainForm.InitDirektelevering( Line 3640  procedure TMainForm.InitDirektelevering(
3640  begin  begin
3641        AutomatiskTjekkodeStyring1.Enabled := false;        AutomatiskTjekkodeStyring1.Enabled := false;
3642        Budlevering1.Checked := true;        Budlevering1.Checked := true;
3643        PakkeshopNulstil.Visible := false;        btnNulstil.Visible := false;
3644        InitForm(FarveBudlevering,TitelBudlevering,UrlBudlevering);        InitForm(FarveBudlevering,TitelBudlevering,UrlBudlevering);
3645        PanelValg4.Color := clGreen;        PanelValg4.Color := clGreen;
3646        PanelValg4.Font.Color := clWhite;        PanelValg4.Font.Color := clWhite;
3647        CheckBox1.Enabled := false;  
3648        chkAltidPrintLabel.Enabled := false;        chkAltidPrintLabel.Enabled := false;
3649        Altidprintepakkelabel1.Enabled := false;        Altidprintepakkelabel1.Enabled := false;
3650    
3651        Altidprintepakkelabel1.Checked := false;        Altidprintepakkelabel1.Checked := false;
3652        Sprgefterboghandlernummer1.Checked := false;        Sprgefterboghandlernummer1.Checked := false;
3653        CheckBox1.Checked := false;        chkSporgEfterKunde.Checked := false;
3654        Sprgefterboghandlernummer1.Enabled := false;        Sprgefterboghandlernummer1.Enabled := false;
3655        Smpakker1.Enabled := true;        Smpakker1.Enabled := true;
3656        Storepakker1.Enabled := true;        Storepakker1.Enabled := true;
3657        RadioButton1.Enabled := true;        radioStorPakke.Enabled := true;
3658        RadioButton2.Enabled := true;        radioLillePakke.Enabled := true;
3659        ListBox1.Visible := true;        ListBox1.Visible := true;
3660        ListBox1.Items.Clear;        ListBox1.Items.Clear;
3661        DownloadButton01.Enabled := false;        DownloadButton01.Enabled := false;
# Line 3932  procedure TMainForm.InitPakkeshopleverin Line 3676  procedure TMainForm.InitPakkeshopleverin
3676  begin  begin
3677        AutomatiskTjekkodeStyring1.Enabled := true;        AutomatiskTjekkodeStyring1.Enabled := true;
3678        Pakkeshoplevering1.Checked := true;        Pakkeshoplevering1.Checked := true;
3679        PakkeshopNulstil.Visible := false;        btnNulstil.Visible := false;
3680        InitForm(FarvePakkeshoplevering,TitelPakkeshoplevering,UrlPakkeshoplevering);        InitForm(FarvePakkeshoplevering,TitelPakkeshoplevering,UrlPakkeshoplevering);
3681        PanelValg5.Color := clGreen;        PanelValg5.Color := clGreen;
3682        PanelValg5.Font.Color := clWhite;        PanelValg5.Font.Color := clWhite;
3683        CheckBox1.Enabled := false;  
3684        chkAltidPrintLabel.Enabled := false;        chkAltidPrintLabel.Enabled := false;
3685        Altidprintepakkelabel1.Enabled := false;        Altidprintepakkelabel1.Enabled := false;
3686    
3687        Altidprintepakkelabel1.Checked := false;        Altidprintepakkelabel1.Checked := false;
3688        Sprgefterboghandlernummer1.Checked := false;        Sprgefterboghandlernummer1.Checked := false;
3689        CheckBox1.Checked := false;        chkSporgEfterKunde.Checked := false;
3690        Sprgefterboghandlernummer1.Enabled := false;        Sprgefterboghandlernummer1.Enabled := false;
3691        Smpakker1.Enabled := false;        Smpakker1.Enabled := false;
3692        Storepakker1.Enabled := false;        Storepakker1.Enabled := false;
3693        RadioButton1.Enabled := false;        radioStorPakke.Enabled := false;
3694        RadioButton2.Enabled := false;        radioLillePakke.Enabled := false;
3695        ListBox1.Visible := true;        ListBox1.Visible := true;
3696        ListBox1.Items.Clear;        ListBox1.Items.Clear;
3697        DownloadButton01.Enabled := false;        DownloadButton01.Enabled := false;
3698        OpdaterListenButton01.Enabled := true;        OpdaterListenButton01.Enabled := true;
3699  // 20150330: start  
 //      EKLoverforsel.Enabled := false;  
3700        EKLoverforsel.Enabled := true;        EKLoverforsel.Enabled := true;
3701  // 20150330: slut  
3702        InitLillePakke();        InitLillePakke();
3703        IndlesScanningLogFil();        IndlesScanningLogFil();
3704        if BladhusSted = 0 then        if BladhusSted = 0 then
# Line 3970  procedure TMainForm.InitReturFraPakkesho Line 3713  procedure TMainForm.InitReturFraPakkesho
3713  begin  begin
3714        AutomatiskTjekkodeStyring1.Enabled := false;        AutomatiskTjekkodeStyring1.Enabled := false;
3715        Returpakkerfrapakkeshop1.Checked := true;        Returpakkerfrapakkeshop1.Checked := true;
3716        PakkeshopNulstil.Visible := false;        btnNulstil.Visible := false;
3717        InitForm(FarveReturPakkeshop,TitelReturPakkeshop,UrlReturPakkeshop);        InitForm(FarveReturPakkeshop,TitelReturPakkeshop,UrlReturPakkeshop);
3718        PanelValg6.Color := clGreen;        PanelValg6.Color := clGreen;
3719        PanelValg6.Font.Color := clWhite;        PanelValg6.Font.Color := clWhite;
3720        CheckBox1.Enabled := false;  
3721        chkAltidPrintLabel.Enabled := false;        chkAltidPrintLabel.Enabled := false;
3722        Altidprintepakkelabel1.Enabled := false;        Altidprintepakkelabel1.Enabled := false;
3723    
3724        Altidprintepakkelabel1.Checked := false;        Altidprintepakkelabel1.Checked := false;
3725        Sprgefterboghandlernummer1.Checked := false;        Sprgefterboghandlernummer1.Checked := false;
3726        CheckBox1.Checked := false;        chkSporgEfterKunde.Checked := false;
3727        Sprgefterboghandlernummer1.Enabled := false;        Sprgefterboghandlernummer1.Enabled := false;
3728        Smpakker1.Enabled := false;        Smpakker1.Enabled := false;
3729        Storepakker1.Enabled := false;        Storepakker1.Enabled := false;
3730        RadioButton1.Enabled := false;        radioStorPakke.Enabled := false;
3731        RadioButton2.Enabled := false;        radioLillePakke.Enabled := false;
3732        ListBox1.Visible := true;        ListBox1.Visible := true;
3733        ListBox1.Items.Clear;        ListBox1.Items.Clear;
3734        DownloadButton01.Enabled := false;        DownloadButton01.Enabled := false;
# Line 4010  end; Line 3753  end;
3753    
3754  procedure TMainForm.InitIndleveringskode();  procedure TMainForm.InitIndleveringskode();
3755  begin  begin
3756          menuIndlevering.Checked := true;
3757        AutomatiskTjekkodeStyring1.Enabled := false;        AutomatiskTjekkodeStyring1.Enabled := false;
3758        Returpakkerfrapakkeshop1.Checked := true;  
3759        PakkeshopNulstil.Visible := false;        btnNulstil.Visible := false;
3760        InitForm(FarveReturPakkeshop,TitelReturPakkeshop,UrlReturPakkeshop);        InitForm(FarveIndlevering, TitelIndlevering, UrlReturPakkeshop);
3761        PanelValg7.Color := clGreen;        PanelValg7.Color := clGreen;
3762        PanelValg7.Font.Color := clWhite;        PanelValg7.Font.Color := clWhite;
3763        CheckBox1.Enabled := false;  
3764        chkAltidPrintLabel.Enabled := false;        chkAltidPrintLabel.Enabled := false;
3765        Altidprintepakkelabel1.Enabled := false;        Altidprintepakkelabel1.Enabled := false;
3766    
3767        Altidprintepakkelabel1.Checked := false;        Altidprintepakkelabel1.Checked := false;
3768        Sprgefterboghandlernummer1.Checked := false;        Sprgefterboghandlernummer1.Checked := false;
       CheckBox1.Checked := false;  
3769        Sprgefterboghandlernummer1.Enabled := false;        Sprgefterboghandlernummer1.Enabled := false;
3770          chkSporgEfterKunde.Checked := false;
3771    
3772    
3773    
3774        Smpakker1.Enabled := false;        Smpakker1.Enabled := false;
3775        Storepakker1.Enabled := false;        Storepakker1.Enabled := false;
3776        RadioButton1.Enabled := false;        radioStorPakke.Enabled := false;
3777        RadioButton2.Enabled := false;        radioLillePakke.Enabled := false;
3778        ListBox1.Visible := true;        ListBox1.Visible := true;
3779        ListBox1.Items.Clear;        ListBox1.Items.Clear();
3780    
3781        DownloadButton01.Enabled := false;        DownloadButton01.Enabled := false;
3782        OpdaterListenButton01.Enabled := true;        OpdaterListenButton01.Enabled := true;
3783        EKLoverforsel.Enabled := false;        EKLoverforsel.Enabled := false;
# Line 4056  end; Line 3804  end;
3804    
3805  procedure TMainForm.InitLillePakke();  procedure TMainForm.InitLillePakke();
3806  begin  begin
3807    RadioButton2.Checked := true;    radioLillePakke.Checked := true;
3808    Smpakker1.Checked := true;    Smpakker1.Checked := true;
 // 20150310: start  
3809  //  Stregkode := '';  //  Stregkode := '';
 // 20150310: slut  
3810  end;  end;
3811    
3812  procedure TMainForm.InitStorPakke();  procedure TMainForm.InitStorPakke();
3813  begin  begin
3814    RadioButton1.Checked := true;    radioStorPakke.Checked := true;
3815    Storepakker1.Checked := true;    Storepakker1.Checked := true;
3816  // 20150310: start  // 20150310: start
3817  //  Stregkode := '';  //  Stregkode := '';
# Line 4088  end; Line 3834  end;
3834  ///   values.</param>  ///   values.</param>
3835  /// <returns>Formatted version number of file, '' if no version  /// <returns>Formatted version number of file, '' if no version
3836  ///   resource found.</returns>  ///   resource found.</returns>
3837  function TMainForm.Sto_GetFmtFileVersion(const FileName: String = '';  function TMainForm.Sto_GetFmtFileVersion(const FileName: String = ''): String;
   const Fmt: String = '%d.%d.%d.%d'): String;  
3838  var  var
3839    sFileName: String;    sFileName: String;
3840    iBufferSize: DWORD;    iBufferSize: DWORD;
3841    iDummy: DWORD;    iDummy: DWORD;
3842    pBuffer: Pointer;    pBuffer: Pointer;
3843    pFileInfo: Pointer;    pFileInfo: Pointer;
3844    iVer: array[1..4] of Word;    iVer: array[1..4] of Integer;
   S : String;  
3845  begin  begin
3846    // set default value    // set default value
3847    Result := '';    Result := '';
# Line 4122  begin Line 3866  begin
3866      finally      finally
3867        FreeMem(pBuffer);        FreeMem(pBuffer);
3868      end;      end;
3869    
3870      // format result string      // format result string
3871      Result := Format(Fmt, [iVer[1], iVer[2], iVer[3], iVer[4]]);      Result := Format('%d.%d.%d.%d', [iVer[1], iVer[2], iVer[3], iVer[4]]);
3872    
     // Hvorfor virker ovenstående ikke ???  
     S := '';  
     Str(iVer[1],Result);  
     S := S+Result+'.';  
     Str(iVer[2],Result);  
     S := S+Result+'.';  
     Str(iVer[3],Result);  
     S := S+Result+'.';  
     Str(iVer[4],Result);  
     S := S+Result+'';  
     Result := S;  
3873    end;    end;
3874  end;  end;
3875    
# Line 4162  end; Line 3896  end;
3896    
3897  procedure TMainForm.Testlyd2Click(Sender: TObject);  procedure TMainForm.Testlyd2Click(Sender: TObject);
3898  begin  begin
 // 20150317: start  
3899    if (PakkeshopText1.Caption = 'Tjekkode') then    if (PakkeshopText1.Caption = 'Tjekkode') then
3900    begin    begin
3901       if ScannetOkTilTjekkodeLyd  <> '' then       if ScannetOkTilTjekkodeLyd  <> '' then
# Line 4175  begin Line 3908  begin
3908       end;       end;
3909       exit;       exit;
3910    end;    end;
 // 20150317: slut  
3911    
3912    if Smpakker1.Checked then    if Smpakker1.Checked then
3913       if ScannetOkLyd  <> '' then       if ScannetOkLyd  <> '' then
# Line 4184  begin Line 3916  begin
3916       end       end
3917       else       else
3918       begin       begin
 // 20150317: start  
 //       MessageBox(Handle, PWideChar('Lyd fil ikke fundet (scannet)'), 'Information', MB_OK);  
3919         MessageBox(Handle, PWideChar('Lyd fil ikke fundet (ScannetOkLyd)'), 'Information', MB_OK);         MessageBox(Handle, PWideChar('Lyd fil ikke fundet (ScannetOkLyd)'), 'Information', MB_OK);
 // 20150317: slut  
3920       end;       end;
3921    if Storepakker1.Checked then    if Storepakker1.Checked then
3922       if ScannetOkStorLyd  <> '' then       if ScannetOkStorLyd  <> '' then
# Line 4196  begin Line 3925  begin
3925       end       end
3926       else       else
3927       begin       begin
 // 20150317: start  
 //       MessageBox(Handle, PWideChar('Lyd fil ikke fundet (scannet stor)'), 'Information', MB_OK);  
3928         MessageBox(Handle, PWideChar('Lyd fil ikke fundet (ScannetOkStorLyd)'), 'Information', MB_OK);         MessageBox(Handle, PWideChar('Lyd fil ikke fundet (ScannetOkStorLyd)'), 'Information', MB_OK);
 // 20150317: slut  
3929       end;       end;
3930  end;  end;
3931    
# Line 4306  begin Line 4032  begin
4032           BoghandlerNavnST.Caption := 'Prøv venligst igen om lidt...';           BoghandlerNavnST.Caption := 'Prøv venligst igen om lidt...';
4033         end;         end;
4034         KommentarST.Caption := Kommentar;         KommentarST.Caption := Kommentar;
4035         PakkeshopNulstil.Visible := true;         btnNulstil.Visible := true;
4036      end;      end;
4037    
4038  end;  end;
# Line 4892  begin Line 4618  begin
4618    until S2 = '';    until S2 = '';
4619  end;  end;
4620    
4621    // ToDo: PrintPakkeshopLabel()
4622    procedure TMainForm.PrintPakkeshopLabel( PakkeshopLabel : TPakkeshopLabel);
4623    var
4624      XForm, XFormOld: TXForm; //Bruges til rotate X-formation
4625      Angle: integer;
4626      gMode: integer;
4627      BarcodeArea: TRect;
4628      Dirigering: string;
4629    
4630    begin
4631        with Printer do
4632        begin
4633          BeginDoc();
4634    
4635    
4636          Canvas.Font.Size := 16;
4637          Canvas.TextOut(15,10, 'Code: ' + PakkeshopLabel.Tjekkode + '     '  + PakkeshopLabel.Overskrift);
4638    
4639    
4640    
4641          Canvas.TextOut(25, 90, PakkeshopLabel.Navn );
4642          Canvas.TextOut(25, 135, PakkeshopLabel.Vejnavn );
4643          Canvas.TextOut(25, 180, PakkeshopLabel.Postnr );
4644    
4645    
4646          Canvas.Font.Size := 9;
4647          Canvas.TextOut(110, 240, 'Pakkeshop:');
4648          Canvas.TextOut(110, 270, PakkeshopLabel.PakkeshopNavn);
4649          Canvas.TextOut(110, 300, PakkeshopLabel.PakkeshopAddr);
4650          Canvas.TextOut(110, 330, PakkeshopLabel.PakkeshopPostnr);
4651    
4652          Canvas.TextOut(350, 240, 'Afsender:');
4653          Canvas.TextOut(350, 270, PakkeshopLabel.AfsenderNavn);
4654          Canvas.TextOut(350, 300, PakkeshopLabel.AfsenderAdresse);
4655          Canvas.TextOut(350, 330, PakkeshopLabel.AfsenderPostnr);
4656    
4657          Dirigering := PakkeshopLabel.PakkeshopSted + ' | ' + PakkeshopLabel.PakkeshopTurid + ' | ' + PakkeshopLabel.PakkeshopNr;
4658          if ( PakkeshopLabel.Koreliste <> '') then
4659          begin
4660            Dirigering := Dirigering + ' > ' + PakkeshopLabel.Koreliste;
4661          end;
4662    
4663    
4664          Canvas.Font.Size := 12;
4665          Canvas.TextOut(15, 370, Dirigering);
4666    
4667    
4668    
4669    
4670    
4671          //Tegn adskillelses linier
4672          Canvas.Pen.Width := 2;
4673          //Øverste linie
4674          Canvas.MoveTo(20,80);
4675          Canvas.LineTo(600,80);
4676    
4677          // Midterste linie
4678          Canvas.MoveTo( 20, 240);
4679          Canvas.LineTo(600, 240);
4680    
4681          //Nederste linie
4682          Canvas.MoveTo( 20, 370);
4683          Canvas.LineTo(600, 370);
4684    
4685    
4686          //Tegn skrå streger over afsender
4687          Canvas.Pen.Width := 1;
4688          Canvas.MoveTo(600, 250);
4689          Canvas.LineTo(350, 360);
4690          Canvas.MoveTo(600, 360);
4691          Canvas.LineTo(350, 250);
4692    
4693    
4694    
4695    
4696          // Resten af rutinen vedr genering og placering af Barcode
4697    
4698          BarCode.BarCodeType := bcCode128;
4699          BarCode.Code128Subset := csCodeC;
4700          BarCode.Code := PakkeshopLabel.Stregkode;
4701          BarCode.Validate(True);
4702    
4703          //Start X-formation
4704          //ShowMessage( Format('%d %d', [PageWidth, PageHeight]) );
4705          GetWorldTransform(Canvas.Handle, XFormOld);
4706    
4707          Angle := 270;
4708          XForm.eM11 := Cos(DegToRad(Angle));
4709          XForm.eM12 := Sin(DegToRad(Angle));
4710          XForm.eM21 := -Sin(DegToRad(Angle));
4711          XForm.eM22 := Cos(DegToRad(Angle));
4712          XForm.eDx := 0;
4713          XForm.eDy := 0;
4714    
4715          gMode := SetGraphicsMode(Canvas.Handle, GM_ADVANCED);
4716          SetWorldTransform(Canvas.Handle, XForm);
4717    
4718          // PaintToCanvasSize arbejder i Inches
4719          // Første pos argument bliver nu Y og skal være negativ for at rykke den ned
4720          //Anden pos er X og skal være positiv for at justere ind fra venstre mod højre
4721    
4722          BarCode.PaintToCanvasSize(Printer.Canvas, -1.8, 3.3, 0.4);
4723    
4724    
4725          SetWorldTransform(Canvas.Handle, XFormOld);
4726          SetGraphicsMode(Canvas.Handle, gMode);
4727    
4728          EndDoc();
4729        end;
4730    
4731    
4732    end;
4733    
4734    function GetPixelsPerInchX(): Integer;
4735    begin
4736      Result := GetDeviceCaps(Printer.Handle, LOGPIXELSX)
4737    end;
4738    
4739    function GetPixelsPerInchY(): Integer;
4740    begin
4741      Result := GetDeviceCaps(Printer.Handle, LOGPIXELSY)
4742    end;
4743    
4744    
4745  procedure TMainForm.IndlesManglendeScanninger();  procedure TMainForm.IndlesManglendeScanninger();
4746  var  var
4747    WebSvar : String;    WebSvar : String;
# Line 4904  var Line 4754  var
4754    pakketypeix, antalLiniefelter, antalFelterFundet, linienr : Integer;    pakketypeix, antalLiniefelter, antalFelterFundet, linienr : Integer;
4755    pakketyper : TStrings;    pakketyper : TStrings;
4756    antlin : Integer;    antlin : Integer;
4757  // 20150306: start  
4758    antlinIdag, antlinSenere : Integer;    antlinIdag, antlinSenere : Integer;
4759  // 20150306: slut  
4760    XmlFelter : TStrings;    XmlFelter : TStrings;
4761    
4762   begin   begin
# Line 4926  var Line 4776  var
4776          StedKode := Sted;          StedKode := Sted;
4777        end;        end;
4778    
4779  // 20150310: start  
 (*  
     if Returpakkerfrapakkeshop1.Checked then  
      begin  
       URLStr := Format(UrlPakkeshopManglendeReturScanninger,[StedKode]);  
      end  
     else if Pakkeshoplevering1.Checked then  
      begin  
       URLStr := Format(UrlPakkeshopManglendeScanninger,[StedKode]);  
      end  
     else if Pakkernormal1.Checked then  
      begin  
       URLStr := Format(UrlManglendeScanninger,[StedKode,'B2']);  
      end  
     else  
      begin  
       URLStr := Format(UrlManglendeScanninger,[StedKode,'A2']);    // Budleveringer  
      end;  
 *)  
4780      if (Scanningtype = '6') then      if (Scanningtype = '6') then
4781       begin       begin
4782        URLStr := Format(UrlPakkeshopManglendeReturScanninger,[StedKode]);        URLStr := Format(UrlPakkeshopManglendeReturScanninger,[StedKode]);
# Line 4988  var Line 4820  var
4820      try      try
4821        XMLDocument1.LoadFromXML(WebSvar);        XMLDocument1.LoadFromXML(WebSvar);
4822    
4823  // 20150206: start  
4824        antlin := 0;        antlin := 0;
4825        antlinIdag := 0;        antlinIdag := 0;
4826        antlinSenere := 0;        antlinSenere := 0;
4827  // 20150306: slut  
       antalFelterFundet := 0;  
4828        for I:= 0 to XMLDocument1.DocumentElement.ChildNodes.Count - 1 do begin        for I:= 0 to XMLDocument1.DocumentElement.ChildNodes.Count - 1 do begin
4829            Node:= XMLDocument1.DocumentElement.ChildNodes[I];            Node:= XMLDocument1.DocumentElement.ChildNodes[I];
4830            if Node.NodeType = ntElement then begin            if Node.NodeType = ntElement then begin
# Line 5025  var Line 4856  var
4856        antalFelterFundet := 0;        antalFelterFundet := 0;
4857        SetLength(stregkoderMedTjekkodeArray, 0);    // reset fra tidligere brug        SetLength(stregkoderMedTjekkodeArray, 0);    // reset fra tidligere brug
4858        SetLength(stregkoderMedTjekkodeArray, antlin);  // sæt antal elementer i array        SetLength(stregkoderMedTjekkodeArray, antlin);  // sæt antal elementer i array
4859  // 20150206: start  
 //      logTekst := 'Der er '+IntToStr(antlin)+' pakker, der endnu ikke er modtaget.';  
4860        logTekst := 'Der er ' + IntToStr(antlin) + ' pakker, der endnu ikke er modtaget';        logTekst := 'Der er ' + IntToStr(antlin) + ' pakker, der endnu ikke er modtaget';
4861        if (antlinSenere > 0) then        if (antlinSenere > 0) then
4862        begin        begin
4863          logTekst := logTekst + ' (' + IntToStr(antlinIdag) + ' til i dag og ' + IntToStr(antlinSenere) + ' til senere)';          logTekst := logTekst + ' (' + IntToStr(antlinIdag) + ' til i dag og ' + IntToStr(antlinSenere) + ' til senere)';
4864        end;        end;
4865        logTekst := logTekst + '.';        logTekst := logTekst + '.';
4866  // 20150306: slut  
4867        SkrivScanningLogFil(logTekst);        SkrivScanningLogFil(logTekst);
4868        for I:= 0 to XMLDocument1.DocumentElement.ChildNodes.Count - 1 do begin        for I:= 0 to XMLDocument1.DocumentElement.ChildNodes.Count - 1 do begin
4869            Node:= XMLDocument1.DocumentElement.ChildNodes[I];            Node:= XMLDocument1.DocumentElement.ChildNodes[I];
# Line 5083  var Line 4913  var
4913                    begin                    begin
4914                      stregkoderMedTjekkodeArray[linienr] := stregkode;                      stregkoderMedTjekkodeArray[linienr] := stregkode;
4915                    end;                    end;
4916  // 20150306: slut                    linienr := linienr + 1;
                     linienr := linienr + 1;  
4917                  end;                  end;
4918              end;              end;
4919              if antalFelterFundet = antalLiniefelter then              if antalFelterFundet = antalLiniefelter then
# Line 5109  var Line 4938  var
4938    
4939          // Free up the list object          // Free up the list object
4940        pakketyper.Free;        pakketyper.Free;
 // 20150306: start  
4941  //      ListBox1.Items.Insert(0,TimeToStr(now) + ': ' + 'Der er '+IntToStr(antlin)+' pakker, der endnu ikke er modtaget.');  //      ListBox1.Items.Insert(0,TimeToStr(now) + ': ' + 'Der er '+IntToStr(antlin)+' pakker, der endnu ikke er modtaget.');
4942        logTekst := 'Der er ' + IntToStr(antlin) + ' pakker, der endnu ikke er modtaget';        logTekst := 'Der er ' + IntToStr(antlin) + ' pakker, der endnu ikke er modtaget';
4943        if (antlinSenere > 0) then        if (antlinSenere > 0) then
# Line 5118  var Line 4946  var
4946        end;        end;
4947        logTekst := logTekst + '.';        logTekst := logTekst + '.';
4948        ListBox1.Items.Insert(0,TimeToStr(now) + ': ' + logTekst);        ListBox1.Items.Insert(0,TimeToStr(now) + ': ' + logTekst);
 // 20150306: slut  
 // 20150309: start  
4949        if (antlinSenere > 0) then        if (antlinSenere > 0) then
4950        begin        begin
4951          StaticTextManglendePakker.Caption := IntToStr(antlinIdag) + '/' + IntToStr(antlinSenere);          StaticTextManglendePakker.Caption := IntToStr(antlinIdag) + '/' + IntToStr(antlinSenere);
# Line 5128  var Line 4954  var
4954        begin        begin
4955          StaticTextManglendePakker.Caption := IntToStr(antlinIdag);          StaticTextManglendePakker.Caption := IntToStr(antlinIdag);
4956        end;        end;
 // 20150309: slut  
4957    
 // 20150310: start  
4958        if (Scanningtype = '1') then        if (Scanningtype = '1') then
4959        begin        begin
4960          //antlinIdag := 9876;  // til test af boksens udseende ved stort tal          //antlinIdag := 9876;  // til test af boksens udseende ved stort tal
# Line 5209  var Line 5033  var
5033            PanelManglendePakker6.Visible := false;            PanelManglendePakker6.Visible := false;
5034          end;          end;
5035        end;        end;
 // 20150310: slut  
5036    
5037      except on e:exception do      except on e:exception do
5038        begin        begin
# Line 5271  end; Line 5094  end;
5094  procedure TMainForm.SkrivScanningLogFil(var tekst : string);  procedure TMainForm.SkrivScanningLogFil(var tekst : string);
5095  var  var
5096     SomeTxtFile : TextFile;     SomeTxtFile : TextFile;
    buffer : string;  
    S: string;  
5097     idag, imorgen : TDateTime;     idag, imorgen : TDateTime;
5098     imorgenYmd : string;     imorgenYmd : string;
5099     logFilnavn : string;     logFilnavn : string;
5100      error : Integer;     //error : Integer;
5101    
5102  begin  begin
5103    if (SkrivLog = '1') then    if (SkrivLog = '1') then
# Line 5540  begin Line 5361  begin
5361    result := svar;    result := svar;
5362  end;  end;
5363    
5364    procedure TMainForm.VisAlarmSkaerm(strMessage: string);
5365    begin
5366      //ShowMessage('Ændring ikke tilladt');
5367      // Her skal komme en 'rød skærm' alarm
5368      PlaySound(PWideChar(AlarmLyd));
5369      MainForm.Color := clRed;
5370    
5371    
5372      RuteNummerST.Caption := '';
5373      BoghandlerNavnST.Caption := '';
5374      btnNulstil.Visible := true;
5375    
5376      if (strMessage <> '') then
5377      begin
5378        ListBox1.Items.Insert(0, strMessage);
5379        KommentarST.Caption := strMessage;
5380      end;
5381    
5382    end;
5383    
5384  function TMainForm.getProddato() : TDate;  function TMainForm.getProddato() : TDate;
5385  var  var
5386     idag, imorgen : TDateTime;     idag, imorgen : TDateTime;
# Line 5621  procedure TMainForm.Scanogstjekkoden1Cli Line 5462  procedure TMainForm.Scanogstjekkoden1Cli
5462  begin  begin
5463    if Scanogstjekkoden1.Checked then    if Scanogstjekkoden1.Checked then
5464    begin    begin
5465       CheckBox3.Checked := true;       chkScanTjekkode.Checked := true;
5466    end    end
5467    else    else
5468    begin    begin
5469       CheckBox3.Checked := false;       chkScanTjekkode.Checked := false;
5470    end;    end;
5471  end;  end;
5472    
# Line 5641  begin Line 5482  begin
5482    AReg.Free;    AReg.Free;
5483  end;  end;
5484    
5485    
5486    function TMainForm.CheckUrl(url:string):boolean;
5487    var
5488      hSession, hfile: hInternet;
5489      dwindex,dwcodelen :dword;
5490      dwcode:array[1..20] of char;
5491      res : pchar;
5492    begin
5493      if pos('http://',lowercase(url))=0 then
5494        url := 'http://'+url;
5495      Result := false;
5496      hSession := InternetOpen('InetURL:/1.0',
5497                                INTERNET_OPEN_TYPE_PRECONFIG,
5498                                nil,
5499                                nil,
5500                                0);
5501      if assigned(hsession) then
5502      begin
5503        hfile := InternetOpenUrl(hsession,
5504                                 pchar(url),
5505                                 nil,
5506                                 0,
5507                                 INTERNET_FLAG_RELOAD,
5508                                 0);
5509        dwIndex := 0;
5510        dwCodeLen := 10;
5511        HttpQueryInfo(hfile,
5512                      HTTP_QUERY_STATUS_CODE,
5513                      @dwcode,
5514                      dwcodeLen,
5515                      dwIndex);
5516        res := pchar(@dwcode);
5517        result:= (res ='200') or (res ='302');
5518        if assigned(hfile) then
5519          InternetCloseHandle(hfile);
5520        InternetCloseHandle(hsession);
5521      end;
5522    
5523    end;
5524    
5525    
5526    procedure TMainForm.RoundCornerOf(Control: TWinControl);
5527    var
5528       R: TRect;
5529       Rgn: HRGN;
5530    begin
5531       with Control do
5532       begin
5533         R := ClientRect;
5534    //     rgn := CreateRoundRectRgn(R.Left, R.Top, R.Right, R.Bottom, 20, 20) ;
5535         rgn := CreateRoundRectRgn(R.Left, R.Top, R.Right, R.Bottom, 25, 25) ;
5536    //     rgn := CreateRoundRectRgn(R.Left, R.Top, R.Right, R.Bottom, 30, 30) ;
5537         Perform(EM_GETRECT, 0, lParam(@r)) ;
5538         InflateRect(r, - 4, - 4) ;
5539         Perform(EM_SETRECTNP, 0, lParam(@r)) ;
5540         SetWindowRgn(Handle, rgn, True) ;
5541         Invalidate;
5542       end;
5543    end;
5544    
5545  procedure TMainForm.CheckPrintQue(tjektype : string);  procedure TMainForm.CheckPrintQue(tjektype : string);
5546  type  type
5547    TJobs  = array [0..1000] of JOB_INFO_1;    TJobs  = array [0..1000] of JOB_INFO_1;
# Line 5744  begin Line 5645  begin
5645    end;    end;
5646  end;  end;
5647    
 function TMainForm.CheckUrl(url:string):boolean;  
 var  
   hSession, hfile, hRequest: hInternet;  
   dwindex,dwcodelen :dword;  
   dwcode:array[1..20] of char;  
   res : pchar;  
 begin  
   if pos('http://',lowercase(url))=0 then  
     url := 'http://'+url;  
   Result := false;  
   hSession := InternetOpen('InetURL:/1.0',  
                             INTERNET_OPEN_TYPE_PRECONFIG,  
                             nil,  
                             nil,  
                             0);  
   if assigned(hsession) then  
   begin  
     hfile := InternetOpenUrl(hsession,  
                              pchar(url),  
                              nil,  
                              0,  
                              INTERNET_FLAG_RELOAD,  
                              0);  
     dwIndex := 0;  
     dwCodeLen := 10;  
     HttpQueryInfo(hfile,  
                   HTTP_QUERY_STATUS_CODE,  
                   @dwcode,  
                   dwcodeLen,  
                   dwIndex);  
     res := pchar(@dwcode);  
     result:= (res ='200') or (res ='302');  
     if assigned(hfile) then  
       InternetCloseHandle(hfile);  
     InternetCloseHandle(hsession);  
   end;  
   
 end;  
   
 // 20150310: start  
 procedure TMainForm.RoundCornerOf(Control: TWinControl);  
 var  
    R: TRect;  
    Rgn: HRGN;  
 begin  
    with Control do  
    begin  
      R := ClientRect;  
 //     rgn := CreateRoundRectRgn(R.Left, R.Top, R.Right, R.Bottom, 20, 20) ;  
      rgn := CreateRoundRectRgn(R.Left, R.Top, R.Right, R.Bottom, 25, 25) ;  
 //     rgn := CreateRoundRectRgn(R.Left, R.Top, R.Right, R.Bottom, 30, 30) ;  
      Perform(EM_GETRECT, 0, lParam(@r)) ;  
      InflateRect(r, - 4, - 4) ;  
      Perform(EM_SETRECTNP, 0, lParam(@r)) ;  
      SetWindowRgn(Handle, rgn, True) ;  
      Invalidate;  
    end;  
 end;  
 // 20150310: slut  
5648    
5649  end.  end.
5650    

Legend:
Removed from v.2652  
changed lines
  Added in v.2678

  ViewVC Help
Powered by ViewVC 1.1.20