/[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 3057 by torben, Tue Jun 28 12:39:35 2016 UTC revision 3123 by torben, Tue Oct 18 13:57:46 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 200  type Line 202  type
202    procedure LogMessage( msg : string);    procedure LogMessage( msg : string);
203    procedure SetPrinterstatusText( txt: string; alert: boolean);    procedure SetPrinterstatusText( txt: string; alert: boolean);
204    function GetFormObject() : TForm;    function GetFormObject() : TForm;
205      function GetXMLDocument() : TXMLDocument;
206        procedure chkEmballageRepareretClick(Sender: TObject);
207        procedure chkUdenforSpecifikationClick(Sender: TObject);
208    
209    
210    
# Line 209  type Line 214  type
214      SkrivLog : String;      SkrivLog : String;
215      Sted : String;      Sted : String;
216      StedNavn : String;      StedNavn : String;
     Url, UrlNormal, UrlReturDAO, UrlReturBoghandler, UrlBudlevering, UrlManglendeScanninger, UrlPakkeshoplevering,  
             UrlReturPakkeshop, UrlPakkeshopManglendeScanninger, UrlPakkeshopManglendeReturScanninger,UrlIndleveringsPakke,  
             UrlIndleveringsPakkeManglendeScanninger,UrlEKLoverforsel, URLOmdirigerTilPakkeshop : String;  
217    
218      UrlEKLoverforselPakkeshop : String;      Scanningtype,  Pakketype : String;
219    
     UrlFindPakketype, UrlSendPrograminfo: String;  
     Scanningtype, TestFunktionen, Pakketype, SporgEfterBoghandler : String;  
     ScanTjekkode : String;  
     ScanTjekkodeAutomatik : string;  
220    
221      Farve, FarveNormal, FarveReturDAO, FarveReturBoghandler, FarveBudlevering, FarvePakkeshoplevering, FarveReturPakkeshop,      Url : String;
           FarveIndlevering : String;  
222    
223      Titel, TitelNormal, TitelReturDAO, TitelReturBoghandler, TitelBudlevering, TitelPakkeshoplevering, TitelReturPakkeshop,      Farve : String;
           TitelIndlevering : String;  
224    
225      AlarmLyd : String;      Titel : String;
     ScannetOkLyd : String;  
     ScannetOkStorLyd : String;  
226    
     ScannetOkTilTjekkodeLyd : String;  
227    
     PrinterNavn : String;  
     TjekPrinter : String;  
228    
229      Org_RuteNummerST, Org_BoghandlerNavnST, Org_KommentarST : String;      Org_RuteNummerST, Org_BoghandlerNavnST, Org_KommentarST : String;
230      BladhusSted : Integer;      BladhusSted : Integer;
# Line 246  type Line 237  type
237      logTekst : string;      logTekst : string;
238      PakkeshopStregkode, PakkeshopTjekkode : String;      PakkeshopStregkode, PakkeshopTjekkode : String;
239      BoghandlerStregkode, BoghandlerTjekkode : String;      BoghandlerStregkode, BoghandlerTjekkode : String;
240      TjekUrls : String;  
241      Config : TConfiguration;      Config : TConfiguration;
242    
243    
# Line 263  type Line 254  type
254      procedure SkrivScanningLogFil(var tekst : string);      procedure SkrivScanningLogFil(var tekst : string);
255      function TjekKoreliste(var RuteNummer, Koreliste : string) : string;      function TjekKoreliste(var RuteNummer, Koreliste : string) : string;
256      procedure VisAlarmSkaerm(strMessage: string);      procedure VisAlarmSkaerm(strMessage: string);
257      function InjectURL(Url : String) : String;  
258    
259    public    public
260      { Public declarations }      { Public declarations }
# Line 417  begin Line 408  begin
408    
409      if (Scanningtype = '1') or (Scanningtype = '5') then      if (Scanningtype = '1') or (Scanningtype = '5') then
410      begin      begin
411        if (ScanTjekkode = '1') then        if (Config.ScanTjekkode = '1') then
412        begin        begin
413          chkScanTjekkode.Checked := true;          chkScanTjekkode.Checked := true;
414          chkScanTjekkode.Enabled := true;          chkScanTjekkode.Enabled := true;
# Line 513  begin Line 504  begin
504       PanelValgA.Font.Color := clWhite;       PanelValgA.Font.Color := clWhite;
505  end;  end;
506    
 function TMainForm.InjectURL(Url : String) : String;  
 begin  
507    
   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;  
508    
509  //InitForm kaldes før FormCreate  //InitForm kaldes før FormCreate
510  procedure TMainForm.FormCreate(Sender: TObject);  procedure TMainForm.FormCreate(Sender: TObject);
# Line 558  begin Line 541  begin
541    
542  // Sætter lige en default panel størrelse  // Sætter lige en default panel størrelse
543    MainForm.ClientWidth := 1000;    MainForm.ClientWidth := 1000;
544    MainForm.ClientHeight := 750;    MainForm.ClientHeight := 920;
545    
546    Config := TConfiguration.Create();    Config := TConfiguration.Create();
547    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 556  begin
556      Sted := ReadString('Settings','Sted','');      Sted := ReadString('Settings','Sted','');
557      StedNavn := ReadString('Settings','Stednavn','');      StedNavn := ReadString('Settings','Stednavn','');
558    
559      UrlFindPakketype := ReadString('Settings','UrlFindPakketype','http://omdeling.info/webservices/bogpakkekontrol/FindPakketype.php?stregkode=%s');      Scanningtype := 'A'; //hardcoded
560      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);  
561    
     UrlReturPakkeshop := ReadString('Settings','UrlReturPakkeshop','http://omdeling.info/webservices/pakkeshop/returpakkekontrol.php?sted=%s&stregkode=%s');  
     UrlReturPakkeshop := InjectURL(UrlReturPakkeshop);  
562    
     UrlPakkeshopManglendeScanninger := ReadString('Settings','UrlPakkeshopManglendeScanninger','http://omdeling.info/webservices/pakkeshop/pakkemanglendescanninger.php?sted=%s');  
     UrlPakkeshopManglendeScanninger := InjectURL(UrlPakkeshopManglendeScanninger);  
563    
     UrlPakkeshopManglendeReturScanninger := ReadString('Settings','UrlPakkeshopManglendeReturScanninger','http://omdeling.info/webservices/pakkeshop/pakkemanglendereturscanninger.php?sted=%s');  
     UrlPakkeshopManglendeReturScanninger := InjectURL(UrlPakkeshopManglendeReturScanninger);  
564    
     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);  
   
   
   
     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');  
   
     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');  
565    
566      if (SkrivLog = '1') then      if (SkrivLog = '1') then
567      begin      begin
# Line 683  begin Line 589  begin
589    
590    
591    
592      if SporgEfterBoghandler = '1' then      if Config.SporgEfterBoghandler = '1' then
593      begin      begin
594        chkSporgEfterKunde.Checked := true;        chkSporgEfterKunde.Checked := true;
595        Sprgefterboghandlernummer1.Checked := true;        Sprgefterboghandlernummer1.Checked := true;
# Line 694  begin Line 600  begin
600        Sprgefterboghandlernummer1.Checked := false;        Sprgefterboghandlernummer1.Checked := false;
601      end;      end;
602    
603      if ScanTjekkode = '1' then      if Config.ScanTjekkode = '1' then
604      begin      begin
605        chkScanTjekkode.Checked := true;        chkScanTjekkode.Checked := true;
606        Scanogstjekkoden1.Checked := true;        Scanogstjekkoden1.Checked := true;
# Line 705  begin Line 611  begin
611        Scanogstjekkoden1.Checked := false;        Scanogstjekkoden1.Checked := false;
612      end;      end;
613    
614      if ScanTjekkodeAutomatik = '1' then      if Config.ScanTjekkodeAutomatik = '1' then
615      begin      begin
616        menuAutomatiskTjekkodeStyring.Checked := true;        menuAutomatiskTjekkodeStyring.Checked := true;
617        chkScanTjekkode.Enabled := false;        chkScanTjekkode.Enabled := false;
# Line 950  begin Line 856  begin
856          Application.Terminate;          Application.Terminate;
857      end;      end;
858    
859      if TjekUrls = '1' then    // Tjekker urls      if Config.TjekUrls = '1' then    // Tjekker urls
860      begin      begin
861          TjekkerUrls();          TjekkerUrls();
862          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
863          begin          begin
864             PlaySound(PWideChar(AlarmLyd));             PlaySound(PWideChar(Config.AlarmLyd));
865             MainForm.Color := clRed;             MainForm.Color := clRed;
866             RutenummerST.Caption := '';             RutenummerST.Caption := '';
867             BoghandlerNavnST.Caption := 'Fejl i urls';             BoghandlerNavnST.Caption := 'Fejl i urls';
# Line 1011  begin Line 917  begin
917        radioLillePakke.Checked := true;        radioLillePakke.Checked := true;
918      end;      end;
919    
920      if TestFunktionen = '1' then      if Config.TestFunktionen = '1' then
921      begin      begin
922        Testforbindelsen1.Visible := true;        Testforbindelsen1.Visible := true;
923        Testprinter1.Visible := true;        Testprinter1.Visible := true;
924        Testlyd1.Visible := true;        Testlyd1.Visible := true;
925        Testlyd2.Visible := true;        Testlyd2.Visible := true;
926      end      end
927      else if TestFunktionen = '2' then      else if Config.TestFunktionen = '2' then
928      begin      begin
929        Testforbindelsen1.Enabled := false;        Testforbindelsen1.Enabled := false;
930        Testprinter1.Enabled := false;        Testprinter1.Enabled := false;
# Line 1033  begin Line 939  begin
939        Testlyd2.Visible := false;        Testlyd2.Visible := false;
940      end;      end;
941    
     if not FileExists(AlarmLyd) then  
     begin  
       AlarmLyd := '';  
     end;  
