/[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 3055 by torben, Mon Jun 27 12:18:07 2016 UTC revision 3094 by torben, Fri Aug 19 14:35:39 2016 UTC
# Line 20  uses Line 20  uses
20    IdExplicitTLSClientServerBase, IdFTP, IdException,    IdExplicitTLSClientServerBase, IdFTP, IdException,
21    ShellApi, ClipBrd, Buttons, wininet,    ShellApi, ClipBrd, Buttons, wininet,
22    UITypes,    UITypes,
23    PakkeshopLabels,    LabelData,
24    Utils,    Utils,
25    ParentForm,    ParentForm,
26    LabelPrint,    LabelPrint,
27    Configuration,    Configuration,
28    Vcl.Imaging.pngimage,    Vcl.Imaging.pngimage,
29    Generics.Collections    Generics.Collections,
30      TimingHelper
31    
32    ;    ;
33    
# Line 107  type Line 108  type
108      chkForstorTilDirekte: TCheckBox;      chkForstorTilDirekte: TCheckBox;
109      chkEmballageRepareret: TCheckBox;      chkEmballageRepareret: TCheckBox;
110      KommentarST: TLabel;      KommentarST: TLabel;
111        chkUdenforSpecifikation: TCheckBox;
112    
113    
114    
# Line 209  type Line 211  type
211      SkrivLog : String;      SkrivLog : String;
212      Sted : String;      Sted : String;
213      StedNavn : String;      StedNavn : String;
     Url, UrlNormal, UrlReturDAO, UrlReturBoghandler, UrlBudlevering, UrlManglendeScanninger, UrlPakkeshoplevering,  
             UrlReturPakkeshop, UrlPakkeshopManglendeScanninger, UrlPakkeshopManglendeReturScanninger,UrlIndleveringsPakke,  
             UrlIndleveringsPakkeManglendeScanninger,UrlEKLoverforsel, URLOmdirigerTilPakkeshop : String;  
214    
215      UrlEKLoverforselPakkeshop : String;      Scanningtype,  Pakketype : String;
216    
     UrlFindPakketype, UrlSendPrograminfo: String;  
     Scanningtype, TestFunktionen, Pakketype, SporgEfterBoghandler : String;  
     ScanTjekkode : String;  
     ScanTjekkodeAutomatik : string;  
217    
218      Farve, FarveNormal, FarveReturDAO, FarveReturBoghandler, FarveBudlevering, FarvePakkeshoplevering, FarveReturPakkeshop,      Url : String;
           FarveIndlevering : String;  
219    
220      Titel, TitelNormal, TitelReturDAO, TitelReturBoghandler, TitelBudlevering, TitelPakkeshoplevering, TitelReturPakkeshop,      Farve : String;
           TitelIndlevering : String;  
221    
222      AlarmLyd : String;      Titel : String;
     ScannetOkLyd : String;  
     ScannetOkStorLyd : String;  
223    
     ScannetOkTilTjekkodeLyd : String;  
224    
     PrinterNavn : String;  
     TjekPrinter : String;  
225    
226      Org_RuteNummerST, Org_BoghandlerNavnST, Org_KommentarST : String;      Org_RuteNummerST, Org_BoghandlerNavnST, Org_KommentarST : String;
227      BladhusSted : Integer;      BladhusSted : Integer;
# Line 246  type Line 234  type
234      logTekst : string;      logTekst : string;
235      PakkeshopStregkode, PakkeshopTjekkode : String;      PakkeshopStregkode, PakkeshopTjekkode : String;
236      BoghandlerStregkode, BoghandlerTjekkode : String;      BoghandlerStregkode, BoghandlerTjekkode : String;
237      TjekUrls : String;  
238      Config : TConfiguration;      Config : TConfiguration;
239    
240    
# Line 263  type Line 251  type
251      procedure SkrivScanningLogFil(var tekst : string);      procedure SkrivScanningLogFil(var tekst : string);
252      function TjekKoreliste(var RuteNummer, Koreliste : string) : string;      function TjekKoreliste(var RuteNummer, Koreliste : string) : string;
253      procedure VisAlarmSkaerm(strMessage: string);      procedure VisAlarmSkaerm(strMessage: string);
254      function InjectURL(Url : String) : String;  
255    
256    public    public
257      { Public declarations }      { Public declarations }
# Line 417  begin Line 405  begin
405    
406      if (Scanningtype = '1') or (Scanningtype = '5') then      if (Scanningtype = '1') or (Scanningtype = '5') then
407      begin      begin
408        if (ScanTjekkode = '1') then        if (Config.ScanTjekkode = '1') then
409        begin        begin
410          chkScanTjekkode.Checked := true;          chkScanTjekkode.Checked := true;
411          chkScanTjekkode.Enabled := true;          chkScanTjekkode.Enabled := true;
# Line 513  begin Line 501  begin
501       PanelValgA.Font.Color := clWhite;       PanelValgA.Font.Color := clWhite;
502  end;  end;
503    
 function TMainForm.InjectURL(Url : String) : String;  
 begin  
504    
   Url := Url + '&ver=' + TUtils.URLEncode( TUtils.Sto_GetFmtFileVersion(''));  
   Url := Url + '&host=' + TUtils.URLEncode( TUtils.GetComputerNameHelper());  
   Url := Url + '&user=' + TUtils.URLEncode( TUtils.GetCurrentUserName());  
   
   Result := Url;  
 end;  
505    
506  //InitForm kaldes før FormCreate  //InitForm kaldes før FormCreate
507  procedure TMainForm.FormCreate(Sender: TObject);  procedure TMainForm.FormCreate(Sender: TObject);
# Line 558  begin Line 538  begin
538    
539  // Sætter lige en default panel størrelse  // Sætter lige en default panel størrelse
540    MainForm.ClientWidth := 1000;    MainForm.ClientWidth := 1000;
541    MainForm.ClientHeight := 750;    MainForm.ClientHeight := 820;
542    
543    Config := TConfiguration.Create();    Config := TConfiguration.Create();
544    Config.ReadFromInifile( TIniFile.Create(ChangeFileExt(Application.ExeName,'.ini')) );    //ToDo: clean up duplicate ini ref    Config.ReadFromInifile( TIniFile.Create(ChangeFileExt(Application.ExeName,'.ini')) );    //ToDo: clean up duplicate ini ref
# Line 573  begin Line 553  begin
553      Sted := ReadString('Settings','Sted','');      Sted := ReadString('Settings','Sted','');
554      StedNavn := ReadString('Settings','Stednavn','');      StedNavn := ReadString('Settings','Stednavn','');
555    
556      UrlFindPakketype := ReadString('Settings','UrlFindPakketype','http://omdeling.info/webservices/bogpakkekontrol/FindPakketype.php?stregkode=%s');      Scanningtype := 'A'; //hardcoded
557      UrlFindPakketype := InjectURL(UrlFindPakketype);      Pakketype := '0';
   
     UrlSendPrograminfo := ReadString('Settings','UrlSendPrograminfo','http://omdeling.info/webservices/bogpakkekontrol/SendPrograminfo.php?programnavn=%s&sted=%s&scanningtype=%s&infotype=%s&info=%s');  
     UrlSendPrograminfo := InjectURL(UrlSendPrograminfo);  
   
     UrlNormal := ReadString('Settings','UrlNormal','http://omdeling.info/webservices/bogpakkekontrol/bogpakkekontrol.php?sted=%s&pakkenummer=%s&boghandlernummer=%s&tjekkode=%s');  
     UrlNormal := InjectURL(UrlNormal);  
   
     UrlReturDAO := ReadString('Settings','UrlReturDAO','http://omdeling.info/webservices/bogpakkekontrol/bogpakkekontrol.php?sted=%s&pakkenummer=%s&boghandlernummer=%s&returpakketype=%s&pakkestorrelse=%s');  
     UrlReturDAO := InjectURL(UrlReturDAO);  
   
     UrlReturBoghandler := ReadString('Settings','UrlReturBoghandler','http://omdeling.info/webservices/bogpakkekontrol/bogpakkekontrol.php?sted=%s&pakkenummer=%s&boghandlernummer=%s&returpakketype=%s&pakkestorrelse=%s');  
     UrlReturBoghandler := InjectURL(UrlReturBoghandler);  
   
     UrlBudlevering := ReadString('Settings','UrlBudlevering','http://omdeling.info/webservices/bogpakkekontrol/bogpakkekontrol.php?sted=%s&pakkenummer=%s&leveringstype=%s&pakkestorrelse=%s');  
     UrlBudlevering := InjectURL(UrlBudlevering);  
   
     UrlManglendeScanninger := ReadString('Settings','UrlManglendeScanninger','http://omdeling.info/webservices/bogpakkekontrol/bogpakkemanglendescanninger.php?sted=%s&type=%s');  
     UrlManglendeScanninger := InjectURL(UrlManglendeScanninger);  
   
     UrlEKLoverforsel := ReadString('Settings','UrlEKLoverforsel','http://omdeling.info/webservices/bogpakkekontrol/bogpakkertilekl.php?sted=%s');  
     UrlEKLoverforsel := InjectURL(UrlEKLoverforsel);  
   
     UrlEKLoverforselPakkeshop := ReadString('Settings','UrlEKLoverforselPakkeshop','http://omdeling.info/webservices/pakkeshop/pakkertilekl.php?sted=%s');  
     UrlEKLoverforselPakkeshop := InjectURL(UrlEKLoverforselPakkeshop);  
   
     UrlPakkeshoplevering := ReadString('Settings','UrlPakkeshoplevering','http://omdeling.info/webservices/pakkeshop/pakkekontrol.php?sted=%s&stregkode=%s&tjekkode=%s');  
     UrlPakkeshoplevering := InjectURL(UrlPakkeshoplevering);  
   
     UrlReturPakkeshop := ReadString('Settings','UrlReturPakkeshop','http://omdeling.info/webservices/pakkeshop/returpakkekontrol.php?sted=%s&stregkode=%s');  
     UrlReturPakkeshop := InjectURL(UrlReturPakkeshop);  
   
     UrlPakkeshopManglendeScanninger := ReadString('Settings','UrlPakkeshopManglendeScanninger','http://omdeling.info/webservices/pakkeshop/pakkemanglendescanninger.php?sted=%s');  
     UrlPakkeshopManglendeScanninger := InjectURL(UrlPakkeshopManglendeScanninger);  
   
     UrlPakkeshopManglendeReturScanninger := ReadString('Settings','UrlPakkeshopManglendeReturScanninger','http://omdeling.info/webservices/pakkeshop/pakkemanglendereturscanninger.php?sted=%s');  
     UrlPakkeshopManglendeReturScanninger := InjectURL(UrlPakkeshopManglendeReturScanninger);  
   
     UrlIndleveringsPakke := ReadString('Settings','UrlIndleveringsPakke','http://omdeling.info/webservices/pakkeshop/PakkekontrolIndleveringskode.php?sted=%s&pakkekode=%s');  
     UrlIndleveringsPakke := InjectURL(UrlIndleveringsPakke);  
   
     UrlIndleveringsPakkeManglendeScanninger := ReadString('Settings', 'UrlIndleveringsPakkeManglendeScanninger','http://omdeling.info/webservices/pakkeshop/IndleveringsPakkeManglendeScanninger.php?sted=%s');  
     UrlIndleveringsPakkeManglendeScanninger := InjectURL(UrlIndleveringsPakkeManglendeScanninger);  
   
     URLOmdirigerTilPakkeshop := ReadString('Settings', 'URLOmdirigerTilPakkeshop','http://omdeling.info/webservices/pakkeshop/PakkeKontrolOmdirigerTilPakkeshop.php?sted=%s&stregkode=%s');  
     URLOmdirigerTilPakkeshop := InjectURL(URLOmdirigerTilPakkeshop);  
558    
559    
560    
     FarveNormal := ReadString('Settings','FarveNormal','D8D8D8');  
     TitelNormal := ReadString('Settings','TitelNormal','Modtagelse af DAO NAT X-PRESS pakker');  
     FarveReturDAO := ReadString('Settings','FarveReturDAO','A9F5A9');  
     TitelReturDAO := ReadString('Settings','TitelReturDAO','Returforsendelse fra DAO');  
     FarveReturBoghandler := ReadString('Settings','FarveReturBoghandler','F2F5A9');  
     TitelReturBoghandler := ReadString('Settings','TitelReturBoghandler','Returforsendelse fra boghandler');  
     FarveBudlevering := ReadString('Settings','FarveBudlevering','2E9AFE');  
     TitelBudlevering := ReadString('Settings','TitelBudlevering','Modtagelse af DAO DIREKTE pakker');  
     FarvePakkeshoplevering := ReadString('Settings','FarvePakkeshoplevering','99FFFF');  
     TitelPakkeshoplevering := ReadString('Settings','TitelPakkeshoplevering','Modtagelse af DAO PAKKESHOP pakker');  
561    
     FarveReturPakkeshop := ReadString('Settings','FarveReturPakkeshop','99FFCC');  
     TitelReturPakkeshop := ReadString('Settings','TitelReturPakkeshop','Returforsendelse fra pakkeshop');  
   
     FarveIndlevering := ReadString('Settings', 'FarveIndlevering', 'E5B2CB');  
     TitelIndlevering := ReadString('Settings', 'TitelIndlevering', 'Indleveringskode');  
   
   
     SporgEfterBoghandler := ReadString('Settings','SporgEfterBoghandler','0');  
     ScanTjekkode := ReadString('Settings','ScanTjekkode','0');  
     ScanTjekkodeAutomatik := ReadString('Settings','ScanTjekkodeAutomatik','1');  
     Scanningtype := ReadString('Settings','Scanningtype','A');  
     Pakketype := ReadString('Settings','Pakketype','0');  
     TestFunktionen := ReadString('Settings','TestFunktion','0');  
     AlarmLyd := ReadString('Settings','AlarmLyd','Sounds\Alarm.wav');  
     ScannetOkLyd := ReadString('Settings','ScannetOkLyd','Sounds\Ok.wav');  
     ScannetOkStorLyd := ReadString('Settings','ScannetOkStorLyd','Sounds\Ok_stor.wav');  
   
     ScannetOkTilTjekkodeLyd := ReadString('Settings','ScannetOkTilTjekkodeLyd','Sounds\Ok_til_tjekkode.wav');  
   
     PrinterNavn := ReadString('Settings','PrinterNavn','');  
     TjekPrinter := ReadString('Settings','TjekPrinter','1');  
     TjekUrls := ReadString('Settings','TjekUrls','2');  
562    
563      if (SkrivLog = '1') then      if (SkrivLog = '1') then
564      begin      begin
# Line 683  begin Line 586  begin
586    
587    
588    
589      if SporgEfterBoghandler = '1' then      if Config.SporgEfterBoghandler = '1' then
590      begin      begin
591        chkSporgEfterKunde.Checked := true;        chkSporgEfterKunde.Checked := true;
592        Sprgefterboghandlernummer1.Checked := true;        Sprgefterboghandlernummer1.Checked := true;
# Line 694  begin Line 597  begin
597        Sprgefterboghandlernummer1.Checked := false;        Sprgefterboghandlernummer1.Checked := false;
598      end;      end;
599    
600      if ScanTjekkode = '1' then      if Config.ScanTjekkode = '1' then
601      begin      begin
602        chkScanTjekkode.Checked := true;        chkScanTjekkode.Checked := true;
603        Scanogstjekkoden1.Checked := true;        Scanogstjekkoden1.Checked := true;
# Line 705  begin Line 608  begin
608        Scanogstjekkoden1.Checked := false;        Scanogstjekkoden1.Checked := false;
609      end;      end;
610    
611      if ScanTjekkodeAutomatik = '1' then      if Config.ScanTjekkodeAutomatik = '1' then
612      begin      begin
613        menuAutomatiskTjekkodeStyring.Checked := true;        menuAutomatiskTjekkodeStyring.Checked := true;
614        chkScanTjekkode.Enabled := false;        chkScanTjekkode.Enabled := false;
# Line 841  begin Line 744  begin
744    
745      if SpecialVersionSted = 'DBK' then      if SpecialVersionSted = 'DBK' then
746      begin      begin
       //FarveNormal := 'A9F5A9';  // her kan vi evt. overrule ini fil  
747        Sted := SpecialVersionSted;        Sted := SpecialVersionSted;
       // her skal vi også disable de knapper DBK ikke kan bruge  
       PanelValg2.Enabled := false;  
       PanelValg2.Font.Color := clInactiveCaption;  
       PanelValg3.Enabled := false;  
       PanelValg3.Font.Color := clInactiveCaption;  
       PanelValg5.Enabled := false;  
       PanelValg5.Font.Color := clInactiveCaption;  
       PanelValg6.Enabled := false;  
       PanelValg6.Font.Color := clInactiveCaption;  
   
   
      // her skal vi også disable de menupunkter DBK ikke kan bruge  
       menuNatxpressReturDAO1.Enabled := false;  
       menuNatxpressReturfraKunde1.Enabled := false;  
   
       menuPakkeshop1.Enabled := false;  
       menuPakkeshopRetur1.Enabled := false;  
   
       if SpecialVersionScanningtype = 'A' then  
       begin  
          Scanningtype := '1';  
       end  
       else  
       begin  
         Scanningtype := SpecialVersionScanningtype;  
       end;  
748      end;      end;
749    
750      if (SpecialVersionSted = '01')      if (SpecialVersionSted = '01')
# Line 977  begin Line 853  begin
853          Application.Terminate;          Application.Terminate;
854      end;      end;
855    
856      if TjekUrls = '1' then    // Tjekker urls      if Config.TjekUrls = '1' then    // Tjekker urls
857      begin      begin
858          TjekkerUrls();          TjekkerUrls();
859          if TjekUrls = '-' then  // så var der fejl i url - så vi stopper her          if Config.TjekUrls = '-' then  // så var der fejl i url - så vi stopper her
860          begin          begin
861             PlaySound(PWideChar(AlarmLyd));             PlaySound(PWideChar(Config.AlarmLyd));
862             MainForm.Color := clRed;             MainForm.Color := clRed;
863             RutenummerST.Caption := '';             RutenummerST.Caption := '';
864             BoghandlerNavnST.Caption := 'Fejl i urls';             BoghandlerNavnST.Caption := 'Fejl i urls';
# Line 1038  begin Line 914  begin
914        radioLillePakke.Checked := true;        radioLillePakke.Checked := true;
915      end;      end;
916    
917      if TestFunktionen = '1' then      if Config.TestFunktionen = '1' then
918      begin      begin
919        Testforbindelsen1.Visible := true;        Testforbindelsen1.Visible := true;
920        Testprinter1.Visible := true;        Testprinter1.Visible := true;
921        Testlyd1.Visible := true;        Testlyd1.Visible := true;
922        Testlyd2.Visible := true;        Testlyd2.Visible := true;
923      end      end
924      else if TestFunktionen = '2' then      else if Config.TestFunktionen = '2' then
925      begin      begin
926        Testforbindelsen1.Enabled := false;        Testforbindelsen1.Enabled := false;
927        Testprinter1.Enabled := false;        Testprinter1.Enabled := false;
# Line 1060  begin Line 936  begin
936        Testlyd2.Visible := false;        Testlyd2.Visible := false;
937      end;      end;
938    
     if not FileExists(AlarmLyd) then  
     begin  
       AlarmLyd := '';  
     end;  
   
     if not FileExists(ScannetOkLyd) then  
     begin  
       ScannetOkLyd := '';  
     end;  
939    
     if not FileExists(ScannetOkStorLyd) then  
     begin  
       ScannetOkStorLyd := '';  
     end;  
940    
941    
     if not FileExists(ScannetOkTilTjekkodeLyd) then  
     begin  
       ScannetOkTilTjekkodeLyd := '';  
     end;  
942    
943        LabelPrint := TLabelPrint.Create( self, Config, Config.PrinterNavn );
944        LabelPrint.CheckPrintQue('Opstart', Config.PrinterNavn);
   
     LabelPrint := TLabelPrint.Create( self, Config, PrinterNavn );  
     LabelPrint.CheckPrintQue('Opstart', PrinterNavn);  
945    
946    finally    finally
947      Free;      Free;
# Line 1450  begin Line 1306  begin
1306      if (Length(Stregkode) > 8) then      if (Length(Stregkode) > 8) then
1307      begin      begin
1308        // Her skal vi så forespørge pakketype på serveren udfra stregkode feltet        // Her skal vi så forespørge pakketype på serveren udfra stregkode feltet
1309        URLStr := Format(UrlFindPakketype,[Stregkode]);        URLStr := Format(Config.UrlFindPakketype,[Stregkode]);
1310        try        try
1311          //raise EIdConnClosedGracefully.Create('test');   // KUN TIL TEST          //raise EIdConnClosedGracefully.Create('test');   // KUN TIL TEST
1312          WebSvar := IdHTTP1.Get(URLStr);          WebSvar := IdHTTP1.Get(URLStr);
# Line 1619  begin Line 1475  begin
1475              BoghandlerStregkode := Stregkode;              BoghandlerStregkode := Stregkode;
1476              PakkeshopText1.Caption := 'Tjekkode';              PakkeshopText1.Caption := 'Tjekkode';
1477    
1478              PlaySound(PWideChar(ScannetOkTilTjekkodeLyd));              PlaySound(PWideChar(Config.ScannetOkTilTjekkodeLyd));
1479    
1480             end             end
1481            else            else
# Line 1637  begin Line 1493  begin
1493             BoghandlerTjekkode := Stregkode;             BoghandlerTjekkode := Stregkode;
1494             PakkeshopText1.Caption := 'Stregkode';             PakkeshopText1.Caption := 'Stregkode';
1495             if (menuPakkeshop1.Checked) then             if (menuPakkeshop1.Checked) then
1496                MainForm.Color := TUtils.HexToTColor(FarvePakkeshoplevering);                MainForm.Color := TUtils.HexToTColor(Config.FarvePakkeshoplevering);
1497             if (menuNatXpress1.Checked) then             if (menuNatXpress1.Checked) then
1498                MainForm.Color := TUtils.HexToTColor(FarveNormal);                MainForm.Color := TUtils.HexToTColor(Config.FarveNormal);
1499             btnNulstil.Visible := false;             btnNulstil.Visible := false;
1500           end           end
1501          else          else
# Line 1693  begin Line 1549  begin
1549              tjekkodemangler := pos('Tjekkode mangler', Kommentar);              tjekkodemangler := pos('Tjekkode mangler', Kommentar);
1550              if (pakkeErScannet > 0) or (pakkeForkertSted > 0) or (tjekkodemangler > 0) then              if (pakkeErScannet > 0) or (pakkeForkertSted > 0) or (tjekkodemangler > 0) then
1551              begin              begin
1552                PlaySound(PWideChar(AlarmLyd));                PlaySound(PWideChar(Config.AlarmLyd));
1553                btnNulstil.Visible := true;                btnNulstil.Visible := true;
1554                MainForm.Color := clRed;                MainForm.Color := clRed;
1555              end;              end;
# Line 1703  begin Line 1559  begin
1559              MainForm.Color := TUtils.HexToTColor(Farve);              MainForm.Color := TUtils.HexToTColor(Farve);
1560              if menuStorePakker.Checked then              if menuStorePakker.Checked then
1561              begin              begin
1562                PlaySound(PWideChar(ScannetOkStorLyd));                PlaySound(PWideChar(Config.ScannetOkStorLyd));
1563              end              end
1564              else              else
1565              begin              begin
1566                PlaySound(PWideChar(ScannetOkLyd));                PlaySound(PWideChar(Config.ScannetOkLyd));
1567              end;              end;
1568              btnNulstil.Visible := false;              btnNulstil.Visible := false;
1569            end            end
# Line 1716  begin Line 1572  begin
1572              MainForm.Color := TUtils.HexToTColor(Farve);              MainForm.Color := TUtils.HexToTColor(Farve);
1573              if menuStorePakker.Checked then              if menuStorePakker.Checked then
1574              begin              begin
1575                PlaySound(PWideChar(ScannetOkStorLyd));                PlaySound(PWideChar(Config.ScannetOkStorLyd));
1576              end              end
1577              else              else
1578              begin              begin
1579                PlaySound(PWideChar(ScannetOkLyd));                PlaySound(PWideChar(Config.ScannetOkLyd));
1580              end;              end;
1581              btnNulstil.Visible := false;              btnNulstil.Visible := false;
1582            end            end
# Line 1743  begin Line 1599  begin
1599              begin              begin
1600                if menuStorePakker.Checked then                if menuStorePakker.Checked then
1601                begin                begin
1602                  PlaySound(PWideChar(ScannetOkStorLyd));                  PlaySound(PWideChar(Config.ScannetOkStorLyd));
1603                end                end
1604                else                else
1605                begin                begin
1606                  PlaySound(PWideChar(ScannetOkLyd));                  PlaySound(PWideChar(Config.ScannetOkLyd));
1607                end;                end;
1608                InitLillePakke();                InitLillePakke();
1609              end;              end;
# Line 1801  var Line 1657  var
1657    WebSvar : String;    WebSvar : String;
1658    URLStr : String;    URLStr : String;
1659  begin  begin
1660    if UrlSendPrograminfo <> '' then    if Config.UrlSendPrograminfo <> '' then
1661    begin    begin
1662      URLStr := Format(UrlSendPrograminfo,[ExtractFileName(ParamStr(0)), Sted, Scanningtype, Infotype, Info]);      URLStr := Format(Config.UrlSendPrograminfo,[ExtractFileName(ParamStr(0)), Sted, Scanningtype, Infotype, Info]);
1663      try      try
1664        //raise EIdConnClosedGracefully.Create('test');   // KUN TIL TEST        //raise EIdConnClosedGracefully.Create('test');   // KUN TIL TEST
1665        WebSvar := IdHTTP1.Get(URLStr);        WebSvar := IdHTTP1.Get(URLStr);
# Line 1816  begin Line 1672  begin
1672        ShowMessage(logTekst);        ShowMessage(logTekst);
1673        SkrivScanningLogFil(logTekst);        SkrivScanningLogFil(logTekst);
1674        // Vi nulstiller lige url feltet så rutinen ikke kaldes igen i forbindelse med lukning af programmet        // Vi nulstiller lige url feltet så rutinen ikke kaldes igen i forbindelse med lukning af programmet
1675        UrlSendPrograminfo := '';        Config.UrlSendPrograminfo := '';
1676        Application.Terminate;        Application.Terminate;
1677      end;      end;
1678      end;      end;
# Line 1840  begin Line 1696  begin
1696        for i := ListBox2.items.count-1 downto 0 do        for i := ListBox2.items.count-1 downto 0 do
1697          if pos(StregKode,ListBox2.items[i]) <> 0 then          if pos(StregKode,ListBox2.items[i]) <> 0 then
1698          begin          begin
1699              wrkAntalSenere := 0;//initial Value
1700    
1701            // Ajourføring af tæller for manglende pakker (scanninger)            // Ajourføring af tæller for manglende pakker (scanninger)
1702            wrkAntal := StaticTextManglendePakker.Caption;            wrkAntal := StaticTextManglendePakker.Caption;
# Line 2075  var Line 1932  var
1932    pakkestorrelse : String;    pakkestorrelse : String;
1933    PrintNyLabelInteger : Integer;    PrintNyLabelInteger : Integer;
1934    
1935    PakkeshopLabel: TPakkeshopLabel;    PakkeshopLabel: TLabelData;
1936  begin  begin
1937    if radioStorPakke.Checked then    if radioStorPakke.Checked then
1938    begin    begin
# Line 2093  begin Line 1950  begin
1950       begin       begin
1951         BoghandlerTjekkode := '-1';         BoghandlerTjekkode := '-1';
1952       end;       end;
1953       URLStr := Format(UrlNormal,[Sted, PakkeNr, BoghandlerNummer, BoghandlerTjekkode]);       URLStr := Format(Config.UrlNormal,[Sted, PakkeNr, BoghandlerNummer, BoghandlerTjekkode]);
1954    end    end
1955    else if menuNatxpressReturDAO1.Checked then    else if menuNatxpressReturDAO1.Checked then
1956    begin    begin
1957       URLStr := Format(UrlReturDAO,[Sted, PakkeNr, BoghandlerNummer, 'DAO', pakkestorrelse]);       URLStr := Format(Config.UrlReturDAO,[Sted, PakkeNr, BoghandlerNummer, 'DAO', pakkestorrelse]);
1958    end    end
1959    else if menuNatxpressReturfraKunde1.Checked then    else if menuNatxpressReturfraKunde1.Checked then
1960    begin    begin
1961       URLStr := Format(UrlReturBoghandler,[Sted, PakkeNr, BoghandlerNummer, 'Boghandler', pakkestorrelse]);       URLStr := Format(Config.UrlReturBoghandler,[Sted, PakkeNr, BoghandlerNummer, 'Boghandler', pakkestorrelse]);
1962    end    end
1963    else if menuDaoDirekte1.Checked then    else if menuDaoDirekte1.Checked then
1964    begin    begin
1965       URLStr := Format(UrlBudlevering,[Sted, PakkeNr, 'bud', pakkestorrelse]);       URLStr := Format(Config.UrlBudlevering,[Sted, PakkeNr, 'bud', pakkestorrelse]);
1966    end    end
1967    else if menuPakkeshop1.Checked then    else if menuPakkeshop1.Checked then
1968    begin    begin
1969       URLStr := Format(UrlPakkeshoplevering,[Sted, PakkeNr, PakkeshopTjekkode]);       URLStr := Format(Config.UrlPakkeshoplevering,[Sted, PakkeNr, PakkeshopTjekkode]);
1970    end    end
1971    else if menuPakkeshopRetur1.Checked then    else if menuPakkeshopRetur1.Checked then
1972    begin    begin
1973       URLStr := Format(UrlReturPakkeshop,[Sted, PakkeNr]);       URLStr := Format(Config.UrlReturPakkeshop,[Sted, PakkeNr]);
1974    end    end
1975    else if menuIndlevering.Checked then    else if menuIndlevering.Checked then
1976    begin    begin
1977      URLStr := Format(UrlIndleveringsPakke,[Sted, PakkeNr]);      URLStr := Format(Config.UrlIndleveringsPakke,[Sted, PakkeNr]);
1978    end    end
1979    else    else
1980    begin    begin
# Line 2126  begin Line 1983  begin
1983    
1984    if chkForstorTilDirekte.Checked then  // Denne skal være efter if/else kæden da den overrider de øvrige URL'er    if chkForstorTilDirekte.Checked then  // Denne skal være efter if/else kæden da den overrider de øvrige URL'er
1985    begin    begin
1986      URLStr := Format(URLOmdirigerTilPakkeshop,[Sted, PakkeNr]);      URLStr := Format(Config.URLOmdirigerTilPakkeshop,[Sted, PakkeNr]);
1987    end;    end;
1988    
1989    try    try
# Line 2184  begin Line 2041  begin
2041       if (Kommentar = 'Ok') then       if (Kommentar = 'Ok') then
2042       begin       begin
2043         PrintNyLabel := True; //Indleveringskode vil ALTID udskrive label         PrintNyLabel := True; //Indleveringskode vil ALTID udskrive label
2044         PakkeshopLabel := TPakkeshopLabel.Create( XMLDocument1 ); //Opret struct og parse xml doc         PakkeshopLabel := TLabelData.Create( XMLDocument1 ); //Opret struct og parse xml doc
2045         RuteNummer := PakkeshopLabel.Koreliste + '  ->  ' +  PakkeshopLabel.PakkeshopTurid;         RuteNummer := PakkeshopLabel.Koreliste + '  ->  ' +  PakkeshopLabel.PakkeshopTurid;
2046         Stregkode := PakkeshopLabel.Stregkode;         Stregkode := PakkeshopLabel.Stregkode;
2047    
2048         LabelPrint.PrintPakkeshopLabel( PakkeshopLabel );         LabelPrint.PrintFuldPakkeLabel( PakkeshopLabel );
2049         chkForstorTilDirekte.Checked := false;         chkForstorTilDirekte.Checked := false;
2050    
2051       end;       end;
# Line 2233  begin Line 2090  begin
2090      begin      begin
2091        if (Leveringssted <> BladhusStedKode[BladhusSted]) and (BladhusStedKode[BladhusSted] <> 'DBK') then        if (Leveringssted <> BladhusStedKode[BladhusSted]) and (BladhusStedKode[BladhusSted] <> 'DBK') then
2092        begin        begin
2093            Kommentar := Kommentar + ' Pakke burde være hos DAO Distribution';            Kommentar := Kommentar + ' Pakke burde være hos ' + Leveringssted;
2094            PrintNyLabel := False;            //PrintNyLabel := False; //ved fuld-daekning / X-ruter skal vi altid skrive label alligevel
2095        end;        end;
2096      end      end
2097      else if (menuDaoDirekte1.Checked) and (Leveringssted <> Sted) then      else if (menuDaoDirekte1.Checked) and (Leveringssted <> Sted) And (Leveringssted <> '') then
2098      begin      begin
2099         if (Leveringssted = 'E') and (Sted = 'DBK') then        Kommentar := Kommentar + ' Pakke burde være hos ' + Leveringssted;
2100         begin        //PrintNyLabel := False;  //ved fuld-daekning / X-ruter skal vi altid skrive label alligevel
           // Det er ok at DBK scanner pakker til E     (Schenker)  
        end  
        else  
        begin  
           Kommentar := Kommentar + ' Pakke burde være hos DAO Distribution';  
           PrintNyLabel := False;  
        end;  
2101      end;      end;
2102    except on e:exception do    except on e:exception do
2103      raise exception.CreateFmt('Fejl i XML-format: %s',[e.Message]);      raise exception.CreateFmt('Fejl i XML-format: %s',[e.Message]);
# Line 2392  begin Line 2242  begin
2242       begin       begin
2243          PrintNyLabel := false;          PrintNyLabel := false;
2244    
2245          PlaySound(PWideChar(AlarmLyd));          PlaySound(PWideChar(Config.AlarmLyd));
2246          MainForm.Color := clRed;          MainForm.Color := clRed;
2247          btnNulstil.Visible := true;          btnNulstil.Visible := true;
2248    
# Line 2412  begin Line 2262  begin
2262            logTekst := RightStr(List1Msg, Length(List1Msg)-10);            logTekst := RightStr(List1Msg, Length(List1Msg)-10);
2263            SkrivScanningLogFil(logTekst);            SkrivScanningLogFil(logTekst);
2264    
2265            if (PrinterNavn = 'Ingen') then            if (Config.PrinterNavn = 'Ingen') then
2266            begin            begin
2267               PrintNyLabel := false;               PrintNyLabel := false;
2268            end;            end;
2269    
2270            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
2271            begin            begin
2272              PlaySound(PWideChar(AlarmLyd));              PlaySound(PWideChar(Config.AlarmLyd));
2273              MainForm.Color := clRed;              MainForm.Color := clRed;
2274              btnNulstil.Visible := true;              btnNulstil.Visible := true;
2275            end;            end;
# Line 2445  begin Line 2295  begin
2295    
2296            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
2297            begin            begin
2298              PlaySound(PWideChar(AlarmLyd));              PlaySound(PWideChar(Config.AlarmLyd));
2299              MainForm.Color := clRed;              MainForm.Color := clRed;
2300              btnNulstil.Visible := true;              btnNulstil.Visible := true;
2301            end;            end;
# Line 2514  begin Line 2364  begin
2364    end    end
2365    else    else
2366    begin    begin
2367      if ( (PrinterNavn <> 'Ingen') and (PrintNyLabel or chkAltidPrintLabel.Checked) and (RuteNummer <> 'Ukendt') or (RuteNummer = 'Rutenr')) then      if ( (Config.PrinterNavn <> 'Ingen') and (PrintNyLabel or chkAltidPrintLabel.Checked) and (RuteNummer <> 'Ukendt') or (RuteNummer = 'Rutenr')) then
2368      begin      begin
2369        logTekst := 'Printer label type ';        logTekst := 'Printer label type ';
2370        if (chkAltidPrintLabel.Checked) then        if (chkAltidPrintLabel.Checked) then
# Line 2639  begin Line 2489  begin
2489      // Tjekker UrlNormal      // Tjekker UrlNormal
2490      if PanelValg1.Enabled = true then      if PanelValg1.Enabled = true then
2491      begin      begin
2492        TjekkerEnkeltUrl('UrlNormal', UrlNormal, urlFejl);        TjekkerEnkeltUrl('UrlNormal', Config.UrlNormal, urlFejl);
2493      end;      end;
2494    
2495      // Tjekker UrlReturDAO      // Tjekker UrlReturDAO
2496      if PanelValg2.Enabled = true then      if PanelValg2.Enabled = true then
2497      begin      begin
2498        TjekkerEnkeltUrl('UrlReturDAO', UrlReturDAO, urlFejl);        TjekkerEnkeltUrl('UrlReturDAO', Config.UrlReturDAO, urlFejl);
2499      end;      end;
2500    
2501      // Tjekker UrlReturBoghandler      // Tjekker UrlReturBoghandler
2502      if PanelValg3.Enabled = true then      if PanelValg3.Enabled = true then
2503      begin      begin
2504        TjekkerEnkeltUrl('UrlReturBoghandler', UrlReturBoghandler, urlFejl);        TjekkerEnkeltUrl('UrlReturBoghandler', Config.UrlReturBoghandler, urlFejl);
2505      end;      end;
2506    
2507      // Tjekker UrlBudlevering      // Tjekker UrlBudlevering
2508      if PanelValg4.Enabled = true then      if PanelValg4.Enabled = true then
2509      begin      begin
2510        TjekkerEnkeltUrl('UrlBudlevering', UrlBudlevering, urlFejl);        TjekkerEnkeltUrl('UrlBudlevering', Config.UrlBudlevering, urlFejl);
2511      end;      end;
2512    
2513      // Tjekker UrlPakkeshoplevering      // Tjekker UrlPakkeshoplevering
2514      if PanelValg5.Enabled = true then      if PanelValg5.Enabled = true then
2515      begin      begin
2516        TjekkerEnkeltUrl('UrlPakkeshoplevering', UrlPakkeshoplevering, urlFejl);        TjekkerEnkeltUrl('UrlPakkeshoplevering', Config.UrlPakkeshoplevering, urlFejl);
2517      end;      end;
2518    
2519      // Tjekker UrlReturPakkeshop      // Tjekker UrlReturPakkeshop
2520      if PanelValg6.Enabled = true then      if PanelValg6.Enabled = true then
2521      begin      begin
2522        TjekkerEnkeltUrl('UrlReturPakkeshop', UrlReturPakkeshop, urlFejl);        TjekkerEnkeltUrl('UrlReturPakkeshop', Config.UrlReturPakkeshop, urlFejl);
2523      end;      end;
2524    
2525      // Tjekker UrlManglendeScanninger      // Tjekker UrlManglendeScanninger
2526      if (PanelValg1.Enabled = true) or (PanelValg4.Enabled = true) then      if (PanelValg1.Enabled = true) or (PanelValg4.Enabled = true) then
2527      begin      begin
2528        TjekkerEnkeltUrl('UrlManglendeScanninger', UrlManglendeScanninger, urlFejl);        TjekkerEnkeltUrl('UrlManglendeScanninger', Config.UrlManglendeScanninger, urlFejl);
2529      end;      end;
2530    
2531      // Tjekker UrlPakkeshopManglendeScanninger      // Tjekker UrlPakkeshopManglendeScanninger
2532      if PanelValg5.Enabled = true then      if PanelValg5.Enabled = true then
2533      begin      begin
2534        TjekkerEnkeltUrl('UrlPakkeshopManglendeScanninger', UrlPakkeshopManglendeScanninger, urlFejl);        TjekkerEnkeltUrl('UrlPakkeshopManglendeScanninger', Config.UrlPakkeshopManglendeScanninger, urlFejl);
2535      end;      end;
2536    
2537      // Tjekker UrlPakkeshopManglendeReturScanninger      // Tjekker UrlPakkeshopManglendeReturScanninger
2538      if PanelValg6.Enabled = true then      if PanelValg6.Enabled = true then
2539      begin      begin
2540        TjekkerEnkeltUrl('UrlPakkeshopManglendeReturScanninger', UrlPakkeshopManglendeReturScanninger, urlFejl);        TjekkerEnkeltUrl('UrlPakkeshopManglendeReturScanninger', Config.UrlPakkeshopManglendeReturScanninger, urlFejl);
2541      end;      end;
2542    
2543     // Tjekker UrlIndleveringsPakke og UrlIndleveringsPakkeManglendeScanninger     // Tjekker UrlIndleveringsPakke og UrlIndleveringsPakkeManglendeScanninger
2544      if PanelValg7.Enabled = true then      if PanelValg7.Enabled = true then
2545      begin      begin
2546        TjekkerEnkeltUrl('UrlIndleveringsPakke', UrlIndleveringsPakke, urlFejl);        TjekkerEnkeltUrl('UrlIndleveringsPakke', Config.UrlIndleveringsPakke, urlFejl);
2547        TjekkerEnkeltUrl('UrlIndleveringsPakkeManglendeScanninger', UrlIndleveringsPakkeManglendeScanninger, urlFejl);        TjekkerEnkeltUrl('UrlIndleveringsPakkeManglendeScanninger', Config.UrlIndleveringsPakkeManglendeScanninger, urlFejl);
2548      end;      end;
2549    
2550      // Tjekker UrlEKLoverforsel      // Tjekker UrlEKLoverforsel
2551      if PanelValg1.Enabled = true then      if PanelValg1.Enabled = true then
2552      begin      begin
2553        TjekkerEnkeltUrl('UrlEKLoverforsel', UrlEKLoverforsel, urlFejl);        TjekkerEnkeltUrl('UrlEKLoverforsel', Config.UrlEKLoverforsel, urlFejl);
2554      end;      end;
2555    
2556    
2557      // Tjekker UrlEKLoverforselPakkeshop      // Tjekker UrlEKLoverforselPakkeshop
2558      if PanelValg5.Enabled = true then      if PanelValg5.Enabled = true then
2559      begin      begin
2560        TjekkerEnkeltUrl('UrlEKLoverforselPakkeshop', UrlEKLoverforselPakkeshop, urlFejl);        TjekkerEnkeltUrl('UrlEKLoverforselPakkeshop', Config.UrlEKLoverforselPakkeshop, urlFejl);
2561      end;      end;
2562    
2563    
2564      // Tjekker UrlFindPakketype      // Tjekker UrlFindPakketype
2565      TjekkerEnkeltUrl('UrlFindPakketype', UrlFindPakketype, urlFejl);      TjekkerEnkeltUrl('UrlFindPakketype', Config.UrlFindPakketype, urlFejl);
2566    
2567      // Tjekker UrlSendPrograminfo      // Tjekker UrlSendPrograminfo
2568      TjekkerEnkeltUrl('UrlSendPrograminfo', UrlSendPrograminfo, urlFejl);      TjekkerEnkeltUrl('UrlSendPrograminfo', Config.UrlSendPrograminfo, urlFejl);
2569    
2570    
2571    
# Line 2724  begin Line 2574  begin
2574      SkrivScanningLogFil(logTekst);      SkrivScanningLogFil(logTekst);
2575    
2576    Except    Except
2577      TjekUrls := '-';   // markerer at der var fejl      Config.TjekUrls := '-';   // markerer at der var fejl
2578    
2579    end;    end;
2580  end;  end;
# Line 2744  begin Line 2594  begin
2594      inc(urlFejl);   // Optæller antal fejl      inc(urlFejl);   // Optæller antal fejl
2595      logTekst := UrlNavn + ' svarer ikke: ' + Url;      logTekst := UrlNavn + ' svarer ikke: ' + Url;
2596      ListBox1.Items.Insert(0,TimeToStr(now) + ': ' + logTekst);      ListBox1.Items.Insert(0,TimeToStr(now) + ': ' + logTekst);
2597      if TjekUrls = '1' then      if Config.TjekUrls = '1' then
2598      begin      begin
2599        logTekst := logTekst + crlf + crlf + 'Programmet afsluttes... ';        logTekst := logTekst + crlf + crlf + 'Programmet afsluttes... ';
2600      end;      end;
2601    
2602      SkrivScanningLogFil(logTekst);      SkrivScanningLogFil(logTekst);
2603    
2604      if TjekUrls = '1' then      if Config.TjekUrls = '1' then
2605      begin      begin
2606        ShowMessage(logTekst);        ShowMessage(logTekst);
2607        UrlSendPrograminfo := '';   // Her sletter vi lige url, så der ikke forsøges at sende besked ved program slut        Config.UrlSendPrograminfo := '';   // Her sletter vi lige url, så der ikke forsøges at sende besked ved program slut
2608        Application.Terminate;        Application.Terminate;
2609    
2610        raise Exception.Create('UrlFejl');        raise Exception.Create('UrlFejl');
# Line 2835  begin Line 2685  begin
2685    if BoghandlerNavnST.Caption = 'Fejl i forbindelse til server' then    if BoghandlerNavnST.Caption = 'Fejl i forbindelse til server' then
2686    begin    begin
2687       ShowMessage('Programmet afbrydes...');       ShowMessage('Programmet afbrydes...');
2688       UrlSendPrograminfo := '';   // Her sletter vi lige url, så der ikke forsøges at sende besked ved program slut       Config.UrlSendPrograminfo := '';   // Her sletter vi lige url, så der ikke forsøges at sende besked ved program slut
2689       Application.Terminate;       Application.Terminate;
2690       exit;       exit;
2691    end;    end;
# Line 2937  var Line 2787  var
2787    Leveringssted : String;    Leveringssted : String;
2788    orgTjekUrls : String;    orgTjekUrls : String;
2789  begin  begin
2790    orgTjekUrls := TjekUrls;    orgTjekUrls := Config.TjekUrls;
2791    if (TjekUrls = '1') or (TjekUrls = '2') then    if (Config.TjekUrls = '1') or (Config.TjekUrls = '2') then
2792    begin    begin
2793      TjekkerUrls();      TjekkerUrls();
2794    end;    end;
2795    if TjekUrls = '-' then    if Config.TjekUrls = '-' then
2796    begin    begin
2797      //ShowMessage('Der var fejl i een eller flere urls - se logvinduet');      //ShowMessage('Der var fejl i een eller flere urls - se logvinduet');
2798      RuteNummer := '';      RuteNummer := '';
# Line 2951  begin Line 2801  begin
2801      Koreliste := '';      Koreliste := '';
2802      UpdateScreen(RuteNummer, Kommentar, BoghandlerNavn, Koreliste, '');      UpdateScreen(RuteNummer, Kommentar, BoghandlerNavn, Koreliste, '');
2803      // Her kommer en alarm og rød skærm      // Her kommer en alarm og rød skærm
2804      PlaySound(PWideChar(AlarmLyd));      PlaySound(PWideChar(Config.AlarmLyd));
2805      MainForm.Color := clRed;      MainForm.Color := clRed;
2806      btnNulstil.Visible := true;      btnNulstil.Visible := true;
2807    end    end
# Line 2967  begin Line 2817  begin
2817      PrintLabel(RuteNummer, Kommentar, BoghandlerNavn, Koreliste, SmsKode, DBKbane, Leveringssted, Falsk);      PrintLabel(RuteNummer, Kommentar, BoghandlerNavn, Koreliste, SmsKode, DBKbane, Leveringssted, Falsk);
2818      FocusControl(StregkodeST);      FocusControl(StregkodeST);
2819    end;    end;
2820    TjekUrls := orgTjekUrls;    Config.TjekUrls := orgTjekUrls;
2821    
2822  end;  end;
2823    
# Line 2992  begin Line 2842  begin
2842    begin    begin
2843      ShowMessage('Der er ikke installeret en printer på denne PC.');      ShowMessage('Der er ikke installeret en printer på denne PC.');
2844    end    end
2845    else if PrinterNavn = 'Ingen' then    else if Config.PrinterNavn = 'Ingen' then
2846    begin    begin
2847      ShowMessage('Der er fravalgt printer i dette program.');      ShowMessage('Der er fravalgt printer i dette program.');
2848    end    end
# Line 3003  begin Line 2853  begin
2853      DBKbane := '999';      DBKbane := '999';
2854      Leveringssted := 'XXX';      Leveringssted := 'XXX';
2855      PrintLabel(RuteNummer, Kommentar, BoghandlerNavn, Koreliste, SmsKode, DBKbane, Leveringssted, Falsk);      PrintLabel(RuteNummer, Kommentar, BoghandlerNavn, Koreliste, SmsKode, DBKbane, Leveringssted, Falsk);
2856      LabelPrint.CheckPrintQue('Test', PrinterNavn);      LabelPrint.CheckPrintQue('Test', Config.PrinterNavn);
2857    end;    end;
2858    FocusControl(StregkodeST);    FocusControl(StregkodeST);
2859  end;  end;
2860    
2861  procedure TMainForm.Timer1Timer(Sender: TObject);  procedure TMainForm.Timer1Timer(Sender: TObject);
2862  begin  begin
2863    if (TjekPrinter = '1') then    if (Config.TjekPrinter = '1') then
2864    begin    begin
2865      LabelPrint.CheckPrintQue('Timer', PrinterNavn);      LabelPrint.CheckPrintQue('Timer', Config.PrinterNavn);
2866    end    end
2867    else    else
2868    begin    begin
# Line 3066  begin Line 2916  begin
2916      tekst := tekst+crlf+crlf;      tekst := tekst+crlf+crlf;
2917      tekst := tekst+crlf+crlf+'          **********  DETTE ER KUN EN TEST VERSION  **********';      tekst := tekst+crlf+crlf+'          **********  DETTE ER KUN EN TEST VERSION  **********';
2918      tekst := tekst+crlf+crlf;      tekst := tekst+crlf+crlf;
2919      tekst := tekst+crlf+crlf+'Url: '+url;      tekst := tekst+crlf+crlf+'Url: ' + Url;
2920    end;    end;
2921    
2922    MessageBox(Handle, PWideChar(tekst), 'Information', MB_OK);    MessageBox(Handle, PWideChar(tekst), 'Information', MB_OK);
# Line 3207  begin Line 3057  begin
3057        menuAutomatiskTjekkodeStyring.Enabled := true;        menuAutomatiskTjekkodeStyring.Enabled := true;
3058        btnNulstil.Visible := false;        btnNulstil.Visible := false;
3059        menuNatXpress1.Checked := true;        menuNatXpress1.Checked := true;
3060        InitForm(FarveNormal,TitelNormal,UrlNormal);        InitForm(Config.FarveNormal,Config.TitelNormal,Config.UrlNormal);
3061        PanelValg1.Color := clGreen;        PanelValg1.Color := clGreen;
3062        PanelValg1.Font.Color := clWhite;        PanelValg1.Font.Color := clWhite;
3063    
# Line 3243  begin Line 3093  begin
3093        menuAutomatiskTjekkodeStyring.Enabled := false;        menuAutomatiskTjekkodeStyring.Enabled := false;
3094        menuNatxpressReturDAO1.Checked := true;        menuNatxpressReturDAO1.Checked := true;
3095        btnNulstil.Visible := false;        btnNulstil.Visible := false;
3096        InitForm(FarveReturDAO,TitelReturDAO,UrlReturDAO);        InitForm(Config.FarveReturDAO, Config.TitelReturDAO, Config.UrlReturDAO);
3097        PanelValg2.Color := clGreen;        PanelValg2.Color := clGreen;
3098        PanelValg2.Font.Color := clWhite;        PanelValg2.Font.Color := clWhite;
3099    
# Line 3274  begin Line 3124  begin
3124        menuAutomatiskTjekkodeStyring.Enabled := false;        menuAutomatiskTjekkodeStyring.Enabled := false;
3125        menuNatxpressReturfraKunde1.Checked := true;        menuNatxpressReturfraKunde1.Checked := true;
3126        btnNulstil.Visible := false;        btnNulstil.Visible := false;
3127        InitForm(FarveReturBoghandler,TitelReturBoghandler,UrlReturBoghandler);        InitForm(Config.FarveReturBoghandler, Config.TitelReturBoghandler, Config.UrlReturBoghandler);
3128        PanelValg3.Color := clGreen;        PanelValg3.Color := clGreen;
3129        PanelValg3.Font.Color := clWhite;        PanelValg3.Font.Color := clWhite;
3130    
# Line 3304  begin Line 3154  begin
3154        menuAutomatiskTjekkodeStyring.Enabled := false;        menuAutomatiskTjekkodeStyring.Enabled := false;
3155        menuDaoDirekte1.Checked := true;        menuDaoDirekte1.Checked := true;
3156        btnNulstil.Visible := false;        btnNulstil.Visible := false;
3157        InitForm(FarveBudlevering,TitelBudlevering,UrlBudlevering);        InitForm(Config.FarveBudlevering, Config.TitelBudlevering, Config.UrlBudlevering);
3158        PanelValg4.Color := clGreen;        PanelValg4.Color := clGreen;
3159        PanelValg4.Font.Color := clWhite;        PanelValg4.Font.Color := clWhite;
3160    
# Line 3344  begin Line 3194  begin
3194        menuAutomatiskTjekkodeStyring.Enabled := true;        menuAutomatiskTjekkodeStyring.Enabled := true;
3195        menuPakkeshop1.Checked := true;        menuPakkeshop1.Checked := true;
3196        btnNulstil.Visible := false;        btnNulstil.Visible := false;
3197        InitForm(FarvePakkeshoplevering,TitelPakkeshoplevering,UrlPakkeshoplevering);        InitForm(Config.FarvePakkeshoplevering, Config.TitelPakkeshoplevering, Config.UrlPakkeshoplevering);
3198        PanelValg5.Color := clGreen;        PanelValg5.Color := clGreen;
3199        PanelValg5.Font.Color := clWhite;        PanelValg5.Font.Color := clWhite;
3200    
# Line 3384  begin Line 3234  begin
3234        menuAutomatiskTjekkodeStyring.Enabled := false;        menuAutomatiskTjekkodeStyring.Enabled := false;
3235        menuPakkeshopRetur1.Checked := true;        menuPakkeshopRetur1.Checked := true;
3236        btnNulstil.Visible := false;        btnNulstil.Visible := false;
3237        InitForm(FarveReturPakkeshop,TitelReturPakkeshop,UrlReturPakkeshop);        InitForm(Config.FarveReturPakkeshop, Config.TitelReturPakkeshop, Config.UrlReturPakkeshop);
3238        PanelValg6.Color := clGreen;        PanelValg6.Color := clGreen;
3239        PanelValg6.Font.Color := clWhite;        PanelValg6.Font.Color := clWhite;
3240    
# Line 3432  begin Line 3282  begin
3282        menuAutomatiskTjekkodeStyring.Enabled := false;        menuAutomatiskTjekkodeStyring.Enabled := false;
3283    
3284        btnNulstil.Visible := false;        btnNulstil.Visible := false;
3285        InitForm(FarveIndlevering, TitelIndlevering, UrlReturPakkeshop);        InitForm(Config.FarveIndlevering, Config.TitelIndlevering, Config.UrlReturPakkeshop);
3286        PanelValg7.Color := clGreen;        PanelValg7.Color := clGreen;
3287        PanelValg7.Font.Color := clWhite;        PanelValg7.Font.Color := clWhite;
3288    
# Line 3511  end; Line 3361  end;
3361    
3362  procedure TMainForm.Testlyd1Click(Sender: TObject);  procedure TMainForm.Testlyd1Click(Sender: TObject);
3363  begin  begin
3364     if AlarmLyd  <> '' then     if Config.AlarmLyd  <> '' then
3365     begin     begin
3366       PlaySound(PWideChar(AlarmLyd));       PlaySound(PWideChar(Config.AlarmLyd));
3367     end     end
3368     else     else
3369     begin     begin
# Line 3525  procedure TMainForm.Testlyd2Click(Sender Line 3375  procedure TMainForm.Testlyd2Click(Sender
3375  begin  begin
3376    if (PakkeshopText1.Caption = 'Tjekkode') then    if (PakkeshopText1.Caption = 'Tjekkode') then
3377    begin    begin
3378       if ScannetOkTilTjekkodeLyd  <> '' then       if Config.ScannetOkTilTjekkodeLyd  <> '' then
3379       begin       begin
3380         PlaySound(PWideChar(ScannetOkTilTjekkodeLyd));         PlaySound(PWideChar(Config.ScannetOkTilTjekkodeLyd));
3381       end       end
3382       else       else
3383       begin       begin
# Line 3537  begin Line 3387  begin
3387    end;    end;
3388    
3389    if menuSmaaPakker.Checked then    if menuSmaaPakker.Checked then
3390       if ScannetOkLyd  <> '' then       if Config.ScannetOkLyd  <> '' then
3391       begin       begin
3392         PlaySound(PWideChar(ScannetOkLyd));         PlaySound(PWideChar(Config.ScannetOkLyd));
3393       end       end
3394       else       else
3395       begin       begin
3396         MessageBox(Handle, PWideChar('Lyd fil ikke fundet (ScannetOkLyd)'), 'Information', MB_OK);         MessageBox(Handle, PWideChar('Lyd fil ikke fundet (ScannetOkLyd)'), 'Information', MB_OK);
3397       end;       end;
3398    if menuStorePakker.Checked then    if menuStorePakker.Checked then
3399       if ScannetOkStorLyd  <> '' then       if Config.ScannetOkStorLyd  <> '' then
3400       begin       begin
3401         PlaySound(PWideChar(ScannetOkStorLyd));         PlaySound(PWideChar(Config.ScannetOkStorLyd));
3402       end       end
3403       else       else
3404       begin       begin
# Line 3585  begin Line 3435  begin
3435      logTekst := 'Overfører de scannede pakker til EKL';      logTekst := 'Overfører de scannede pakker til EKL';
3436      SkrivScanningLogFil(logTekst);      SkrivScanningLogFil(logTekst);
3437      StedKode := Sted;      StedKode := Sted;
3438      URLStr := Format(UrlEKLoverforsel,[StedKode,Sted]);      URLStr := Format(Config.UrlEKLoverforsel,[StedKode,Sted]);
3439    
3440      if PanelValg5.Color = clGreen then      if PanelValg5.Color = clGreen then
3441      begin      begin
3442        URLStr := Format(UrlEKLoverforselPakkeshop,[StedKode,Sted]);        URLStr := Format(Config.UrlEKLoverforselPakkeshop,[StedKode,Sted]);
3443      end;      end;
3444    
3445    
# Line 3649  begin Line 3499  begin
3499      // Hvis der var fejl i overførslen skal dette fejlmeldes her      // Hvis der var fejl i overførslen skal dette fejlmeldes her
3500      if status = 'Fejl' then      if status = 'Fejl' then
3501      begin   // Her skal komme en alarm og rød skærm      begin   // Her skal komme en alarm og rød skærm
3502         PlaySound(PWideChar(AlarmLyd));         PlaySound(PWideChar(Config.AlarmLyd));
3503         MainForm.Color := clRed;         MainForm.Color := clRed;
3504         RutenummerST.Caption := 'EKL overførsel';         RutenummerST.Caption := 'EKL overførsel';
3505         BoghandlerNavnST.Caption := 'Fejl:';         BoghandlerNavnST.Caption := 'Fejl:';
# Line 4203  var Line 4053  var
4053    I: Integer;    I: Integer;
4054    stregkode, modtagernavn, modtageradresse, kommentar : string;    stregkode, modtagernavn, modtageradresse, kommentar : string;
4055    pakketype, tjekkodestatus : String;    pakketype, tjekkodestatus : String;
4056    pakketypeix, antalLiniefelter, antalFelterFundet, linienr : Integer;    antalLiniefelter, antalFelterFundet, linienr : Integer;
4057    //pakketyper : TStrings;    //pakketyper : TStrings;
4058    pakketyper : TDictionary<String, Integer>;    pakketyper : TDictionary<String, Integer>;
4059    tmpAntal : Integer;    tmpAntal : Integer;
4060    
4061     time, timeSamlet : TTimingHelper;
4062    
4063    
4064    antlin : Integer;    antlin : Integer;
# Line 4243  var Line 4094  var
4094    
4095      if (Scanningtype = '7') then      if (Scanningtype = '7') then
4096       begin       begin
4097        URLStr := Format(UrlIndleveringsPakkeManglendeScanninger, [StedKode]);        URLStr := Format(Config.UrlIndleveringsPakkeManglendeScanninger, [StedKode]);
4098       end       end
4099      else if (Scanningtype = '6') then      else if (Scanningtype = '6') then
4100       begin       begin
4101        URLStr := Format(UrlPakkeshopManglendeReturScanninger, [StedKode]);        URLStr := Format(Config.UrlPakkeshopManglendeReturScanninger, [StedKode]);
4102       end       end
4103      else if (Scanningtype = '5') then      else if (Scanningtype = '5') then
4104       begin       begin
4105        URLStr := Format(UrlPakkeshopManglendeScanninger, [StedKode]);        URLStr := Format(Config.UrlPakkeshopManglendeScanninger, [StedKode]);
4106       end       end
4107      else if (Scanningtype = '1') then      else if (Scanningtype = '1') then
4108       begin       begin
4109        URLStr := Format(UrlManglendeScanninger,[StedKode,'B2']);        URLStr := Format(Config.UrlManglendeScanninger,[StedKode,'B2']);
4110       end       end
4111      else if (Scanningtype = '4') then      else if (Scanningtype = '4') then
4112       begin       begin
4113        URLStr := Format(UrlManglendeScanninger,[StedKode,'A2']);    // Budleveringer        URLStr := Format(Config.UrlManglendeScanninger,[StedKode,'A2']);    // Budleveringer
4114       end       end
4115      else      else
4116       begin       begin
# Line 4267  var Line 4118  var
4118       end;       end;
4119  // 20150310: slut  // 20150310: slut
4120    
4121        time := TTimingHelper.create();        //DEBUG
4122        timeSamlet := TTimingHelper.create();        //DEBUG
4123    
4124      try      try
4125      //raise EIdConnClosedGracefully.Create('test');   // KUN TIL TEST      //raise EIdConnClosedGracefully.Create('test');   // KUN TIL TEST
4126  //    URLStr := string(Utf8Encode(URLStr));  //    URLStr := string(Utf8Encode(URLStr));
# Line 4289  var Line 4143  var
4143        end;        end;
4144      end;      end;
4145      try      try
4146          time.stop('HTTP Load');     //DEBUG
4147    
4148        XMLDocument1.LoadFromXML(WebSvar);        XMLDocument1.LoadFromXML(WebSvar);
4149    
4150          time.stop('XML Load');     //DEBUG
4151    
4152    
4153    
4154    
4155    
4156    
4157        antlin := 0;        antlin := 0;
4158        antlinIdag := 0;        antlinIdag := 0;
# Line 4333  var Line 4195  var
4195        SetLength(stregkoderMedTjekkodeArray, 0);    // reset fra tidligere brug        SetLength(stregkoderMedTjekkodeArray, 0);    // reset fra tidligere brug
4196        SetLength(stregkoderMedTjekkodeArray, antlin);  // sæt antal elementer i array        SetLength(stregkoderMedTjekkodeArray, antlin);  // sæt antal elementer i array
4197    
4198          time.stop('Antal Linier');//DEBUG
4199    
4200        Application.Processmessages; //Ugly Hack to improve User Experience when switching modes        Application.Processmessages; //Ugly Hack to improve User Experience when switching modes
4201    
# Line 4418  var Line 4281  var
4281        end;        end;
4282    
4283    
4284          time.stop('Fyld Listbox2');//DEBUG
4285    
4286    
4287        Application.Processmessages; //Ugly Hack to improve User Experience when switching modes        Application.Processmessages; //Ugly Hack to improve User Experience when switching modes
4288    
4289    
# Line 4537  var Line 4403  var
4403        end;        end;
4404      end;      end;
4405    
4406        time.stop('Done');//DEBUG
4407        timeSamlet.stop('SamletTid');//DEBUG
4408    
4409    
4410  end;  end;
4411    
4412  procedure TMainForm.IndlesScanningLogFil();  procedure TMainForm.IndlesScanningLogFil();
# Line 4712  begin Line 4582  begin
4582          ListBox1.Items.Insert(0,TimeToStr(now) + ': ' +'Fandt ingen linier til '+imorgenYmd+'.');          ListBox1.Items.Insert(0,TimeToStr(now) + ': ' +'Fandt ingen linier til '+imorgenYmd+'.');
4583          logTekst := 'Fandt ingen linier til '+imorgenYmd+'.';          logTekst := 'Fandt ingen linier til '+imorgenYmd+'.';
4584          SkrivScanningLogFil(logTekst);          SkrivScanningLogFil(logTekst);
4585          PlaySound(PWideChar(AlarmLyd));          PlaySound(PWideChar(Config.AlarmLyd));
4586        end;        end;
4587      end;      end;
4588    end    end
# Line 4721  begin Line 4591  begin
4591        ListBox1.Items.Insert(0,TimeToStr(now) + ': ' + 'Ruteskift fil '+filnavn+' findes ikke.');        ListBox1.Items.Insert(0,TimeToStr(now) + ': ' + 'Ruteskift fil '+filnavn+' findes ikke.');
4592        logTekst := 'Ruteskift fil '+filnavn+' findes ikke.';        logTekst := 'Ruteskift fil '+filnavn+' findes ikke.';
4593        SkrivScanningLogFil(logTekst);        SkrivScanningLogFil(logTekst);
4594        PlaySound(PWideChar(AlarmLyd));        PlaySound(PWideChar(Config.AlarmLyd));
4595    end;    end;
4596  end;  end;
4597    
# Line 4792  begin Line 4662  begin
4662          ListBox1.Items.Insert(0,TimeToStr(now) + ': ' +'Fandt ingen linier til '+imorgenYmd+'.');          ListBox1.Items.Insert(0,TimeToStr(now) + ': ' +'Fandt ingen linier til '+imorgenYmd+'.');
4663          logTekst := 'Fandt ingen linier til '+imorgenYmd+'.';          logTekst := 'Fandt ingen linier til '+imorgenYmd+'.';
4664          SkrivScanningLogFil(logTekst);          SkrivScanningLogFil(logTekst);
4665          PlaySound(PWideChar(AlarmLyd));          PlaySound(PWideChar(Config.AlarmLyd));
4666        end;        end;
4667      end;      end;
4668    end    end
# Line 4801  begin Line 4671  begin
4671        ListBox1.Items.Insert(0,TimeToStr(now) + ': ' + 'Kontrol fil '+filnavn+' findes ikke.');        ListBox1.Items.Insert(0,TimeToStr(now) + ': ' + 'Kontrol fil '+filnavn+' findes ikke.');
4672        logTekst := 'Kontrol fil '+filnavn+' findes ikke.';        logTekst := 'Kontrol fil '+filnavn+' findes ikke.';
4673        SkrivScanningLogFil(logTekst);        SkrivScanningLogFil(logTekst);
4674        PlaySound(PWideChar(AlarmLyd));        PlaySound(PWideChar(Config.AlarmLyd));
4675    end;    end;
4676  end;  end;
4677    
# Line 4859  procedure TMainForm.VisAlarmSkaerm(strMe Line 4729  procedure TMainForm.VisAlarmSkaerm(strMe
4729  begin  begin
4730    //ShowMessage('Ændring ikke tilladt');    //ShowMessage('Ændring ikke tilladt');
4731    // Her skal komme en 'rød skærm' alarm    // Her skal komme en 'rød skærm' alarm
4732    PlaySound(PWideChar(AlarmLyd));    PlaySound(PWideChar(Config.AlarmLyd));
4733    MainForm.Color := clRed;    MainForm.Color := clRed;
4734    
4735    

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

  ViewVC Help
Powered by ViewVC 1.1.20