942    
     if not FileExists(ScannetOkLyd) then  
     begin  
       ScannetOkLyd := '';  
     end;  
943    
     if not FileExists(ScannetOkStorLyd) then  
     begin  
       ScannetOkStorLyd := '';  
     end;  
944    
945    
946      if not FileExists(ScannetOkTilTjekkodeLyd) then      LabelPrint := TLabelPrint.Create( self, Config, Config.PrinterNavn );
947      begin      LabelPrint.CheckPrintQue('Opstart', Config.PrinterNavn);
       ScannetOkTilTjekkodeLyd := '';  
     end;  
   
   
   
   
     LabelPrint := TLabelPrint.Create( self, Config, PrinterNavn );  
     LabelPrint.CheckPrintQue('Opstart', PrinterNavn);  
948    
949    finally    finally
950      Free;      Free;
# Line 1423  begin Line 1309  begin
1309      if (Length(Stregkode) > 8) then      if (Length(Stregkode) > 8) then
1310      begin      begin
1311        // Her skal vi så forespørge pakketype på serveren udfra stregkode feltet        // Her skal vi så forespørge pakketype på serveren udfra stregkode feltet
1312        URLStr := Format(UrlFindPakketype,[Stregkode]);        URLStr := Format(Config.UrlFindPakketype,[Stregkode]);
1313        try        try
1314          //raise EIdConnClosedGracefully.Create('test');   // KUN TIL TEST          //raise EIdConnClosedGracefully.Create('test');   // KUN TIL TEST
1315          WebSvar := IdHTTP1.Get(URLStr);          WebSvar := IdHTTP1.Get(URLStr);
# Line 1546  begin Line 1432  begin
1432        end;        end;
1433      end;      end;
1434    
1435        // EmballageRepareret skal bare sætte reklamationkoden,
1436        // og så ellers fortsætte med scanning som normalt
1437        if (chkEmballageRepareret.Checked = True) then
1438        begin
1439          URLStr := Format(Config.UrlEmballageRepareret,[Sted,Stregkode]);
1440          WebSvar := IdHTTP1.Get(URLStr);
1441    
1442          chkEmballageRepareret.Checked := False;
1443        end;
1444    
1445        if (chkUdenforSpecifikation.Checked = True) then
1446        begin
1447          URLStr := Format(Config.URLUdenforSpecifikation,[Sted,Stregkode]);
1448          //InputBox( '1', '1', URLStr);
1449    
1450          WebSvar := IdHTTP1.Get(URLStr);
1451          //InputBox( '2', '2', WebSvar );
1452    
1453          chkUdenforSpecifikation.Checked := False;
1454          LabelPrint.PrintLabel(Stregkode);
1455    
1456          StregkodeST.Caption := '';
1457          Stregkode := '';
1458    
1459          RuteNummerST.Caption := '';
1460          BoghandlerNavnST.Caption := '';
1461          KommentarST.Caption := 'Retur til leverandør';
1462    
1463    
1464    
1465    
1466          exit;   //leave procedure
1467        end;
1468    
1469    
1470    
1471    
1472      if (PakkeshopText1.Visible = true) and (PakkeshopText1.Caption = 'Stregkode') and menuAutomatiskTjekkodeStyring.Checked then      if (PakkeshopText1.Visible = true) and (PakkeshopText1.Caption = 'Stregkode') and menuAutomatiskTjekkodeStyring.Checked then
# Line 1592  begin Line 1513  begin
1513              BoghandlerStregkode := Stregkode;              BoghandlerStregkode := Stregkode;
1514              PakkeshopText1.Caption := 'Tjekkode';              PakkeshopText1.Caption := 'Tjekkode';
1515    
1516              PlaySound(PWideChar(ScannetOkTilTjekkodeLyd));              PlaySound(PWideChar(Config.ScannetOkTilTjekkodeLyd));
1517    
1518             end             end
1519            else            else
# Line 1610  begin Line 1531  begin
1531             BoghandlerTjekkode := Stregkode;             BoghandlerTjekkode := Stregkode;
1532             PakkeshopText1.Caption := 'Stregkode';             PakkeshopText1.Caption := 'Stregkode';
1533             if (menuPakkeshop1.Checked) then             if (menuPakkeshop1.Checked) then
1534                MainForm.Color := TUtils.HexToTColor(FarvePakkeshoplevering);                MainForm.Color := TUtils.HexToTColor(Config.FarvePakkeshoplevering);
1535             if (menuNatXpress1.Checked) then             if (menuNatXpress1.Checked) then
1536                MainForm.Color := TUtils.HexToTColor(FarveNormal);                MainForm.Color := TUtils.HexToTColor(Config.FarveNormal);
1537             btnNulstil.Visible := false;             btnNulstil.Visible := false;
1538           end           end
1539          else          else
# Line 1666  begin Line 1587  begin
1587              tjekkodemangler := pos('Tjekkode mangler', Kommentar);              tjekkodemangler := pos('Tjekkode mangler', Kommentar);
1588              if (pakkeErScannet > 0) or (pakkeForkertSted > 0) or (tjekkodemangler > 0) then              if (pakkeErScannet > 0) or (pakkeForkertSted > 0) or (tjekkodemangler > 0) then
1589              begin              begin
1590                PlaySound(PWideChar(AlarmLyd));                PlaySound(PWideChar(Config.AlarmLyd));
1591                btnNulstil.Visible := true;                btnNulstil.Visible := true;
1592                MainForm.Color := clRed;                MainForm.Color := clRed;
1593              end;              end;
# Line 1676  begin Line 1597  begin
1597              MainForm.Color := TUtils.HexToTColor(Farve);              MainForm.Color := TUtils.HexToTColor(Farve);
1598              if menuStorePakker.Checked then              if menuStorePakker.Checked then
1599              begin              begin
1600                PlaySound(PWideChar(ScannetOkStorLyd));                PlaySound(PWideChar(Config.ScannetOkStorLyd));
1601              end              end
1602              else              else
1603              begin              begin
1604                PlaySound(PWideChar(ScannetOkLyd));                PlaySound(PWideChar(Config.ScannetOkLyd));
1605              end;              end;
1606              btnNulstil.Visible := false;              btnNulstil.Visible := false;
1607            end            end
# Line 1689  begin Line 1610  begin
1610              MainForm.Color := TUtils.HexToTColor(Farve);              MainForm.Color := TUtils.HexToTColor(Farve);
1611              if menuStorePakker.Checked then              if menuStorePakker.Checked then
1612              begin              begin
1613                PlaySound(PWideChar(ScannetOkStorLyd));                PlaySound(PWideChar(Config.ScannetOkStorLyd));
1614              end              end
1615              else              else
1616              begin              begin
1617                PlaySound(PWideChar(ScannetOkLyd));                PlaySound(PWideChar(Config.ScannetOkLyd));
1618              end;              end;
1619              btnNulstil.Visible := false;              btnNulstil.Visible := false;
1620            end            end
# Line 1716  begin Line 1637  begin
1637              begin              begin
1638                if menuStorePakker.Checked then                if menuStorePakker.Checked then
1639                begin                begin
1640                  PlaySound(PWideChar(ScannetOkStorLyd));                  PlaySound(PWideChar(Config.ScannetOkStorLyd));
1641                end                end
1642                else                else
1643                begin                begin
1644                  PlaySound(PWideChar(ScannetOkLyd));                  PlaySound(PWideChar(Config.ScannetOkLyd));
1645                end;                end;
1646                InitLillePakke();                InitLillePakke();
1647              end;              end;
# Line 1774  var Line 1695  var
1695    WebSvar : String;    WebSvar : String;
1696    URLStr : String;    URLStr : String;
1697  begin  begin
1698    if UrlSendPrograminfo <> '' then    if Config.UrlSendPrograminfo <> '' then
1699    begin    begin
1700      URLStr := Format(UrlSendPrograminfo,[ExtractFileName(ParamStr(0)), Sted, Scanningtype, Infotype, Info]);      URLStr := Format(Config.UrlSendPrograminfo,[ExtractFileName(ParamStr(0)), Sted, Scanningtype, Infotype, Info]);
1701      try      try
1702        //raise EIdConnClosedGracefully.Create('test');   // KUN TIL TEST        //raise EIdConnClosedGracefully.Create('test');   // KUN TIL TEST
1703        WebSvar := IdHTTP1.Get(URLStr);        WebSvar := IdHTTP1.Get(URLStr);
# Line 1789  begin Line 1710  begin
1710        ShowMessage(logTekst);        ShowMessage(logTekst);
1711        SkrivScanningLogFil(logTekst);        SkrivScanningLogFil(logTekst);
1712        // 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
1713        UrlSendPrograminfo := '';        Config.UrlSendPrograminfo := '';
1714        Application.Terminate;        Application.Terminate;
1715      end;      end;
1716      end;      end;
# Line 2049  var Line 1970  var
1970    pakkestorrelse : String;    pakkestorrelse : String;
1971    PrintNyLabelInteger : Integer;    PrintNyLabelInteger : Integer;
1972    
1973    PakkeshopLabel: TPakkeshopLabel;    PakkeshopLabel: TLabelData;
1974  begin  begin
1975    if radioStorPakke.Checked then    if radioStorPakke.Checked then
1976    begin    begin
# Line 2067  begin Line 1988  begin
1988       begin       begin
1989         BoghandlerTjekkode := '-1';         BoghandlerTjekkode := '-1';
1990       end;       end;
1991       URLStr := Format(UrlNormal,[Sted, PakkeNr, BoghandlerNummer, BoghandlerTjekkode]);       URLStr := Format(Config.UrlNormal,[Sted, PakkeNr, BoghandlerNummer, BoghandlerTjekkode]);
1992    end    end
1993    else if menuNatxpressReturDAO1.Checked then    else if menuNatxpressReturDAO1.Checked then
1994    begin    begin
1995       URLStr := Format(UrlReturDAO,[Sted, PakkeNr, BoghandlerNummer, 'DAO', pakkestorrelse]);       URLStr := Format(Config.UrlReturDAO,[Sted, PakkeNr, BoghandlerNummer, 'DAO', pakkestorrelse]);
1996    end    end
1997    else if menuNatxpressReturfraKunde1.Checked then    else if menuNatxpressReturfraKunde1.Checked then
1998    begin    begin
1999       URLStr := Format(UrlReturBoghandler,[Sted, PakkeNr, BoghandlerNummer, 'Boghandler', pakkestorrelse]);       URLStr := Format(Config.UrlReturBoghandler,[Sted, PakkeNr, BoghandlerNummer, 'Boghandler', pakkestorrelse]);
2000    end    end
2001    else if menuDaoDirekte1.Checked then    else if menuDaoDirekte1.Checked then
2002    begin    begin
2003       URLStr := Format(UrlBudlevering,[Sted, PakkeNr, 'bud', pakkestorrelse]);       URLStr := Format(Config.UrlBudlevering,[Sted, PakkeNr, 'bud', pakkestorrelse]);
2004    end    end
2005    else if menuPakkeshop1.Checked then    else if menuPakkeshop1.Checked then
2006    begin    begin
2007       URLStr := Format(UrlPakkeshoplevering,[Sted, PakkeNr, PakkeshopTjekkode]);       URLStr := Format(Config.UrlPakkeshoplevering,[Sted, PakkeNr, PakkeshopTjekkode]);
2008    end    end
2009    else if menuPakkeshopRetur1.Checked then    else if menuPakkeshopRetur1.Checked then
2010    begin    begin
2011       URLStr := Format(UrlReturPakkeshop,[Sted, PakkeNr]);       URLStr := Format(Config.UrlReturPakkeshop,[Sted, PakkeNr]);
2012    end    end
2013    else if menuIndlevering.Checked then    else if menuIndlevering.Checked then
2014    begin    begin
2015      URLStr := Format(UrlIndleveringsPakke,[Sted, PakkeNr]);      URLStr := Format(Config.UrlIndleveringsPakke,[Sted, PakkeNr]);
2016    end    end
2017    else    else
2018    begin    begin
# Line 2100  begin Line 2021  begin
2021    
2022    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
2023    begin    begin
2024      URLStr := Format(URLOmdirigerTilPakkeshop,[Sted, PakkeNr]);      URLStr := Format(Config.URLOmdirigerTilPakkeshop,[Sted, PakkeNr]);
2025    end;    end;
2026    
2027    try    try
# Line 2158  begin Line 2079  begin
2079       if (Kommentar = 'Ok') then       if (Kommentar = 'Ok') then
2080       begin       begin
2081         PrintNyLabel := True; //Indleveringskode vil ALTID udskrive label         PrintNyLabel := True; //Indleveringskode vil ALTID udskrive label
2082         PakkeshopLabel := TPakkeshopLabel.Create( XMLDocument1 ); //Opret struct og parse xml doc         PakkeshopLabel := TLabelData.Create( XMLDocument1 ); //Opret struct og parse xml doc
2083         RuteNummer := PakkeshopLabel.Koreliste + '  ->  ' +  PakkeshopLabel.PakkeshopTurid;         RuteNummer := PakkeshopLabel.Koreliste + '  ->  ' +  PakkeshopLabel.PakkeshopTurid;
2084         Stregkode := PakkeshopLabel.Stregkode;         Stregkode := PakkeshopLabel.Stregkode;
2085    
2086         LabelPrint.PrintPakkeshopLabel( PakkeshopLabel );         LabelPrint.PrintFuldPakkeLabel( PakkeshopLabel );
2087         chkForstorTilDirekte.Checked := false;         chkForstorTilDirekte.Checked := false;
2088    
2089       end;       end;
# Line 2207  begin Line 2128  begin
2128      begin      begin
2129        if (Leveringssted <> BladhusStedKode[BladhusSted]) and (BladhusStedKode[BladhusSted] <> 'DBK') then        if (Leveringssted <> BladhusStedKode[BladhusSted]) and (BladhusStedKode[BladhusSted] <> 'DBK') then
2130        begin        begin
2131            Kommentar := Kommentar + ' Pakke burde være hos DAO Distribution';            Kommentar := Kommentar + ' Pakke burde være hos ' + Leveringssted;
2132            PrintNyLabel := False;            //PrintNyLabel := False; //ved fuld-daekning / X-ruter skal vi altid skrive label alligevel
2133        end;        end;
2134      end      end
2135      else if (menuDaoDirekte1.Checked) and (Leveringssted <> Sted) then      else if (menuDaoDirekte1.Checked) and (Leveringssted <> Sted) And (Leveringssted <> '') then
2136      begin      begin
2137         if (Leveringssted = 'E') and (Sted = 'DBK') then        Kommentar := Kommentar + ' Pakke burde være hos ' + Leveringssted;
2138         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;  
2139      end;      end;
2140    except on e:exception do    except on e:exception do
2141      raise exception.CreateFmt('Fejl i XML-format: %s',[e.Message]);      raise exception.CreateFmt('Fejl i XML-format: %s',[e.Message]);
# Line 2322  pakkeForkertSted : Integer; Line 2236  pakkeForkertSted : Integer;
2236    kontrolKoreliste : string;    kontrolKoreliste : string;
2237    nytRuteNummer, nyFarve : String;    nytRuteNummer, nyFarve : String;
2238  begin  begin
2239    //  if (PrintNyLabel = True OR chkAltidPrintLabel.Checked = True) then
2240    //  begin
2241    //    LabelPrint.PrintLabel( Stregkode );
2242    //  end;
2243    //
2244    //  exit;
2245    
2246    if menuDaoDirekte1.Checked then    if menuDaoDirekte1.Checked then
2247       RuteNummerST.Color := TUtils.HexToTColor(Farve);       RuteNummerST.Color := TUtils.HexToTColor(Farve);
2248    
# Line 2366  begin Line 2287  begin
2287       begin       begin
2288          PrintNyLabel := false;          PrintNyLabel := false;
2289    
2290          PlaySound(PWideChar(AlarmLyd));          PlaySound(PWideChar(Config.AlarmLyd));
2291          MainForm.Color := clRed;          MainForm.Color := clRed;
2292          btnNulstil.Visible := true;          btnNulstil.Visible := true;
2293    
# Line 2386  begin Line 2307  begin
2307            logTekst := RightStr(List1Msg, Length(List1Msg)-10);            logTekst := RightStr(List1Msg, Length(List1Msg)-10);
2308            SkrivScanningLogFil(logTekst);            SkrivScanningLogFil(logTekst);
2309    
2310            if (PrinterNavn = 'Ingen') then  //          if (Config.PrinterNavn = 'Ingen') then
2311            begin  //          begin
2312               PrintNyLabel := false;  //             PrintNyLabel := false;
2313            end;  //          end;
2314    
2315            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
2316            begin            begin
2317              PlaySound(PWideChar(AlarmLyd));              PlaySound(PWideChar(Config.AlarmLyd));
2318              MainForm.Color := clRed;              MainForm.Color := clRed;
2319              btnNulstil.Visible := true;              btnNulstil.Visible := true;
2320            end;            end;
# Line 2419  begin Line 2340  begin
2340    
2341            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
2342            begin            begin
2343              PlaySound(PWideChar(AlarmLyd));              PlaySound(PWideChar(Config.AlarmLyd));
2344              MainForm.Color := clRed;              MainForm.Color := clRed;
2345              btnNulstil.Visible := true;              btnNulstil.Visible := true;
2346            end;            end;
# Line 2441  begin Line 2362  begin
2362               if PrintNyLabel or (RuteNummer = 'Rutenr') then               if PrintNyLabel or (RuteNummer = 'Rutenr') then
2363  // 20150304: slut  // 20150304: slut
2364                begin                begin
2365                  LabelPrint.SendTilPrinter(kontrolKoreliste, RuteNummer, Kommentar, BoghandlerNavn, Koreliste, SmsKode, DBKbane, Leveringssted, PrintNyLabel, BoghandlerNummer);                  //LabelPrint.SendTilPrinter(kontrolKoreliste, RuteNummer, Kommentar, BoghandlerNavn, Koreliste, SmsKode, DBKbane, Leveringssted, PrintNyLabel, BoghandlerNummer);
2366                    LabelPrint.PrintLabel( Stregkode );
2367                end;                end;
2368              end;              end;
2369        01 :  begin;        01 :  begin;
# Line 2449  begin Line 2371  begin
2371                    // 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
2372                    // 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')
2373                begin                begin
2374                  LabelPrint.SendTilPrinter(kontrolKoreliste, RuteNummer, Kommentar, BoghandlerNavn, Koreliste, SmsKode, DBKbane, Leveringssted, PrintNyLabel, BoghandlerNummer);                  //LabelPrint.SendTilPrinter(kontrolKoreliste, RuteNummer, Kommentar, BoghandlerNavn, Koreliste, SmsKode, DBKbane, Leveringssted, PrintNyLabel, BoghandlerNummer);
2375                    LabelPrint.PrintLabel( Stregkode );
2376                end;                end;
2377              end;              end;
2378        02 :  begin;        02 :  begin;
2379                if PrintNyLabel or (RuteNummer = 'Rutenr') then   // Hvis RuteNummer = 'Rutenr' er vi igang med en printer test                if PrintNyLabel or (RuteNummer = 'Rutenr') then   // Hvis RuteNummer = 'Rutenr' er vi igang med en printer test
2380                begin                begin
2381                  LabelPrint.SendTilPrinter(kontrolKoreliste, RuteNummer, Kommentar, BoghandlerNavn, Koreliste, SmsKode, DBKbane, Leveringssted, PrintNyLabel, BoghandlerNummer);                  //LabelPrint.SendTilPrinter(kontrolKoreliste, RuteNummer, Kommentar, BoghandlerNavn, Koreliste, SmsKode, DBKbane, Leveringssted, PrintNyLabel, BoghandlerNummer);
2382                    LabelPrint.PrintLabel( Stregkode );
2383                end;                end;
2384              end;              end;
2385        03 :  begin;        03 :  begin;
# Line 2463  begin Line 2387  begin
2387                    // 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
2388                    // 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')
2389               begin               begin
2390                  LabelPrint.SendTilPrinter(kontrolKoreliste, RuteNummer, Kommentar, BoghandlerNavn, Koreliste, SmsKode, DBKbane, Leveringssted, PrintNyLabel, BoghandlerNummer);                  //LabelPrint.SendTilPrinter(kontrolKoreliste, RuteNummer, Kommentar, BoghandlerNavn, Koreliste, SmsKode, DBKbane, Leveringssted, PrintNyLabel, BoghandlerNummer);
2391                    LabelPrint.PrintLabel( Stregkode );
2392               end;               end;
2393              end;              end;
2394        04 :  begin;        04 :  begin;
2395                if PrintNyLabel or (RuteNummer = 'Rutenr') then   // Hvis RuteNummer = 'Rutenr' er vi igang med en printer test                if PrintNyLabel or (RuteNummer = 'Rutenr') then   // Hvis RuteNummer = 'Rutenr' er vi igang med en printer test
2396                begin                begin
2397                  LabelPrint.SendTilPrinter(kontrolKoreliste, RuteNummer, Kommentar, BoghandlerNavn, Koreliste, SmsKode, DBKbane, Leveringssted, PrintNyLabel, BoghandlerNummer);                  //LabelPrint.SendTilPrinter(kontrolKoreliste, RuteNummer, Kommentar, BoghandlerNavn, Koreliste, SmsKode, DBKbane, Leveringssted, PrintNyLabel, BoghandlerNummer);
2398                    LabelPrint.PrintLabel( Stregkode );
2399                end;                end;
2400              end;              end;
2401        else        else
# Line 2488  begin Line 2414  begin
2414    end    end
2415    else    else
2416    begin    begin
2417      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
2418      begin      begin
2419        logTekst := 'Printer label type ';        logTekst := 'Printer label type ';
2420        if (chkAltidPrintLabel.Checked) then        if (chkAltidPrintLabel.Checked) then
# Line 2506  begin Line 2432  begin
2432        logTekst := logTekst + ' for '+BoghandlerNavn;        logTekst := logTekst + ' for '+BoghandlerNavn;
2433        SkrivScanningLogFil(logTekst);        SkrivScanningLogFil(logTekst);
2434    
2435        LabelPrint.PrintDaodirekteLabel( RuteNummer, Kommentar, BoghandlerNavn) ;        //LabelPrint.PrintDaodirekteLabel( RuteNummer, Kommentar, BoghandlerNavn) ;
2436                LabelPrint.PrintLabel( Stregkode );
2437    
2438      end;      end;
2439    end;    end;
2440    
# Line 2541  begin Line 2468  begin
2468  end;  end;
2469    
2470    
2471    procedure TMainForm.chkUdenforSpecifikationClick(Sender: TObject);
2472    begin
2473      if (chkUdenforSpecifikation.Checked = true) then
2474      begin
2475        chkEmballageRepareret.Checked := false;
2476      end;
2477    end;
2478    
2479    procedure TMainForm.chkEmballageRepareretClick(Sender: TObject);
2480    begin
2481      if (chkEmballageRepareret.Checked = true) then
2482      begin
2483        chkUdenforSpecifikation.Checked := false;
2484      end;
2485    end;
2486    
2487  procedure TMainForm.chkAltidPrintLabelClick(Sender: TObject);  procedure TMainForm.chkAltidPrintLabelClick(Sender: TObject);
2488  begin  begin
2489    if chkAltidPrintLabel.Checked then    if chkAltidPrintLabel.Checked then
# Line 2554  begin Line 2497  begin
2497    
2498  end;  end;
2499    
2500    
2501    
2502  procedure TMainForm.chkScanTjekkodeClick(Sender: TObject);  procedure TMainForm.chkScanTjekkodeClick(Sender: TObject);
2503  begin  begin
2504    if chkScanTjekkode.Checked then    if chkScanTjekkode.Checked then
# Line 2613  begin Line 2558  begin
2558      // Tjekker UrlNormal      // Tjekker UrlNormal
2559      if PanelValg1.Enabled = true then      if PanelValg1.Enabled = true then
2560      begin      begin
2561        TjekkerEnkeltUrl('UrlNormal', UrlNormal, urlFejl);        TjekkerEnkeltUrl('UrlNormal', Config.UrlNormal, urlFejl);
2562      end;      end;
2563    
2564      // Tjekker UrlReturDAO      // Tjekker UrlReturDAO
2565      if PanelValg2.Enabled = true then      if PanelValg2.Enabled = true then
2566      begin      begin
2567        TjekkerEnkeltUrl('UrlReturDAO', UrlReturDAO, urlFejl);        TjekkerEnkeltUrl('UrlReturDAO', Config.UrlReturDAO, urlFejl);
2568      end;      end;
2569    
2570      // Tjekker UrlReturBoghandler      // Tjekker UrlReturBoghandler
2571      if PanelValg3.Enabled = true then      if PanelValg3.Enabled = true then
2572      begin      begin
2573        TjekkerEnkeltUrl('UrlReturBoghandler', UrlReturBoghandler, urlFejl);        TjekkerEnkeltUrl('UrlReturBoghandler', Config.UrlReturBoghandler, urlFejl);
2574      end;      end;
2575    
2576      // Tjekker UrlBudlevering      // Tjekker UrlBudlevering
2577      if PanelValg4.Enabled = true then      if PanelValg4.Enabled = true then
2578      begin      begin
2579        TjekkerEnkeltUrl('UrlBudlevering', UrlBudlevering, urlFejl);        TjekkerEnkeltUrl('UrlBudlevering', Config.UrlBudlevering, urlFejl);
2580      end;      end;
2581    
2582      // Tjekker UrlPakkeshoplevering      // Tjekker UrlPakkeshoplevering
2583      if PanelValg5.Enabled = true then      if PanelValg5.Enabled = true then
2584      begin      begin
2585        TjekkerEnkeltUrl('UrlPakkeshoplevering', UrlPakkeshoplevering, urlFejl);        TjekkerEnkeltUrl('UrlPakkeshoplevering', Config.UrlPakkeshoplevering, urlFejl);
2586      end;      end;
2587    
2588      // Tjekker UrlReturPakkeshop      // Tjekker UrlReturPakkeshop
2589      if PanelValg6.Enabled = true then      if PanelValg6.Enabled = true then
2590      begin      begin
2591        TjekkerEnkeltUrl('UrlReturPakkeshop', UrlReturPakkeshop, urlFejl);        TjekkerEnkeltUrl('UrlReturPakkeshop', Config.UrlReturPakkeshop, urlFejl);
2592      end;      end;
2593    
2594      // Tjekker UrlManglendeScanninger      // Tjekker UrlManglendeScanninger
2595      if (PanelValg1.Enabled = true) or (PanelValg4.Enabled = true) then      if (PanelValg1.Enabled = true) or (PanelValg4.Enabled = true) then
2596      begin      begin
2597        TjekkerEnkeltUrl('UrlManglendeScanninger', UrlManglendeScanninger, urlFejl);        TjekkerEnkeltUrl('UrlManglendeScanninger', Config.UrlManglendeScanninger, urlFejl);
2598      end;      end;
2599    
2600      // Tjekker UrlPakkeshopManglendeScanninger      // Tjekker UrlPakkeshopManglendeScanninger
2601      if PanelValg5.Enabled = true then      if PanelValg5.Enabled = true then
2602      begin      begin
2603        TjekkerEnkeltUrl('UrlPakkeshopManglendeScanninger', UrlPakkeshopManglendeScanninger, urlFejl);        TjekkerEnkeltUrl('UrlPakkeshopManglendeScanninger', Config.UrlPakkeshopManglendeScanninger, urlFejl);
2604      end;      end;
2605    
2606      // Tjekker UrlPakkeshopManglendeReturScanninger      // Tjekker UrlPakkeshopManglendeReturScanninger
2607      if PanelValg6.Enabled = true then      if PanelValg6.Enabled = true then
2608      begin      begin
2609        TjekkerEnkeltUrl('UrlPakkeshopManglendeReturScanninger', UrlPakkeshopManglendeReturScanninger, urlFejl);        TjekkerEnkeltUrl('UrlPakkeshopManglendeReturScanninger', Config.UrlPakkeshopManglendeReturScanninger, urlFejl);
2610      end;      end;
2611    
2612     // Tjekker UrlIndleveringsPakke og UrlIndleveringsPakkeManglendeScanninger     // Tjekker UrlIndleveringsPakke og UrlIndleveringsPakkeManglendeScanninger
2613      if PanelValg7.Enabled = true then      if PanelValg7.Enabled = true then
2614      begin      begin
2615        TjekkerEnkeltUrl('UrlIndleveringsPakke', UrlIndleveringsPakke, urlFejl);        TjekkerEnkeltUrl('UrlIndleveringsPakke', Config.UrlIndleveringsPakke, urlFejl);
2616        TjekkerEnkeltUrl('UrlIndleveringsPakkeManglendeScanninger', UrlIndleveringsPakkeManglendeScanninger, urlFejl);        TjekkerEnkeltUrl('UrlIndleveringsPakkeManglendeScanninger', Config.UrlIndleveringsPakkeManglendeScanninger, urlFejl);
2617      end;      end;
2618    
2619      // Tjekker UrlEKLoverforsel      // Tjekker UrlEKLoverforsel
2620      if PanelValg1.Enabled = true then      if PanelValg1.Enabled = true then
2621      begin      begin
2622        TjekkerEnkeltUrl('UrlEKLoverforsel', UrlEKLoverforsel, urlFejl);        TjekkerEnkeltUrl('UrlEKLoverforsel', Config.UrlEKLoverforsel, urlFejl);
2623      end;      end;
2624    
2625    
2626      // Tjekker UrlEKLoverforselPakkeshop      // Tjekker UrlEKLoverforselPakkeshop
2627      if PanelValg5.Enabled = true then      if PanelValg5.Enabled = true then
2628      begin      begin
2629        TjekkerEnkeltUrl('UrlEKLoverforselPakkeshop', UrlEKLoverforselPakkeshop, urlFejl);        TjekkerEnkeltUrl('UrlEKLoverforselPakkeshop', Config.UrlEKLoverforselPakkeshop, urlFejl);
2630      end;      end;
2631    
2632    
2633      // Tjekker UrlFindPakketype      // Tjekker UrlFindPakketype
2634      TjekkerEnkeltUrl('UrlFindPakketype', UrlFindPakketype, urlFejl);      TjekkerEnkeltUrl('UrlFindPakketype', Config.UrlFindPakketype, urlFejl);
2635    
2636      // Tjekker UrlSendPrograminfo      // Tjekker UrlSendPrograminfo
2637      TjekkerEnkeltUrl('UrlSendPrograminfo', UrlSendPrograminfo, urlFejl);      TjekkerEnkeltUrl('UrlSendPrograminfo', Config.UrlSendPrograminfo, urlFejl);
2638    
2639    
2640    
# Line 2698  begin Line 2643  begin
2643      SkrivScanningLogFil(logTekst);      SkrivScanningLogFil(logTekst);
2644    
2645    Except    Except
2646      TjekUrls := '-';   // markerer at der var fejl      Config.TjekUrls := '-';   // markerer at der var fejl
2647    
2648    end;    end;
2649  end;  end;
# Line 2718  begin Line 2663  begin
2663      inc(urlFejl);   // Optæller antal fejl      inc(urlFejl);   // Optæller antal fejl
2664      logTekst := UrlNavn + ' svarer ikke: ' + Url;      logTekst := UrlNavn + ' svarer ikke: ' + Url;
2665      ListBox1.Items.Insert(0,TimeToStr(now) + ': ' + logTekst);      ListBox1.Items.Insert(0,TimeToStr(now) + ': ' + logTekst);
2666      if TjekUrls = '1' then      if Config.TjekUrls = '1' then
2667      begin      begin
2668        logTekst := logTekst + crlf + crlf + 'Programmet afsluttes... ';        logTekst := logTekst + crlf + crlf + 'Programmet afsluttes... ';
2669      end;      end;
2670    
2671      SkrivScanningLogFil(logTekst);      SkrivScanningLogFil(logTekst);
2672    
2673      if TjekUrls = '1' then      if Config.TjekUrls = '1' then
2674      begin      begin
2675        ShowMessage(logTekst);        ShowMessage(logTekst);
2676        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
2677        Application.Terminate;        Application.Terminate;
2678    
2679        raise Exception.Create('UrlFejl');        raise Exception.Create('UrlFejl');
# Line 2809  begin Line 2754  begin
2754    if BoghandlerNavnST.Caption = 'Fejl i forbindelse til server' then    if BoghandlerNavnST.Caption = 'Fejl i forbindelse til server' then
2755    begin    begin
2756       ShowMessage('Programmet afbrydes...');       ShowMessage('Programmet afbrydes...');
2757       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
2758       Application.Terminate;       Application.Terminate;
2759       exit;       exit;
2760    end;    end;
# Line 2911  var Line 2856  var
2856    Leveringssted : String;    Leveringssted : String;
2857    orgTjekUrls : String;    orgTjekUrls : String;
2858  begin  begin
2859    orgTjekUrls := TjekUrls;    orgTjekUrls := Config.TjekUrls;
2860    if (TjekUrls = '1') or (TjekUrls = '2') then    if (Config.TjekUrls = '1') or (Config.TjekUrls = '2') then
2861    begin    begin
2862      TjekkerUrls();      TjekkerUrls();
2863    end;    end;
2864    if TjekUrls = '-' then    if Config.TjekUrls = '-' then
2865    begin    begin
2866      //ShowMessage('Der var fejl i een eller flere urls - se logvinduet');      //ShowMessage('Der var fejl i een eller flere urls - se logvinduet');
2867      RuteNummer := '';      RuteNummer := '';
# Line 2925  begin Line 2870  begin
2870      Koreliste := '';      Koreliste := '';
2871      UpdateScreen(RuteNummer, Kommentar, BoghandlerNavn, Koreliste, '');      UpdateScreen(RuteNummer, Kommentar, BoghandlerNavn, Koreliste, '');
2872      // Her kommer en alarm og rød skærm      // Her kommer en alarm og rød skærm
2873      PlaySound(PWideChar(AlarmLyd));      PlaySound(PWideChar(Config.AlarmLyd));
2874      MainForm.Color := clRed;      MainForm.Color := clRed;
2875      btnNulstil.Visible := true;      btnNulstil.Visible := true;
2876    end    end
# Line 2938  begin Line 2883  begin
2883      SmsKode := '999999';      SmsKode := '999999';
2884      DBKbane := '999';      DBKbane := '999';
2885      Leveringssted := 'XXX';      Leveringssted := 'XXX';
2886    
2887    
2888      PrintLabel(RuteNummer, Kommentar, BoghandlerNavn, Koreliste, SmsKode, DBKbane, Leveringssted, Falsk);      PrintLabel(RuteNummer, Kommentar, BoghandlerNavn, Koreliste, SmsKode, DBKbane, Leveringssted, Falsk);
2889      FocusControl(StregkodeST);      FocusControl(StregkodeST);
2890    end;    end;
2891    TjekUrls := orgTjekUrls;    Config.TjekUrls := orgTjekUrls;
2892    
2893  end;  end;
2894    
# Line 2955  var Line 2902  var
2902    SmsKode : String;    SmsKode : String;
2903    DBKbane : String;    DBKbane : String;
2904    Leveringssted : String;    Leveringssted : String;
2905      LabelData : TLabelData;
2906  begin  begin
2907    RuteNummer := 'Rutenr';    RuteNummer := 'Rutenr';
2908    Kommentar := '***** Kommentar *****';    Kommentar := '***** Kommentar *****';
# Line 2966  begin Line 2914  begin
2914    begin    begin
2915      ShowMessage('Der er ikke installeret en printer på denne PC.');      ShowMessage('Der er ikke installeret en printer på denne PC.');
2916    end    end
2917    else if PrinterNavn = 'Ingen' then  //  else if Config.PrinterNavn = 'Ingen' then //Det giver ikke længere mening at kunne fravælge printer
2918    begin  //  begin
2919      ShowMessage('Der er fravalgt printer i dette program.');  //    ShowMessage('Der er fravalgt printer i dette program.');
2920    end  //  end
2921    else    else
2922    begin    begin
2923      UpdateScreen(RuteNummer, Kommentar, BoghandlerNavn, Koreliste, '');      UpdateScreen(RuteNummer, Kommentar, BoghandlerNavn, Koreliste, '');
2924      SmsKode := '999999';  //    SmsKode := '999999';
2925      DBKbane := '999';  //    DBKbane := '999';
2926      Leveringssted := 'XXX';  //    Leveringssted := 'XXX';
2927      PrintLabel(RuteNummer, Kommentar, BoghandlerNavn, Koreliste, SmsKode, DBKbane, Leveringssted, Falsk);  //    PrintLabel(RuteNummer, Kommentar, BoghandlerNavn, Koreliste, SmsKode, DBKbane, Leveringssted, Falsk);
2928      LabelPrint.CheckPrintQue('Test', PrinterNavn);  
2929    
2930        LabelData := TLabelData.Create(nil);
2931        LabelData.LabelType := 'simpel';
2932        LabelData.SimpelLinie1 := '999999';
2933        LabelData.SimpelLinie2 := '999';
2934        LabelData.SimpelLinie3 := 'xxx';
2935        LabelPrint.PrintLabelData(Labeldata);
2936    
2937        LabelPrint.CheckPrintQue('Test', Config.PrinterNavn);
2938    
2939        LabelData.Free();
2940    
2941    end;    end;
2942    FocusControl(StregkodeST);    FocusControl(StregkodeST);
2943  end;  end;
2944    
2945  procedure TMainForm.Timer1Timer(Sender: TObject);  procedure TMainForm.Timer1Timer(Sender: TObject);
2946  begin  begin
2947    if (TjekPrinter = '1') then    if (Config.TjekPrinter = '1') then
2948    begin    begin
2949      LabelPrint.CheckPrintQue('Timer', PrinterNavn);      LabelPrint.CheckPrintQue('Timer', Config.PrinterNavn);
2950    end    end
2951    else    else
2952    begin    begin
# Line 3040  begin Line 3000  begin
3000      tekst := tekst+crlf+crlf;      tekst := tekst+crlf+crlf;
3001      tekst := tekst+crlf+crlf+'          **********  DETTE ER KUN EN TEST VERSION  **********';      tekst := tekst+crlf+crlf+'          **********  DETTE ER KUN EN TEST VERSION  **********';
3002      tekst := tekst+crlf+crlf;      tekst := tekst+crlf+crlf;
3003      tekst := tekst+crlf+crlf+'Url: '+url;      tekst := tekst+crlf+crlf+'Url: ' + Url;
3004    end;    end;
3005    
3006    MessageBox(Handle, PWideChar(tekst), 'Information', MB_OK);    MessageBox(Handle, PWideChar(tekst), 'Information', MB_OK);
# Line 3181  begin Line 3141  begin
3141        menuAutomatiskTjekkodeStyring.Enabled := true;        menuAutomatiskTjekkodeStyring.Enabled := true;
3142        btnNulstil.Visible := false;        btnNulstil.Visible := false;
3143        menuNatXpress1.Checked := true;        menuNatXpress1.Checked := true;
3144        InitForm(FarveNormal,TitelNormal,UrlNormal);        InitForm(Config.FarveNormal,Config.TitelNormal,Config.UrlNormal);
3145        PanelValg1.Color := clGreen;        PanelValg1.Color := clGreen;
3146        PanelValg1.Font.Color := clWhite;        PanelValg1.Font.Color := clWhite;
3147    
# Line 3217  begin Line 3177  begin
3177        menuAutomatiskTjekkodeStyring.Enabled := false;        menuAutomatiskTjekkodeStyring.Enabled := false;
3178        menuNatxpressReturDAO1.Checked := true;        menuNatxpressReturDAO1.Checked := true;
3179        btnNulstil.Visible := false;        btnNulstil.Visible := false;
3180        InitForm(FarveReturDAO,TitelReturDAO,UrlReturDAO);        InitForm(Config.FarveReturDAO, Config.TitelReturDAO, Config.UrlReturDAO);
3181        PanelValg2.Color := clGreen;        PanelValg2.Color := clGreen;
3182        PanelValg2.Font.Color := clWhite;        PanelValg2.Font.Color := clWhite;
3183    
# Line 3248  begin Line 3208  begin
3208        menuAutomatiskTjekkodeStyring.Enabled := false;        menuAutomatiskTjekkodeStyring.Enabled := false;
3209        menuNatxpressReturfraKunde1.Checked := true;        menuNatxpressReturfraKunde1.Checked := true;
3210        btnNulstil.Visible := false;        btnNulstil.Visible := false;
3211        InitForm(FarveReturBoghandler,TitelReturBoghandler,UrlReturBoghandler);        InitForm(Config.FarveReturBoghandler, Config.TitelReturBoghandler, Config.UrlReturBoghandler);
3212        PanelValg3.Color := clGreen;        PanelValg3.Color := clGreen;
3213        PanelValg3.Font.Color := clWhite;        PanelValg3.Font.Color := clWhite;
3214    
# Line 3278  begin Line 3238  begin
3238        menuAutomatiskTjekkodeStyring.Enabled := false;        menuAutomatiskTjekkodeStyring.Enabled := false;
3239        menuDaoDirekte1.Checked := true;        menuDaoDirekte1.Checked := true;
3240        btnNulstil.Visible := false;        btnNulstil.Visible := false;
3241        InitForm(FarveBudlevering,TitelBudlevering,UrlBudlevering);        InitForm(Config.FarveBudlevering, Config.TitelBudlevering, Config.UrlBudlevering);
3242        PanelValg4.Color := clGreen;        PanelValg4.Color := clGreen;
3243        PanelValg4.Font.Color := clWhite;        PanelValg4.Font.Color := clWhite;
3244    
# Line 3318  begin Line 3278  begin
3278        menuAutomatiskTjekkodeStyring.Enabled := true;        menuAutomatiskTjekkodeStyring.Enabled := true;
3279        menuPakkeshop1.Checked := true;        menuPakkeshop1.Checked := true;
3280        btnNulstil.Visible := false;        btnNulstil.Visible := false;
3281        InitForm(FarvePakkeshoplevering,TitelPakkeshoplevering,UrlPakkeshoplevering);        InitForm(Config.FarvePakkeshoplevering, Config.TitelPakkeshoplevering, Config.UrlPakkeshoplevering);
3282        PanelValg5.Color := clGreen;        PanelValg5.Color := clGreen;
3283        PanelValg5.Font.Color := clWhite;        PanelValg5.Font.Color := clWhite;
3284    
# Line 3358  begin Line 3318  begin
3318        menuAutomatiskTjekkodeStyring.Enabled := false;        menuAutomatiskTjekkodeStyring.Enabled := false;
3319        menuPakkeshopRetur1.Checked := true;        menuPakkeshopRetur1.Checked := true;
3320        btnNulstil.Visible := false;        btnNulstil.Visible := false;
3321        InitForm(FarveReturPakkeshop,TitelReturPakkeshop,UrlReturPakkeshop);        InitForm(Config.FarveReturPakkeshop, Config.TitelReturPakkeshop, Config.UrlReturPakkeshop);
3322        PanelValg6.Color := clGreen;        PanelValg6.Color := clGreen;
3323        PanelValg6.Font.Color := clWhite;        PanelValg6.Font.Color := clWhite;
3324    
# Line 3406  begin Line 3366  begin
3366        menuAutomatiskTjekkodeStyring.Enabled := false;        menuAutomatiskTjekkodeStyring.Enabled := false;
3367    
3368        btnNulstil.Visible := false;        btnNulstil.Visible := false;
3369        InitForm(FarveIndlevering, TitelIndlevering, UrlReturPakkeshop);        InitForm(Config.FarveIndlevering, Config.TitelIndlevering, Config.UrlReturPakkeshop);
3370        PanelValg7.Color := clGreen;        PanelValg7.Color := clGreen;
3371        PanelValg7.Font.Color := clWhite;        PanelValg7.Font.Color := clWhite;
3372    
# Line 3485  end; Line 3445  end;
3445    
3446  procedure TMainForm.Testlyd1Click(Sender: TObject);  procedure TMainForm.Testlyd1Click(Sender: TObject);
3447  begin  begin
3448     if AlarmLyd  <> '' then     if Config.AlarmLyd  <> '' then
3449     begin     begin
3450       PlaySound(PWideChar(AlarmLyd));       PlaySound(PWideChar(Config.AlarmLyd));
3451     end     end
3452     else     else
3453     begin     begin
# Line 3499  procedure TMainForm.Testlyd2Click(Sender Line 3459  procedure TMainForm.Testlyd2Click(Sender
3459  begin  begin
3460    if (PakkeshopText1.Caption = 'Tjekkode') then    if (PakkeshopText1.Caption = 'Tjekkode') then
3461    begin    begin
3462       if ScannetOkTilTjekkodeLyd  <> '' then       if Config.ScannetOkTilTjekkodeLyd  <> '' then
3463       begin       begin
3464         PlaySound(PWideChar(ScannetOkTilTjekkodeLyd));         PlaySound(PWideChar(Config.ScannetOkTilTjekkodeLyd));
3465       end       end
3466       else       else
3467       begin       begin
# Line 3511  begin Line 3471  begin
3471    end;    end;
3472    
3473    if menuSmaaPakker.Checked then    if menuSmaaPakker.Checked then
3474       if ScannetOkLyd  <> '' then       if Config.ScannetOkLyd  <> '' then
3475       begin       begin
3476         PlaySound(PWideChar(ScannetOkLyd));         PlaySound(PWideChar(Config.ScannetOkLyd));
3477       end       end
3478       else       else
3479       begin       begin
3480         MessageBox(Handle, PWideChar('Lyd fil ikke fundet (ScannetOkLyd)'), 'Information', MB_OK);         MessageBox(Handle, PWideChar('Lyd fil ikke fundet (ScannetOkLyd)'), 'Information', MB_OK);
3481       end;       end;
3482    if menuStorePakker.Checked then    if menuStorePakker.Checked then
3483       if ScannetOkStorLyd  <> '' then       if Config.ScannetOkStorLyd  <> '' then
3484       begin       begin
3485         PlaySound(PWideChar(ScannetOkStorLyd));         PlaySound(PWideChar(Config.ScannetOkStorLyd));
3486       end       end
3487       else       else
3488       begin       begin
# Line 3559  begin Line 3519  begin
3519      logTekst := 'Overfører de scannede pakker til EKL';      logTekst := 'Overfører de scannede pakker til EKL';
3520      SkrivScanningLogFil(logTekst);      SkrivScanningLogFil(logTekst);
3521      StedKode := Sted;      StedKode := Sted;
3522      URLStr := Format(UrlEKLoverforsel,[StedKode,Sted]);      URLStr := Format(Config.UrlEKLoverforsel,[StedKode,Sted]);
3523    
3524      if PanelValg5.Color = clGreen then      if PanelValg5.Color = clGreen then
3525      begin      begin
3526        URLStr := Format(UrlEKLoverforselPakkeshop,[StedKode,Sted]);        URLStr := Format(Config.UrlEKLoverforselPakkeshop,[StedKode,Sted]);
3527      end;      end;
3528    
3529    
# Line 3623  begin Line 3583  begin
3583      // Hvis der var fejl i overførslen skal dette fejlmeldes her      // Hvis der var fejl i overførslen skal dette fejlmeldes her
3584      if status = 'Fejl' then      if status = 'Fejl' then
3585      begin   // Her skal komme en alarm og rød skærm      begin   // Her skal komme en alarm og rød skærm
3586         PlaySound(PWideChar(AlarmLyd));         PlaySound(PWideChar(Config.AlarmLyd));
3587         MainForm.Color := clRed;         MainForm.Color := clRed;
3588         RutenummerST.Caption := 'EKL overførsel';         RutenummerST.Caption := 'EKL overførsel';
3589         BoghandlerNavnST.Caption := 'Fejl:';         BoghandlerNavnST.Caption := 'Fejl:';
# Line 4182  var Line 4142  var
4142    pakketyper : TDictionary<String, Integer>;    pakketyper : TDictionary<String, Integer>;
4143    tmpAntal : Integer;    tmpAntal : Integer;
4144    
4145     time, timeSamlet : TTimingHelper;
4146    
4147    
4148    antlin : Integer;    antlin : Integer;
# Line 4217  var Line 4178  var
4178    
4179      if (Scanningtype = '7') then      if (Scanningtype = '7') then
4180       begin       begin
4181        URLStr := Format(UrlIndleveringsPakkeManglendeScanninger, [StedKode]);        URLStr := Format(Config.UrlIndleveringsPakkeManglendeScanninger, [StedKode]);
4182       end       end
4183      else if (Scanningtype = '6') then      else if (Scanningtype = '6') then
4184       begin       begin
4185        URLStr := Format(UrlPakkeshopManglendeReturScanninger, [StedKode]);        URLStr := Format(Config.UrlPakkeshopManglendeReturScanninger, [StedKode]);
4186       end       end
4187      else if (Scanningtype = '5') then      else if (Scanningtype = '5') then
4188       begin       begin
4189        URLStr := Format(UrlPakkeshopManglendeScanninger, [StedKode]);        URLStr := Format(Config.UrlPakkeshopManglendeScanninger, [StedKode]);
4190       end       end
4191      else if (Scanningtype = '1') then      else if (Scanningtype = '1') then
4192       begin       begin
4193        URLStr := Format(UrlManglendeScanninger,[StedKode,'B2']);        URLStr := Format(Config.UrlManglendeScanninger,[StedKode,'B2']);
4194       end       end
4195      else if (Scanningtype = '4') then      else if (Scanningtype = '4') then
4196       begin       begin
4197        URLStr := Format(UrlManglendeScanninger,[StedKode,'A2']);    // Budleveringer        URLStr := Format(Config.UrlManglendeScanninger,[StedKode,'A2']);    // Budleveringer
4198       end       end
4199      else      else
4200       begin       begin
# Line 4241  var Line 4202  var
4202       end;       end;
4203  // 20150310: slut  // 20150310: slut
4204    
4205        time := TTimingHelper.create();        //DEBUG
4206        timeSamlet := TTimingHelper.create();        //DEBUG
4207    
4208      try      try
4209      //raise EIdConnClosedGracefully.Create('test');   // KUN TIL TEST      //raise EIdConnClosedGracefully.Create('test');   // KUN TIL TEST
4210  //    URLStr := string(Utf8Encode(URLStr));  //    URLStr := string(Utf8Encode(URLStr));
# Line 4263  var Line 4227  var
4227        end;        end;
4228      end;      end;
4229      try      try
4230          time.stop('HTTP Load');     //DEBUG
4231    
4232        XMLDocument1.LoadFromXML(WebSvar);        XMLDocument1.LoadFromXML(WebSvar);
4233    
4234          time.stop('XML Load');     //DEBUG
4235    
4236    
4237    
4238    
4239    
4240    
4241        antlin := 0;        antlin := 0;
4242        antlinIdag := 0;        antlinIdag := 0;
# Line 4307  var Line 4279  var
4279        SetLength(stregkoderMedTjekkodeArray, 0);    // reset fra tidligere brug        SetLength(stregkoderMedTjekkodeArray, 0);    // reset fra tidligere brug
4280        SetLength(stregkoderMedTjekkodeArray, antlin);  // sæt antal elementer i array        SetLength(stregkoderMedTjekkodeArray, antlin);  // sæt antal elementer i array
4281    
4282          time.stop('Antal Linier');//DEBUG
4283    
4284        Application.Processmessages; //Ugly Hack to improve User Experience when switching modes        Application.Processmessages; //Ugly Hack to improve User Experience when switching modes
4285    
# Line 4318  var Line 4291  var
4291        logTekst := logTekst + '.';        logTekst := logTekst + '.';
4292    
4293        SkrivScanningLogFil(logTekst);        SkrivScanningLogFil(logTekst);
4294          time.stop('Antal Linier2');//DEBUG
4295    
4296    
4297        for I:= 0 to XMLDocument1.DocumentElement.ChildNodes.Count - 1 do begin        for I:= 0 to XMLDocument1.DocumentElement.ChildNodes.Count - 1 do begin
# Line 4378  var Line 4352  var
4352              if antalFelterFundet = antalLiniefelter then              if antalFelterFundet = antalLiniefelter then
4353              begin              begin
4354                if (ScanningType = '1') then                if (ScanningType = '1') then
4355                  ListBox2.Items.Add(pakketype+'; '+stregkode+'; '+modtagernavn+'; '+modtageradresse+'; '+kommentar+'; '+tjekkodestatus)                  //ListBox2.Items.Add(pakketype+'; '+stregkode+'; '+modtagernavn+'; '+modtageradresse+'; '+kommentar+'; '+tjekkodestatus)
4356                else if (ScanningType = '4') then                else if (ScanningType = '4') then
4357                  ListBox2.Items.Add(pakketype+'; '+stregkode+'; '+modtagernavn+'; '+modtageradresse+'; '+kommentar)                  //ListBox2.Items.Add(pakketype+'; '+stregkode+'; '+modtagernavn+'; '+modtageradresse+'; '+kommentar)
4358                else if (ScanningType = '5') then                else if (ScanningType = '5') then
4359                  ListBox2.Items.Add(stregkode+'; '+modtagernavn+'; '+modtageradresse+'; '+kommentar+'; '+tjekkodestatus)                  //ListBox2.Items.Add(stregkode+'; '+modtagernavn+'; '+modtageradresse+'; '+kommentar+'; '+tjekkodestatus)
4360                else                else
4361                  ListBox2.Items.Add(stregkode+'; '+modtagernavn+'; '+modtageradresse+'; '+kommentar);                  //ListBox2.Items.Add(stregkode+'; '+modtagernavn+'; '+modtageradresse+'; '+kommentar);
4362                antalFelterFundet := 0;                antalFelterFundet := 0;
4363                tjekkodestatus := '';                tjekkodestatus := '';
4364              end;              end;
# Line 4392  var Line 4366  var
4366        end;        end;
4367    
4368    
4369          time.stop('Fyld Listbox2');//DEBUG
4370    
4371    
4372        Application.Processmessages; //Ugly Hack to improve User Experience when switching modes        Application.Processmessages; //Ugly Hack to improve User Experience when switching modes
4373    
4374    
# Line 4511  var Line 4488  var
4488        end;        end;
4489      end;      end;
4490    
4491        time.stop('Done');//DEBUG
4492        timeSamlet.stop('SamletTid');//DEBUG
4493    
4494    
4495  end;  end;
4496    
4497  procedure TMainForm.IndlesScanningLogFil();  procedure TMainForm.IndlesScanningLogFil();
# Line 4686  begin Line 4667  begin
4667          ListBox1.Items.Insert(0,TimeToStr(now) + ': ' +'Fandt ingen linier til '+imorgenYmd+'.');          ListBox1.Items.Insert(0,TimeToStr(now) + ': ' +'Fandt ingen linier til '+imorgenYmd+'.');
4668          logTekst := 'Fandt ingen linier til '+imorgenYmd+'.';          logTekst := 'Fandt ingen linier til '+imorgenYmd+'.';
4669          SkrivScanningLogFil(logTekst);          SkrivScanningLogFil(logTekst);
4670          PlaySound(PWideChar(AlarmLyd));          PlaySound(PWideChar(Config.AlarmLyd));
4671        end;        end;
4672      end;      end;
4673    end    end
# Line 4695  begin Line 4676  begin
4676        ListBox1.Items.Insert(0,TimeToStr(now) + ': ' + 'Ruteskift fil '+filnavn+' findes ikke.');        ListBox1.Items.Insert(0,TimeToStr(now) + ': ' + 'Ruteskift fil '+filnavn+' findes ikke.');
4677        logTekst := 'Ruteskift fil '+filnavn+' findes ikke.';        logTekst := 'Ruteskift fil '+filnavn+' findes ikke.';
4678        SkrivScanningLogFil(logTekst);        SkrivScanningLogFil(logTekst);
4679        PlaySound(PWideChar(AlarmLyd));        PlaySound(PWideChar(Config.AlarmLyd));
4680    end;    end;
4681  end;  end;
4682    
# Line 4766  begin Line 4747  begin
4747          ListBox1.Items.Insert(0,TimeToStr(now) + ': ' +'Fandt ingen linier til '+imorgenYmd+'.');          ListBox1.Items.Insert(0,TimeToStr(now) + ': ' +'Fandt ingen linier til '+imorgenYmd+'.');
4748          logTekst := 'Fandt ingen linier til '+imorgenYmd+'.';          logTekst := 'Fandt ingen linier til '+imorgenYmd+'.';
4749          SkrivScanningLogFil(logTekst);          SkrivScanningLogFil(logTekst);
4750          PlaySound(PWideChar(AlarmLyd));          PlaySound(PWideChar(Config.AlarmLyd));
4751        end;        end;
4752      end;      end;
4753    end    end
# Line 4775  begin Line 4756  begin
4756        ListBox1.Items.Insert(0,TimeToStr(now) + ': ' + 'Kontrol fil '+filnavn+' findes ikke.');        ListBox1.Items.Insert(0,TimeToStr(now) + ': ' + 'Kontrol fil '+filnavn+' findes ikke.');
4757        logTekst := 'Kontrol fil '+filnavn+' findes ikke.';        logTekst := 'Kontrol fil '+filnavn+' findes ikke.';
4758        SkrivScanningLogFil(logTekst);        SkrivScanningLogFil(logTekst);
4759        PlaySound(PWideChar(AlarmLyd));        PlaySound(PWideChar(Config.AlarmLyd));
4760    end;    end;
4761  end;  end;
4762    
# Line 4833  procedure TMainForm.VisAlarmSkaerm(strMe Line 4814  procedure TMainForm.VisAlarmSkaerm(strMe
4814  begin  begin
4815    //ShowMessage('Ændring ikke tilladt');    //ShowMessage('Ændring ikke tilladt');
4816    // Her skal komme en 'rød skærm' alarm    // Her skal komme en 'rød skærm' alarm
4817    PlaySound(PWideChar(AlarmLyd));    PlaySound(PWideChar(Config.AlarmLyd));
4818    MainForm.Color := clRed;    MainForm.Color := clRed;
4819    
4820    
# Line 4961  begin Line 4942  begin
4942    Result := self;    Result := self;
4943  end;  end;
4944    
4945    //Nedarvet fra IParentForm
4946    function TMainForm.GetXMLDocument() : TXMLDocument;
4947    begin
4948      Result := XMLDocument1
4949    end;
4950    
4951    
4952  end.  end.
4953    

Legend:
Removed from v.3057  
changed lines
  Added in v.3123

  ViewVC Help
Powered by ViewVC 1.1.20