/[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 3108 by torben, Mon Aug 29 14:03:14 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    
207    
208    
# Line 209  type Line 212  type
212      SkrivLog : String;      SkrivLog : String;
213      Sted : String;      Sted : String;
214      StedNavn : String;      StedNavn : String;
     Url, UrlNormal, UrlReturDAO, UrlReturBoghandler, UrlBudlevering, UrlManglendeScanninger, UrlPakkeshoplevering,  
             UrlReturPakkeshop, UrlPakkeshopManglendeScanninger, UrlPakkeshopManglendeReturScanninger,UrlIndleveringsPakke,  
             UrlIndleveringsPakkeManglendeScanninger,UrlEKLoverforsel, URLOmdirigerTilPakkeshop : String;  
215    
216      UrlEKLoverforselPakkeshop : String;      Scanningtype,  Pakketype : String;
217    
     UrlFindPakketype, UrlSendPrograminfo: String;  
     Scanningtype, TestFunktionen, Pakketype, SporgEfterBoghandler : String;  
     ScanTjekkode : String;  
     ScanTjekkodeAutomatik : string;  
218    
219      Farve, FarveNormal, FarveReturDAO, FarveReturBoghandler, FarveBudlevering, FarvePakkeshoplevering, FarveReturPakkeshop,      Url : String;
           FarveIndlevering : String;  
220    
221      Titel, TitelNormal, TitelReturDAO, TitelReturBoghandler, TitelBudlevering, TitelPakkeshoplevering, TitelReturPakkeshop,      Farve : String;
           TitelIndlevering : String;  
222    
223      AlarmLyd : String;      Titel : String;
     ScannetOkLyd : String;  
     ScannetOkStorLyd : String;  
224    
     ScannetOkTilTjekkodeLyd : String;  
225    
     PrinterNavn : String;  
     TjekPrinter : String;  
226    
227      Org_RuteNummerST, Org_BoghandlerNavnST, Org_KommentarST : String;      Org_RuteNummerST, Org_BoghandlerNavnST, Org_KommentarST : String;
228      BladhusSted : Integer;      BladhusSted : Integer;
# Line 246  type Line 235  type
235      logTekst : string;      logTekst : string;
236      PakkeshopStregkode, PakkeshopTjekkode : String;      PakkeshopStregkode, PakkeshopTjekkode : String;
237      BoghandlerStregkode, BoghandlerTjekkode : String;      BoghandlerStregkode, BoghandlerTjekkode : String;
238      TjekUrls : String;  
239      Config : TConfiguration;      Config : TConfiguration;
240    
241    
# Line 263  type Line 252  type
252      procedure SkrivScanningLogFil(var tekst : string);      procedure SkrivScanningLogFil(var tekst : string);
253      function TjekKoreliste(var RuteNummer, Koreliste : string) : string;      function TjekKoreliste(var RuteNummer, Koreliste : string) : string;
254      procedure VisAlarmSkaerm(strMessage: string);      procedure VisAlarmSkaerm(strMessage: string);
255      function InjectURL(Url : String) : String;  
256    
257    public    public
258      { Public declarations }      { Public declarations }
# Line 417  begin Line 406  begin
406    
407      if (Scanningtype = '1') or (Scanningtype = '5') then      if (Scanningtype = '1') or (Scanningtype = '5') then
408      begin      begin
409        if (ScanTjekkode = '1') then        if (Config.ScanTjekkode = '1') then
410        begin        begin
411          chkScanTjekkode.Checked := true;          chkScanTjekkode.Checked := true;
412          chkScanTjekkode.Enabled := true;          chkScanTjekkode.Enabled := true;
# Line 513  begin Line 502  begin
502       PanelValgA.Font.Color := clWhite;       PanelValgA.Font.Color := clWhite;
503  end;  end;
504    
 function TMainForm.InjectURL(Url : String) : String;  
 begin  
505    
   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;  
506    
507  //InitForm kaldes før FormCreate  //InitForm kaldes før FormCreate
508  procedure TMainForm.FormCreate(Sender: TObject);  procedure TMainForm.FormCreate(Sender: TObject);
# Line 558  begin Line 539  begin
539    
540  // Sætter lige en default panel størrelse  // Sætter lige en default panel størrelse
541    MainForm.ClientWidth := 1000;    MainForm.ClientWidth := 1000;
542    MainForm.ClientHeight := 750;    MainForm.ClientHeight := 920;
543    
544    Config := TConfiguration.Create();    Config := TConfiguration.Create();
545    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 554  begin
554      Sted := ReadString('Settings','Sted','');      Sted := ReadString('Settings','Sted','');
555      StedNavn := ReadString('Settings','Stednavn','');      StedNavn := ReadString('Settings','Stednavn','');
556    
557      UrlFindPakketype := ReadString('Settings','UrlFindPakketype','http://omdeling.info/webservices/bogpakkekontrol/FindPakketype.php?stregkode=%s');      Scanningtype := 'A'; //hardcoded
558      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);  
   
   
   
     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');  
559    
560    
     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');  
561    
     ScannetOkTilTjekkodeLyd := ReadString('Settings','ScannetOkTilTjekkodeLyd','Sounds\Ok_til_tjekkode.wav');  
562    
     PrinterNavn := ReadString('Settings','PrinterNavn','');  
     TjekPrinter := ReadString('Settings','TjekPrinter','1');  
     TjekUrls := ReadString('Settings','TjekUrls','2');  
563    
564      if (SkrivLog = '1') then      if (SkrivLog = '1') then
565      begin      begin
# Line 683  begin Line 587  begin
587    
588    
589    
590      if SporgEfterBoghandler = '1' then      if Config.SporgEfterBoghandler = '1' then
591      begin      begin
592        chkSporgEfterKunde.Checked := true;        chkSporgEfterKunde.Checked := true;
593        Sprgefterboghandlernummer1.Checked := true;        Sprgefterboghandlernummer1.Checked := true;
# Line 694  begin Line 598  begin
598        Sprgefterboghandlernummer1.Checked := false;        Sprgefterboghandlernummer1.Checked := false;
599      end;      end;
600    
601      if ScanTjekkode = '1' then      if Config.ScanTjekkode = '1' then
602      begin      begin
603        chkScanTjekkode.Checked := true;        chkScanTjekkode.Checked := true;
604        Scanogstjekkoden1.Checked := true;        Scanogstjekkoden1.Checked := true;
# Line 705  begin Line 609  begin
609        Scanogstjekkoden1.Checked := false;        Scanogstjekkoden1.Checked := false;
610      end;      end;
611    
612      if ScanTjekkodeAutomatik = '1' then      if Config.ScanTjekkodeAutomatik = '1' then
613      begin      begin
614        menuAutomatiskTjekkodeStyring.Checked := true;        menuAutomatiskTjekkodeStyring.Checked := true;
615        chkScanTjekkode.Enabled := false;        chkScanTjekkode.Enabled := false;
# Line 950  begin Line 854  begin
854          Application.Terminate;          Application.Terminate;
855      end;      end;
856    
857      if TjekUrls = '1' then    // Tjekker urls      if Config.TjekUrls = '1' then    // Tjekker urls
858      begin      begin
859          TjekkerUrls();          TjekkerUrls();
860          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
861          begin          begin
862             PlaySound(PWideChar(AlarmLyd));             PlaySound(PWideChar(Config.AlarmLyd));
863             MainForm.Color := clRed;             MainForm.Color := clRed;
864             RutenummerST.Caption := '';             RutenummerST.Caption := '';
865             BoghandlerNavnST.Caption := 'Fejl i urls';             BoghandlerNavnST.Caption := 'Fejl i urls';
# Line 1011  begin Line 915  begin
915        radioLillePakke.Checked := true;        radioLillePakke.Checked := true;
916      end;      end;
917    
918      if TestFunktionen = '1' then      if Config.TestFunktionen = '1' then
919      begin      begin
920        Testforbindelsen1.Visible := true;        Testforbindelsen1.Visible := true;
921        Testprinter1.Visible := true;        Testprinter1.Visible := true;
922        Testlyd1.Visible := true;        Testlyd1.Visible := true;
923        Testlyd2.Visible := true;        Testlyd2.Visible := true;
924      end      end
925      else if TestFunktionen = '2' then      else if Config.TestFunktionen = '2' then
926      begin      begin
927        Testforbindelsen1.Enabled := false;        Testforbindelsen1.Enabled := false;
928        Testprinter1.Enabled := false;        Testprinter1.Enabled := false;
# Line 1033  begin Line 937  begin
937        Testlyd2.Visible := false;        Testlyd2.Visible := false;
938      end;      end;
939    
     if not FileExists(AlarmLyd) then  
     begin  
       AlarmLyd := '';  
     end;  
   
     if not FileExists(ScannetOkLyd) then  
     begin  
       ScannetOkLyd := '';  
     end;  
   
     if not FileExists(ScannetOkStorLyd) then  
     begin  
       ScannetOkStorLyd := '';  
     end;  
   
   
     if not FileExists(ScannetOkTilTjekkodeLyd) then  
     begin  
       ScannetOkTilTjekkodeLyd := '';  
     end;  
940    
941    
942    
943    
944      LabelPrint := TLabelPrint.Create( self, Config, PrinterNavn );      LabelPrint := TLabelPrint.Create( self, Config, Config.PrinterNavn );
945      LabelPrint.CheckPrintQue('Opstart', PrinterNavn);      LabelPrint.CheckPrintQue('Opstart', Config.PrinterNavn);
946    
947    finally    finally
948      Free;      Free;
# Line 1423  begin Line 1307  begin
1307      if (Length(Stregkode) > 8) then      if (Length(Stregkode) > 8) then
1308      begin      begin
1309        // Her skal vi så forespørge pakketype på serveren udfra stregkode feltet        // Her skal vi så forespørge pakketype på serveren udfra stregkode feltet
1310        URLStr := Format(UrlFindPakketype,[Stregkode]);        URLStr := Format(Config.UrlFindPakketype,[Stregkode]);
1311        try        try
1312          //raise EIdConnClosedGracefully.Create('test');   // KUN TIL TEST          //raise EIdConnClosedGracefully.Create('test');   // KUN TIL TEST
1313          WebSvar := IdHTTP1.Get(URLStr);          WebSvar := IdHTTP1.Get(URLStr);
# Line 1546  begin Line 1430  begin
1430        end;        end;
1431      end;      end;
1432    
1433        // EmballageRepareret skal bare sætte reklamationkoden,
1434        // og så ellers fortsætte med scanning som normalt
1435        if (chkEmballageRepareret.Checked = True) then
1436        begin
1437          URLStr := Format(Config.UrlEmballageRepareret,[Sted,Stregkode]);
1438          WebSvar := IdHTTP1.Get(URLStr);
1439    
1440          chkEmballageRepareret.Checked := False;
1441        end;
1442    
1443        if (chkUdenforSpecifikation.Checked = True) then
1444        begin
1445          URLStr := Format(Config.URLUdenforSpecifikation,[Sted,Stregkode]);
1446          //InputBox( '1', '1', URLStr);
1447    
1448          WebSvar := IdHTTP1.Get(URLStr);
1449          //InputBox( '2', '2', WebSvar );
1450    
1451          chkUdenforSpecifikation.Checked := False;
1452          LabelPrint.PrintLabel(Stregkode);
1453    
1454          StregkodeST.Caption := '';
1455          Stregkode := '';
1456    
1457          RuteNummerST.Caption := '';
1458          BoghandlerNavnST.Caption := '';
1459          KommentarST.Caption := 'Retur til leverandør';
1460    
1461    
1462    
1463    
1464          exit;   //leave procedure
1465        end;
1466    
1467    
1468    
1469    
1470      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 1511  begin
1511              BoghandlerStregkode := Stregkode;              BoghandlerStregkode := Stregkode;
1512              PakkeshopText1.Caption := 'Tjekkode';              PakkeshopText1.Caption := 'Tjekkode';
1513    
1514              PlaySound(PWideChar(ScannetOkTilTjekkodeLyd));              PlaySound(PWideChar(Config.ScannetOkTilTjekkodeLyd));
1515    
1516             end             end
1517            else            else
# Line 1610  begin Line 1529  begin
1529             BoghandlerTjekkode := Stregkode;             BoghandlerTjekkode := Stregkode;
1530             PakkeshopText1.Caption := 'Stregkode';             PakkeshopText1.Caption := 'Stregkode';
1531             if (menuPakkeshop1.Checked) then             if (menuPakkeshop1.Checked) then
1532                MainForm.Color := TUtils.HexToTColor(FarvePakkeshoplevering);                MainForm.Color := TUtils.HexToTColor(Config.FarvePakkeshoplevering);
1533             if (menuNatXpress1.Checked) then             if (menuNatXpress1.Checked) then
1534                MainForm.Color := TUtils.HexToTColor(FarveNormal);                MainForm.Color := TUtils.HexToTColor(Config.FarveNormal);
1535             btnNulstil.Visible := false;             btnNulstil.Visible := false;
1536           end           end
1537          else          else
# Line 1666  begin Line 1585  begin
1585              tjekkodemangler := pos('Tjekkode mangler', Kommentar);              tjekkodemangler := pos('Tjekkode mangler', Kommentar);
1586              if (pakkeErScannet > 0) or (pakkeForkertSted > 0) or (tjekkodemangler > 0) then              if (pakkeErScannet > 0) or (pakkeForkertSted > 0) or (tjekkodemangler > 0) then
1587              begin              begin
1588                PlaySound(PWideChar(AlarmLyd));                PlaySound(PWideChar(Config.AlarmLyd));
1589                btnNulstil.Visible := true;                btnNulstil.Visible := true;
1590                MainForm.Color := clRed;                MainForm.Color := clRed;
1591              end;              end;
# Line 1676  begin Line 1595  begin
1595              MainForm.Color := TUtils.HexToTColor(Farve);              MainForm.Color := TUtils.HexToTColor(Farve);
1596              if menuStorePakker.Checked then              if menuStorePakker.Checked then
1597              begin              begin
1598                PlaySound(PWideChar(ScannetOkStorLyd));                PlaySound(PWideChar(Config.ScannetOkStorLyd));
1599              end              end
1600              else              else
1601              begin              begin
1602                PlaySound(PWideChar(ScannetOkLyd));                PlaySound(PWideChar(Config.ScannetOkLyd));
1603              end;              end;
1604              btnNulstil.Visible := false;              btnNulstil.Visible := false;
1605            end            end
# Line 1689  begin Line 1608  begin
1608              MainForm.Color := TUtils.HexToTColor(Farve);              MainForm.Color := TUtils.HexToTColor(Farve);
1609              if menuStorePakker.Checked then              if menuStorePakker.Checked then
1610              begin              begin
1611                PlaySound(PWideChar(ScannetOkStorLyd));                PlaySound(PWideChar(Config.ScannetOkStorLyd));
1612              end              end
1613              else              else
1614              begin              begin
1615                PlaySound(PWideChar(ScannetOkLyd));                PlaySound(PWideChar(Config.ScannetOkLyd));
1616              end;              end;
1617              btnNulstil.Visible := false;              btnNulstil.Visible := false;
1618            end            end
# Line 1716  begin Line 1635  begin
1635              begin              begin
1636                if menuStorePakker.Checked then                if menuStorePakker.Checked then
1637                begin                begin
1638                  PlaySound(PWideChar(ScannetOkStorLyd));                  PlaySound(PWideChar(Config.ScannetOkStorLyd));
1639                end                end
1640                else                else
1641                begin                begin
1642                  PlaySound(PWideChar(ScannetOkLyd));                  PlaySound(PWideChar(Config.ScannetOkLyd));
1643                end;                end;
1644                InitLillePakke();                InitLillePakke();
1645              end;              end;
# Line 1774  var Line 1693  var
1693    WebSvar : String;    WebSvar : String;
1694    URLStr : String;    URLStr : String;
1695  begin  begin
1696    if UrlSendPrograminfo <> '' then    if Config.UrlSendPrograminfo <> '' then
1697    begin    begin
1698      URLStr := Format(UrlSendPrograminfo,[ExtractFileName(ParamStr(0)), Sted, Scanningtype, Infotype, Info]);      URLStr := Format(Config.UrlSendPrograminfo,[ExtractFileName(ParamStr(0)), Sted, Scanningtype, Infotype, Info]);
1699      try      try
1700        //raise EIdConnClosedGracefully.Create('test');   // KUN TIL TEST        //raise EIdConnClosedGracefully.Create('test');   // KUN TIL TEST
1701        WebSvar := IdHTTP1.Get(URLStr);        WebSvar := IdHTTP1.Get(URLStr);
# Line 1789  begin Line 1708  begin
1708        ShowMessage(logTekst);        ShowMessage(logTekst);
1709        SkrivScanningLogFil(logTekst);        SkrivScanningLogFil(logTekst);
1710        // 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
1711        UrlSendPrograminfo := '';        Config.UrlSendPrograminfo := '';
1712        Application.Terminate;        Application.Terminate;
1713      end;      end;
1714      end;      end;
# Line 2049  var Line 1968  var
1968    pakkestorrelse : String;    pakkestorrelse : String;
1969    PrintNyLabelInteger : Integer;    PrintNyLabelInteger : Integer;
1970    
1971    PakkeshopLabel: TPakkeshopLabel;    PakkeshopLabel: TLabelData;
1972  begin  begin
1973    if radioStorPakke.Checked then    if radioStorPakke.Checked then
1974    begin    begin
# Line 2067  begin Line 1986  begin
1986       begin       begin
1987         BoghandlerTjekkode := '-1';         BoghandlerTjekkode := '-1';
1988       end;       end;
1989       URLStr := Format(UrlNormal,[Sted, PakkeNr, BoghandlerNummer, BoghandlerTjekkode]);       URLStr := Format(Config.UrlNormal,[Sted, PakkeNr, BoghandlerNummer, BoghandlerTjekkode]);
1990    end    end
1991    else if menuNatxpressReturDAO1.Checked then    else if menuNatxpressReturDAO1.Checked then
1992    begin    begin
1993       URLStr := Format(UrlReturDAO,[Sted, PakkeNr, BoghandlerNummer, 'DAO', pakkestorrelse]);       URLStr := Format(Config.UrlReturDAO,[Sted, PakkeNr, BoghandlerNummer, 'DAO', pakkestorrelse]);
1994    end    end
1995    else if menuNatxpressReturfraKunde1.Checked then    else if menuNatxpressReturfraKunde1.Checked then
1996    begin    begin
1997       URLStr := Format(UrlReturBoghandler,[Sted, PakkeNr, BoghandlerNummer, 'Boghandler', pakkestorrelse]);       URLStr := Format(Config.UrlReturBoghandler,[Sted, PakkeNr, BoghandlerNummer, 'Boghandler', pakkestorrelse]);
1998    end    end
1999    else if menuDaoDirekte1.Checked then    else if menuDaoDirekte1.Checked then
2000    begin    begin
2001       URLStr := Format(UrlBudlevering,[Sted, PakkeNr, 'bud', pakkestorrelse]);       URLStr := Format(Config.UrlBudlevering,[Sted, PakkeNr, 'bud', pakkestorrelse]);
2002    end    end
2003    else if menuPakkeshop1.Checked then    else if menuPakkeshop1.Checked then
2004    begin    begin
2005       URLStr := Format(UrlPakkeshoplevering,[Sted, PakkeNr, PakkeshopTjekkode]);       URLStr := Format(Config.UrlPakkeshoplevering,[Sted, PakkeNr, PakkeshopTjekkode]);
2006    end    end
2007    else if menuPakkeshopRetur1.Checked then    else if menuPakkeshopRetur1.Checked then
2008    begin    begin
2009       URLStr := Format(UrlReturPakkeshop,[Sted, PakkeNr]);       URLStr := Format(Config.UrlReturPakkeshop,[Sted, PakkeNr]);
2010    end    end
2011    else if menuIndlevering.Checked then    else if menuIndlevering.Checked then
2012    begin    begin
2013      URLStr := Format(UrlIndleveringsPakke,[Sted, PakkeNr]);      URLStr := Format(Config.UrlIndleveringsPakke,[Sted, PakkeNr]);
2014    end    end
2015    else    else
2016    begin    begin
# Line 2100  begin Line 2019  begin
2019    
2020    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
2021    begin    begin
2022      URLStr := Format(URLOmdirigerTilPakkeshop,[Sted, PakkeNr]);      URLStr := Format(Config.URLOmdirigerTilPakkeshop,[Sted, PakkeNr]);
2023    end;    end;
2024    
2025    try    try
# Line 2158  begin Line 2077  begin
2077       if (Kommentar = 'Ok') then       if (Kommentar = 'Ok') then
2078       begin       begin
2079         PrintNyLabel := True; //Indleveringskode vil ALTID udskrive label         PrintNyLabel := True; //Indleveringskode vil ALTID udskrive label
2080         PakkeshopLabel := TPakkeshopLabel.Create( XMLDocument1 ); //Opret struct og parse xml doc         PakkeshopLabel := TLabelData.Create( XMLDocument1 ); //Opret struct og parse xml doc
2081         RuteNummer := PakkeshopLabel.Koreliste + '  ->  ' +  PakkeshopLabel.PakkeshopTurid;         RuteNummer := PakkeshopLabel.Koreliste + '  ->  ' +  PakkeshopLabel.PakkeshopTurid;
2082         Stregkode := PakkeshopLabel.Stregkode;         Stregkode := PakkeshopLabel.Stregkode;
2083    
2084         LabelPrint.PrintPakkeshopLabel( PakkeshopLabel );         LabelPrint.PrintFuldPakkeLabel( PakkeshopLabel );
2085         chkForstorTilDirekte.Checked := false;         chkForstorTilDirekte.Checked := false;
2086    
2087       end;       end;
# Line 2207  begin Line 2126  begin
2126      begin      begin
2127        if (Leveringssted <> BladhusStedKode[BladhusSted]) and (BladhusStedKode[BladhusSted] <> 'DBK') then        if (Leveringssted <> BladhusStedKode[BladhusSted]) and (BladhusStedKode[BladhusSted] <> 'DBK') then
2128        begin        begin
2129            Kommentar := Kommentar + ' Pakke burde være hos DAO Distribution';            Kommentar := Kommentar + ' Pakke burde være hos ' + Leveringssted;
2130            PrintNyLabel := False;            //PrintNyLabel := False; //ved fuld-daekning / X-ruter skal vi altid skrive label alligevel
2131        end;        end;
2132      end      end
2133      else if (menuDaoDirekte1.Checked) and (Leveringssted <> Sted) then      else if (menuDaoDirekte1.Checked) and (Leveringssted <> Sted) And (Leveringssted <> '') then
2134      begin      begin
2135         if (Leveringssted = 'E') and (Sted = 'DBK') then        Kommentar := Kommentar + ' Pakke burde være hos ' + Leveringssted;
2136         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;  
2137      end;      end;
2138    except on e:exception do    except on e:exception do
2139      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 2234  pakkeForkertSted : Integer;
2234    kontrolKoreliste : string;    kontrolKoreliste : string;
2235    nytRuteNummer, nyFarve : String;    nytRuteNummer, nyFarve : String;
2236  begin  begin
2237      if (PrintNyLabel = True OR chkAltidPrintLabel.Checked = True) then
2238      begin
2239        LabelPrint.PrintLabel( Stregkode );
2240      end;
2241    
2242    
2243      exit;
2244    
2245    if menuDaoDirekte1.Checked then    if menuDaoDirekte1.Checked then
2246       RuteNummerST.Color := TUtils.HexToTColor(Farve);       RuteNummerST.Color := TUtils.HexToTColor(Farve);
2247    
# Line 2366  begin Line 2286  begin
2286       begin       begin
2287          PrintNyLabel := false;          PrintNyLabel := false;
2288    
2289          PlaySound(PWideChar(AlarmLyd));          PlaySound(PWideChar(Config.AlarmLyd));
2290          MainForm.Color := clRed;          MainForm.Color := clRed;
2291          btnNulstil.Visible := true;          btnNulstil.Visible := true;
2292    
# Line 2386  begin Line 2306  begin
2306            logTekst := RightStr(List1Msg, Length(List1Msg)-10);            logTekst := RightStr(List1Msg, Length(List1Msg)-10);
2307            SkrivScanningLogFil(logTekst);            SkrivScanningLogFil(logTekst);
2308    
2309            if (PrinterNavn = 'Ingen') then  //          if (Config.PrinterNavn = 'Ingen') then
2310            begin  //          begin
2311               PrintNyLabel := false;  //             PrintNyLabel := false;
2312            end;  //          end;
2313    
2314            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
2315            begin            begin
2316              PlaySound(PWideChar(AlarmLyd));              PlaySound(PWideChar(Config.AlarmLyd));
2317              MainForm.Color := clRed;              MainForm.Color := clRed;
2318              btnNulstil.Visible := true;              btnNulstil.Visible := true;
2319            end;            end;
# Line 2419  begin Line 2339  begin
2339    
2340            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
2341            begin            begin
2342              PlaySound(PWideChar(AlarmLyd));              PlaySound(PWideChar(Config.AlarmLyd));
2343              MainForm.Color := clRed;              MainForm.Color := clRed;
2344              btnNulstil.Visible := true;              btnNulstil.Visible := true;
2345            end;            end;
# Line 2488  begin Line 2408  begin
2408    end    end
2409    else    else
2410    begin    begin
2411      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
2412      begin      begin
2413        logTekst := 'Printer label type ';        logTekst := 'Printer label type ';
2414        if (chkAltidPrintLabel.Checked) then        if (chkAltidPrintLabel.Checked) then
# Line 2507  begin Line 2427  begin
2427        SkrivScanningLogFil(logTekst);        SkrivScanningLogFil(logTekst);
2428    
2429        LabelPrint.PrintDaodirekteLabel( RuteNummer, Kommentar, BoghandlerNavn) ;        LabelPrint.PrintDaodirekteLabel( RuteNummer, Kommentar, BoghandlerNavn) ;
2430          
2431      end;      end;
2432    end;    end;
2433    
# Line 2613  begin Line 2533  begin
2533      // Tjekker UrlNormal      // Tjekker UrlNormal
2534      if PanelValg1.Enabled = true then      if PanelValg1.Enabled = true then
2535      begin      begin
2536        TjekkerEnkeltUrl('UrlNormal', UrlNormal, urlFejl);        TjekkerEnkeltUrl('UrlNormal', Config.UrlNormal, urlFejl);
2537      end;      end;
2538    
2539      // Tjekker UrlReturDAO      // Tjekker UrlReturDAO
2540      if PanelValg2.Enabled = true then      if PanelValg2.Enabled = true then
2541      begin      begin
2542        TjekkerEnkeltUrl('UrlReturDAO', UrlReturDAO, urlFejl);        TjekkerEnkeltUrl('UrlReturDAO', Config.UrlReturDAO, urlFejl);
2543      end;      end;
2544    
2545      // Tjekker UrlReturBoghandler      // Tjekker UrlReturBoghandler
2546      if PanelValg3.Enabled = true then      if PanelValg3.Enabled = true then
2547      begin      begin
2548        TjekkerEnkeltUrl('UrlReturBoghandler', UrlReturBoghandler, urlFejl);        TjekkerEnkeltUrl('UrlReturBoghandler', Config.UrlReturBoghandler, urlFejl);
2549      end;      end;
2550    
2551      // Tjekker UrlBudlevering      // Tjekker UrlBudlevering
2552      if PanelValg4.Enabled = true then      if PanelValg4.Enabled = true then
2553      begin      begin
2554        TjekkerEnkeltUrl('UrlBudlevering', UrlBudlevering, urlFejl);        TjekkerEnkeltUrl('UrlBudlevering', Config.UrlBudlevering, urlFejl);
2555      end;      end;
2556    
2557      // Tjekker UrlPakkeshoplevering      // Tjekker UrlPakkeshoplevering
2558      if PanelValg5.Enabled = true then      if PanelValg5.Enabled = true then
2559      begin      begin
2560        TjekkerEnkeltUrl('UrlPakkeshoplevering', UrlPakkeshoplevering, urlFejl);        TjekkerEnkeltUrl('UrlPakkeshoplevering', Config.UrlPakkeshoplevering, urlFejl);
2561      end;      end;
2562    
2563      // Tjekker UrlReturPakkeshop      // Tjekker UrlReturPakkeshop
2564      if PanelValg6.Enabled = true then      if PanelValg6.Enabled = true then
2565      begin      begin
2566        TjekkerEnkeltUrl('UrlReturPakkeshop', UrlReturPakkeshop, urlFejl);        TjekkerEnkeltUrl('UrlReturPakkeshop', Config.UrlReturPakkeshop, urlFejl);
2567      end;      end;
2568    
2569      // Tjekker UrlManglendeScanninger      // Tjekker UrlManglendeScanninger
2570      if (PanelValg1.Enabled = true) or (PanelValg4.Enabled = true) then      if (PanelValg1.Enabled = true) or (PanelValg4.Enabled = true) then
2571      begin      begin
2572        TjekkerEnkeltUrl('UrlManglendeScanninger', UrlManglendeScanninger, urlFejl);        TjekkerEnkeltUrl('UrlManglendeScanninger', Config.UrlManglendeScanninger, urlFejl);
2573      end;      end;
2574    
2575      // Tjekker UrlPakkeshopManglendeScanninger      // Tjekker UrlPakkeshopManglendeScanninger
2576      if PanelValg5.Enabled = true then      if PanelValg5.Enabled = true then
2577      begin      begin
2578        TjekkerEnkeltUrl('UrlPakkeshopManglendeScanninger', UrlPakkeshopManglendeScanninger, urlFejl);        TjekkerEnkeltUrl('UrlPakkeshopManglendeScanninger', Config.UrlPakkeshopManglendeScanninger, urlFejl);
2579      end;      end;
2580    
2581      // Tjekker UrlPakkeshopManglendeReturScanninger      // Tjekker UrlPakkeshopManglendeReturScanninger
2582      if PanelValg6.Enabled = true then      if PanelValg6.Enabled = true then
2583      begin      begin
2584        TjekkerEnkeltUrl('UrlPakkeshopManglendeReturScanninger', UrlPakkeshopManglendeReturScanninger, urlFejl);        TjekkerEnkeltUrl('UrlPakkeshopManglendeReturScanninger', Config.UrlPakkeshopManglendeReturScanninger, urlFejl);
2585      end;      end;
2586    
2587     // Tjekker UrlIndleveringsPakke og UrlIndleveringsPakkeManglendeScanninger     // Tjekker UrlIndleveringsPakke og UrlIndleveringsPakkeManglendeScanninger
2588      if PanelValg7.Enabled = true then      if PanelValg7.Enabled = true then
2589      begin      begin
2590        TjekkerEnkeltUrl('UrlIndleveringsPakke', UrlIndleveringsPakke, urlFejl);        TjekkerEnkeltUrl('UrlIndleveringsPakke', Config.UrlIndleveringsPakke, urlFejl);
2591        TjekkerEnkeltUrl('UrlIndleveringsPakkeManglendeScanninger', UrlIndleveringsPakkeManglendeScanninger, urlFejl);        TjekkerEnkeltUrl('UrlIndleveringsPakkeManglendeScanninger', Config.UrlIndleveringsPakkeManglendeScanninger, urlFejl);
2592      end;      end;
2593    
2594      // Tjekker UrlEKLoverforsel      // Tjekker UrlEKLoverforsel
2595      if PanelValg1.Enabled = true then      if PanelValg1.Enabled = true then
2596      begin      begin
2597        TjekkerEnkeltUrl('UrlEKLoverforsel', UrlEKLoverforsel, urlFejl);        TjekkerEnkeltUrl('UrlEKLoverforsel', Config.UrlEKLoverforsel, urlFejl);
2598      end;      end;
2599    
2600    
2601      // Tjekker UrlEKLoverforselPakkeshop      // Tjekker UrlEKLoverforselPakkeshop
2602      if PanelValg5.Enabled = true then      if PanelValg5.Enabled = true then
2603      begin      begin
2604        TjekkerEnkeltUrl('UrlEKLoverforselPakkeshop', UrlEKLoverforselPakkeshop, urlFejl);        TjekkerEnkeltUrl('UrlEKLoverforselPakkeshop', Config.UrlEKLoverforselPakkeshop, urlFejl);
2605      end;      end;
2606    
2607    
2608      // Tjekker UrlFindPakketype      // Tjekker UrlFindPakketype
2609      TjekkerEnkeltUrl('UrlFindPakketype', UrlFindPakketype, urlFejl);      TjekkerEnkeltUrl('UrlFindPakketype', Config.UrlFindPakketype, urlFejl);
2610    
2611      // Tjekker UrlSendPrograminfo      // Tjekker UrlSendPrograminfo
2612      TjekkerEnkeltUrl('UrlSendPrograminfo', UrlSendPrograminfo, urlFejl);      TjekkerEnkeltUrl('UrlSendPrograminfo', Config.UrlSendPrograminfo, urlFejl);
2613    
2614    
2615    
# Line 2698  begin Line 2618  begin
2618      SkrivScanningLogFil(logTekst);      SkrivScanningLogFil(logTekst);
2619    
2620    Except    Except
2621      TjekUrls := '-';   // markerer at der var fejl      Config.TjekUrls := '-';   // markerer at der var fejl
2622    
2623    end;    end;
2624  end;  end;
# Line 2718  begin Line 2638  begin
2638      inc(urlFejl);   // Optæller antal fejl      inc(urlFejl);   // Optæller antal fejl
2639      logTekst := UrlNavn + ' svarer ikke: ' + Url;      logTekst := UrlNavn + ' svarer ikke: ' + Url;
2640      ListBox1.Items.Insert(0,TimeToStr(now) + ': ' + logTekst);      ListBox1.Items.Insert(0,TimeToStr(now) + ': ' + logTekst);
2641      if TjekUrls = '1' then      if Config.TjekUrls = '1' then
2642      begin      begin
2643        logTekst := logTekst + crlf + crlf + 'Programmet afsluttes... ';        logTekst := logTekst + crlf + crlf + 'Programmet afsluttes... ';
2644      end;      end;
2645    
2646      SkrivScanningLogFil(logTekst);      SkrivScanningLogFil(logTekst);
2647    
2648      if TjekUrls = '1' then      if Config.TjekUrls = '1' then
2649      begin      begin
2650        ShowMessage(logTekst);        ShowMessage(logTekst);
2651        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
2652        Application.Terminate;        Application.Terminate;
2653    
2654        raise Exception.Create('UrlFejl');        raise Exception.Create('UrlFejl');
# Line 2809  begin Line 2729  begin
2729    if BoghandlerNavnST.Caption = 'Fejl i forbindelse til server' then    if BoghandlerNavnST.Caption = 'Fejl i forbindelse til server' then
2730    begin    begin
2731       ShowMessage('Programmet afbrydes...');       ShowMessage('Programmet afbrydes...');
2732       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
2733       Application.Terminate;       Application.Terminate;
2734       exit;       exit;
2735    end;    end;
# Line 2911  var Line 2831  var
2831    Leveringssted : String;    Leveringssted : String;
2832    orgTjekUrls : String;    orgTjekUrls : String;
2833  begin  begin
2834    orgTjekUrls := TjekUrls;    orgTjekUrls := Config.TjekUrls;
2835    if (TjekUrls = '1') or (TjekUrls = '2') then    if (Config.TjekUrls = '1') or (Config.TjekUrls = '2') then
2836    begin    begin
2837      TjekkerUrls();      TjekkerUrls();
2838    end;    end;
2839    if TjekUrls = '-' then    if Config.TjekUrls = '-' then
2840    begin    begin
2841      //ShowMessage('Der var fejl i een eller flere urls - se logvinduet');      //ShowMessage('Der var fejl i een eller flere urls - se logvinduet');
2842      RuteNummer := '';      RuteNummer := '';
# Line 2925  begin Line 2845  begin
2845      Koreliste := '';      Koreliste := '';
2846      UpdateScreen(RuteNummer, Kommentar, BoghandlerNavn, Koreliste, '');      UpdateScreen(RuteNummer, Kommentar, BoghandlerNavn, Koreliste, '');
2847      // Her kommer en alarm og rød skærm      // Her kommer en alarm og rød skærm
2848      PlaySound(PWideChar(AlarmLyd));      PlaySound(PWideChar(Config.AlarmLyd));
2849      MainForm.Color := clRed;      MainForm.Color := clRed;
2850      btnNulstil.Visible := true;      btnNulstil.Visible := true;
2851    end    end
# Line 2938  begin Line 2858  begin
2858      SmsKode := '999999';      SmsKode := '999999';
2859      DBKbane := '999';      DBKbane := '999';
2860      Leveringssted := 'XXX';      Leveringssted := 'XXX';
2861    
2862    
2863      PrintLabel(RuteNummer, Kommentar, BoghandlerNavn, Koreliste, SmsKode, DBKbane, Leveringssted, Falsk);      PrintLabel(RuteNummer, Kommentar, BoghandlerNavn, Koreliste, SmsKode, DBKbane, Leveringssted, Falsk);
2864      FocusControl(StregkodeST);      FocusControl(StregkodeST);
2865    end;    end;
2866    TjekUrls := orgTjekUrls;    Config.TjekUrls := orgTjekUrls;
2867    
2868  end;  end;
2869    
# Line 2955  var Line 2877  var
2877    SmsKode : String;    SmsKode : String;
2878    DBKbane : String;    DBKbane : String;
2879    Leveringssted : String;    Leveringssted : String;
2880      LabelData : TLabelData;
2881  begin  begin
2882    RuteNummer := 'Rutenr';    RuteNummer := 'Rutenr';
2883    Kommentar := '***** Kommentar *****';    Kommentar := '***** Kommentar *****';
# Line 2966  begin Line 2889  begin
2889    begin    begin
2890      ShowMessage('Der er ikke installeret en printer på denne PC.');      ShowMessage('Der er ikke installeret en printer på denne PC.');
2891    end    end
2892    else if PrinterNavn = 'Ingen' then  //  else if Config.PrinterNavn = 'Ingen' then //Det giver ikke længere mening at kunne fravælge printer
2893    begin  //  begin
2894      ShowMessage('Der er fravalgt printer i dette program.');  //    ShowMessage('Der er fravalgt printer i dette program.');
2895    end  //  end
2896    else    else
2897    begin    begin
2898      UpdateScreen(RuteNummer, Kommentar, BoghandlerNavn, Koreliste, '');      UpdateScreen(RuteNummer, Kommentar, BoghandlerNavn, Koreliste, '');
2899      SmsKode := '999999';  //    SmsKode := '999999';
2900      DBKbane := '999';  //    DBKbane := '999';
2901      Leveringssted := 'XXX';  //    Leveringssted := 'XXX';
2902      PrintLabel(RuteNummer, Kommentar, BoghandlerNavn, Koreliste, SmsKode, DBKbane, Leveringssted, Falsk);  //    PrintLabel(RuteNummer, Kommentar, BoghandlerNavn, Koreliste, SmsKode, DBKbane, Leveringssted, Falsk);
2903      LabelPrint.CheckPrintQue('Test', PrinterNavn);  
2904    
2905        LabelData := TLabelData.Create(nil);
2906        LabelData.LabelType := 'simpel';
2907        LabelData.SimpelLinie1 := '999999';
2908        LabelData.SimpelLinie2 := '999';
2909        LabelData.SimpelLinie3 := 'xxx';
2910        LabelPrint.PrintLabelData(Labeldata);
2911    
2912        LabelPrint.CheckPrintQue('Test', Config.PrinterNavn);
2913    
2914        LabelData.Free();
2915    
2916    end;    end;
2917    FocusControl(StregkodeST);    FocusControl(StregkodeST);
2918  end;  end;
2919    
2920  procedure TMainForm.Timer1Timer(Sender: TObject);  procedure TMainForm.Timer1Timer(Sender: TObject);
2921  begin  begin
2922    if (TjekPrinter = '1') then    if (Config.TjekPrinter = '1') then
2923    begin    begin
2924      LabelPrint.CheckPrintQue('Timer', PrinterNavn);      LabelPrint.CheckPrintQue('Timer', Config.PrinterNavn);
2925    end    end
2926    else    else
2927    begin    begin
# Line 3040  begin Line 2975  begin
2975      tekst := tekst+crlf+crlf;      tekst := tekst+crlf+crlf;
2976      tekst := tekst+crlf+crlf+'          **********  DETTE ER KUN EN TEST VERSION  **********';      tekst := tekst+crlf+crlf+'          **********  DETTE ER KUN EN TEST VERSION  **********';
2977      tekst := tekst+crlf+crlf;      tekst := tekst+crlf+crlf;
2978      tekst := tekst+crlf+crlf+'Url: '+url;      tekst := tekst+crlf+crlf+'Url: ' + Url;
2979    end;    end;
2980    
2981    MessageBox(Handle, PWideChar(tekst), 'Information', MB_OK);    MessageBox(Handle, PWideChar(tekst), 'Information', MB_OK);
# Line 3181  begin Line 3116  begin
3116        menuAutomatiskTjekkodeStyring.Enabled := true;        menuAutomatiskTjekkodeStyring.Enabled := true;
3117        btnNulstil.Visible := false;        btnNulstil.Visible := false;
3118        menuNatXpress1.Checked := true;        menuNatXpress1.Checked := true;
3119        InitForm(FarveNormal,TitelNormal,UrlNormal);        InitForm(Config.FarveNormal,Config.TitelNormal,Config.UrlNormal);
3120        PanelValg1.Color := clGreen;        PanelValg1.Color := clGreen;
3121        PanelValg1.Font.Color := clWhite;        PanelValg1.Font.Color := clWhite;
3122    
# Line 3217  begin Line 3152  begin
3152        menuAutomatiskTjekkodeStyring.Enabled := false;        menuAutomatiskTjekkodeStyring.Enabled := false;
3153        menuNatxpressReturDAO1.Checked := true;        menuNatxpressReturDAO1.Checked := true;
3154        btnNulstil.Visible := false;        btnNulstil.Visible := false;
3155        InitForm(FarveReturDAO,TitelReturDAO,UrlReturDAO);        InitForm(Config.FarveReturDAO, Config.TitelReturDAO, Config.UrlReturDAO);
3156        PanelValg2.Color := clGreen;        PanelValg2.Color := clGreen;
3157        PanelValg2.Font.Color := clWhite;        PanelValg2.Font.Color := clWhite;
3158    
# Line 3248  begin Line 3183  begin
3183        menuAutomatiskTjekkodeStyring.Enabled := false;        menuAutomatiskTjekkodeStyring.Enabled := false;
3184        menuNatxpressReturfraKunde1.Checked := true;        menuNatxpressReturfraKunde1.Checked := true;
3185        btnNulstil.Visible := false;        btnNulstil.Visible := false;
3186        InitForm(FarveReturBoghandler,TitelReturBoghandler,UrlReturBoghandler);        InitForm(Config.FarveReturBoghandler, Config.TitelReturBoghandler, Config.UrlReturBoghandler);
3187        PanelValg3.Color := clGreen;        PanelValg3.Color := clGreen;
3188        PanelValg3.Font.Color := clWhite;        PanelValg3.Font.Color := clWhite;
3189    
# Line 3278  begin Line 3213  begin
3213        menuAutomatiskTjekkodeStyring.Enabled := false;        menuAutomatiskTjekkodeStyring.Enabled := false;
3214        menuDaoDirekte1.Checked := true;        menuDaoDirekte1.Checked := true;
3215        btnNulstil.Visible := false;        btnNulstil.Visible := false;
3216        InitForm(FarveBudlevering,TitelBudlevering,UrlBudlevering);        InitForm(Config.FarveBudlevering, Config.TitelBudlevering, Config.UrlBudlevering);
3217        PanelValg4.Color := clGreen;        PanelValg4.Color := clGreen;
3218        PanelValg4.Font.Color := clWhite;        PanelValg4.Font.Color := clWhite;
3219    
# Line 3318  begin Line 3253  begin
3253        menuAutomatiskTjekkodeStyring.Enabled := true;        menuAutomatiskTjekkodeStyring.Enabled := true;
3254        menuPakkeshop1.Checked := true;        menuPakkeshop1.Checked := true;
3255        btnNulstil.Visible := false;        btnNulstil.Visible := false;
3256        InitForm(FarvePakkeshoplevering,TitelPakkeshoplevering,UrlPakkeshoplevering);        InitForm(Config.FarvePakkeshoplevering, Config.TitelPakkeshoplevering, Config.UrlPakkeshoplevering);
3257        PanelValg5.Color := clGreen;        PanelValg5.Color := clGreen;
3258        PanelValg5.Font.Color := clWhite;        PanelValg5.Font.Color := clWhite;
3259    
# Line 3358  begin Line 3293  begin
3293        menuAutomatiskTjekkodeStyring.Enabled := false;        menuAutomatiskTjekkodeStyring.Enabled := false;
3294        menuPakkeshopRetur1.Checked := true;        menuPakkeshopRetur1.Checked := true;
3295        btnNulstil.Visible := false;        btnNulstil.Visible := false;
3296        InitForm(FarveReturPakkeshop,TitelReturPakkeshop,UrlReturPakkeshop);        InitForm(Config.FarveReturPakkeshop, Config.TitelReturPakkeshop, Config.UrlReturPakkeshop);
3297        PanelValg6.Color := clGreen;        PanelValg6.Color := clGreen;
3298        PanelValg6.Font.Color := clWhite;        PanelValg6.Font.Color := clWhite;
3299    
# Line 3406  begin Line 3341  begin
3341        menuAutomatiskTjekkodeStyring.Enabled := false;        menuAutomatiskTjekkodeStyring.Enabled := false;
3342    
3343        btnNulstil.Visible := false;        btnNulstil.Visible := false;
3344        InitForm(FarveIndlevering, TitelIndlevering, UrlReturPakkeshop);        InitForm(Config.FarveIndlevering, Config.TitelIndlevering, Config.UrlReturPakkeshop);
3345        PanelValg7.Color := clGreen;        PanelValg7.Color := clGreen;
3346        PanelValg7.Font.Color := clWhite;        PanelValg7.Font.Color := clWhite;
3347    
# Line 3485  end; Line 3420  end;
3420    
3421  procedure TMainForm.Testlyd1Click(Sender: TObject);  procedure TMainForm.Testlyd1Click(Sender: TObject);
3422  begin  begin
3423     if AlarmLyd  <> '' then     if Config.AlarmLyd  <> '' then
3424     begin     begin
3425       PlaySound(PWideChar(AlarmLyd));       PlaySound(PWideChar(Config.AlarmLyd));
3426     end     end
3427     else     else
3428     begin     begin
# Line 3499  procedure TMainForm.Testlyd2Click(Sender Line 3434  procedure TMainForm.Testlyd2Click(Sender
3434  begin  begin
3435    if (PakkeshopText1.Caption = 'Tjekkode') then    if (PakkeshopText1.Caption = 'Tjekkode') then
3436    begin    begin
3437       if ScannetOkTilTjekkodeLyd  <> '' then       if Config.ScannetOkTilTjekkodeLyd  <> '' then
3438       begin       begin
3439         PlaySound(PWideChar(ScannetOkTilTjekkodeLyd));         PlaySound(PWideChar(Config.ScannetOkTilTjekkodeLyd));
3440       end       end
3441       else       else
3442       begin       begin
# Line 3511  begin Line 3446  begin
3446    end;    end;
3447    
3448    if menuSmaaPakker.Checked then    if menuSmaaPakker.Checked then
3449       if ScannetOkLyd  <> '' then       if Config.ScannetOkLyd  <> '' then
3450       begin       begin
3451         PlaySound(PWideChar(ScannetOkLyd));         PlaySound(PWideChar(Config.ScannetOkLyd));
3452       end       end
3453       else       else
3454       begin       begin
3455         MessageBox(Handle, PWideChar('Lyd fil ikke fundet (ScannetOkLyd)'), 'Information', MB_OK);         MessageBox(Handle, PWideChar('Lyd fil ikke fundet (ScannetOkLyd)'), 'Information', MB_OK);
3456       end;       end;
3457    if menuStorePakker.Checked then    if menuStorePakker.Checked then
3458       if ScannetOkStorLyd  <> '' then       if Config.ScannetOkStorLyd  <> '' then
3459       begin       begin
3460         PlaySound(PWideChar(ScannetOkStorLyd));         PlaySound(PWideChar(Config.ScannetOkStorLyd));
3461       end       end
3462       else       else
3463       begin       begin
# Line 3559  begin Line 3494  begin
3494      logTekst := 'Overfører de scannede pakker til EKL';      logTekst := 'Overfører de scannede pakker til EKL';
3495      SkrivScanningLogFil(logTekst);      SkrivScanningLogFil(logTekst);
3496      StedKode := Sted;      StedKode := Sted;
3497      URLStr := Format(UrlEKLoverforsel,[StedKode,Sted]);      URLStr := Format(Config.UrlEKLoverforsel,[StedKode,Sted]);
3498    
3499      if PanelValg5.Color = clGreen then      if PanelValg5.Color = clGreen then
3500      begin      begin
3501        URLStr := Format(UrlEKLoverforselPakkeshop,[StedKode,Sted]);        URLStr := Format(Config.UrlEKLoverforselPakkeshop,[StedKode,Sted]);
3502      end;      end;
3503    
3504    
# Line 3623  begin Line 3558  begin
3558      // Hvis der var fejl i overførslen skal dette fejlmeldes her      // Hvis der var fejl i overførslen skal dette fejlmeldes her
3559      if status = 'Fejl' then      if status = 'Fejl' then
3560      begin   // Her skal komme en alarm og rød skærm      begin   // Her skal komme en alarm og rød skærm
3561         PlaySound(PWideChar(AlarmLyd));         PlaySound(PWideChar(Config.AlarmLyd));
3562         MainForm.Color := clRed;         MainForm.Color := clRed;
3563         RutenummerST.Caption := 'EKL overførsel';         RutenummerST.Caption := 'EKL overførsel';
3564         BoghandlerNavnST.Caption := 'Fejl:';         BoghandlerNavnST.Caption := 'Fejl:';
# Line 4182  var Line 4117  var
4117    pakketyper : TDictionary<String, Integer>;    pakketyper : TDictionary<String, Integer>;
4118    tmpAntal : Integer;    tmpAntal : Integer;
4119    
4120     time, timeSamlet : TTimingHelper;
4121    
4122    
4123    antlin : Integer;    antlin : Integer;
# Line 4217  var Line 4153  var
4153    
4154      if (Scanningtype = '7') then      if (Scanningtype = '7') then
4155       begin       begin
4156        URLStr := Format(UrlIndleveringsPakkeManglendeScanninger, [StedKode]);        URLStr := Format(Config.UrlIndleveringsPakkeManglendeScanninger, [StedKode]);
4157       end       end
4158      else if (Scanningtype = '6') then      else if (Scanningtype = '6') then
4159       begin       begin
4160        URLStr := Format(UrlPakkeshopManglendeReturScanninger, [StedKode]);        URLStr := Format(Config.UrlPakkeshopManglendeReturScanninger, [StedKode]);
4161       end       end
4162      else if (Scanningtype = '5') then      else if (Scanningtype = '5') then
4163       begin       begin
4164        URLStr := Format(UrlPakkeshopManglendeScanninger, [StedKode]);        URLStr := Format(Config.UrlPakkeshopManglendeScanninger, [StedKode]);
4165       end       end
4166      else if (Scanningtype = '1') then      else if (Scanningtype = '1') then
4167       begin       begin
4168        URLStr := Format(UrlManglendeScanninger,[StedKode,'B2']);        URLStr := Format(Config.UrlManglendeScanninger,[StedKode,'B2']);
4169       end       end
4170      else if (Scanningtype = '4') then      else if (Scanningtype = '4') then
4171       begin       begin
4172        URLStr := Format(UrlManglendeScanninger,[StedKode,'A2']);    // Budleveringer        URLStr := Format(Config.UrlManglendeScanninger,[StedKode,'A2']);    // Budleveringer
4173       end       end
4174      else      else
4175       begin       begin
# Line 4241  var Line 4177  var
4177       end;       end;
4178  // 20150310: slut  // 20150310: slut
4179    
4180        time := TTimingHelper.create();        //DEBUG
4181        timeSamlet := TTimingHelper.create();        //DEBUG
4182    
4183      try      try
4184      //raise EIdConnClosedGracefully.Create('test');   // KUN TIL TEST      //raise EIdConnClosedGracefully.Create('test');   // KUN TIL TEST
4185  //    URLStr := string(Utf8Encode(URLStr));  //    URLStr := string(Utf8Encode(URLStr));
# Line 4263  var Line 4202  var
4202        end;        end;
4203      end;      end;
4204      try      try
4205          time.stop('HTTP Load');     //DEBUG
4206    
4207        XMLDocument1.LoadFromXML(WebSvar);        XMLDocument1.LoadFromXML(WebSvar);
4208    
4209          time.stop('XML Load');     //DEBUG
4210    
4211    
4212    
4213    
4214    
4215    
4216        antlin := 0;        antlin := 0;
4217        antlinIdag := 0;        antlinIdag := 0;
# Line 4307  var Line 4254  var
4254        SetLength(stregkoderMedTjekkodeArray, 0);    // reset fra tidligere brug        SetLength(stregkoderMedTjekkodeArray, 0);    // reset fra tidligere brug
4255        SetLength(stregkoderMedTjekkodeArray, antlin);  // sæt antal elementer i array        SetLength(stregkoderMedTjekkodeArray, antlin);  // sæt antal elementer i array
4256    
4257          time.stop('Antal Linier');//DEBUG
4258    
4259        Application.Processmessages; //Ugly Hack to improve User Experience when switching modes        Application.Processmessages; //Ugly Hack to improve User Experience when switching modes
4260    
# Line 4392  var Line 4340  var
4340        end;        end;
4341    
4342    
4343          time.stop('Fyld Listbox2');//DEBUG
4344    
4345    
4346        Application.Processmessages; //Ugly Hack to improve User Experience when switching modes        Application.Processmessages; //Ugly Hack to improve User Experience when switching modes
4347    
4348    
# Line 4511  var Line 4462  var
4462        end;        end;
4463      end;      end;
4464    
4465        time.stop('Done');//DEBUG
4466        timeSamlet.stop('SamletTid');//DEBUG
4467    
4468    
4469  end;  end;
4470    
4471  procedure TMainForm.IndlesScanningLogFil();  procedure TMainForm.IndlesScanningLogFil();
# Line 4686  begin Line 4641  begin
4641          ListBox1.Items.Insert(0,TimeToStr(now) + ': ' +'Fandt ingen linier til '+imorgenYmd+'.');          ListBox1.Items.Insert(0,TimeToStr(now) + ': ' +'Fandt ingen linier til '+imorgenYmd+'.');
4642          logTekst := 'Fandt ingen linier til '+imorgenYmd+'.';          logTekst := 'Fandt ingen linier til '+imorgenYmd+'.';
4643          SkrivScanningLogFil(logTekst);          SkrivScanningLogFil(logTekst);
4644          PlaySound(PWideChar(AlarmLyd));          PlaySound(PWideChar(Config.AlarmLyd));
4645        end;        end;
4646      end;      end;
4647    end    end
# Line 4695  begin Line 4650  begin
4650        ListBox1.Items.Insert(0,TimeToStr(now) + ': ' + 'Ruteskift fil '+filnavn+' findes ikke.');        ListBox1.Items.Insert(0,TimeToStr(now) + ': ' + 'Ruteskift fil '+filnavn+' findes ikke.');
4651        logTekst := 'Ruteskift fil '+filnavn+' findes ikke.';        logTekst := 'Ruteskift fil '+filnavn+' findes ikke.';
4652        SkrivScanningLogFil(logTekst);        SkrivScanningLogFil(logTekst);
4653        PlaySound(PWideChar(AlarmLyd));        PlaySound(PWideChar(Config.AlarmLyd));
4654    end;    end;
4655  end;  end;
4656    
# Line 4766  begin Line 4721  begin
4721          ListBox1.Items.Insert(0,TimeToStr(now) + ': ' +'Fandt ingen linier til '+imorgenYmd+'.');          ListBox1.Items.Insert(0,TimeToStr(now) + ': ' +'Fandt ingen linier til '+imorgenYmd+'.');
4722          logTekst := 'Fandt ingen linier til '+imorgenYmd+'.';          logTekst := 'Fandt ingen linier til '+imorgenYmd+'.';
4723          SkrivScanningLogFil(logTekst);          SkrivScanningLogFil(logTekst);
4724          PlaySound(PWideChar(AlarmLyd));          PlaySound(PWideChar(Config.AlarmLyd));
4725        end;        end;
4726      end;      end;
4727    end    end
# Line 4775  begin Line 4730  begin
4730        ListBox1.Items.Insert(0,TimeToStr(now) + ': ' + 'Kontrol fil '+filnavn+' findes ikke.');        ListBox1.Items.Insert(0,TimeToStr(now) + ': ' + 'Kontrol fil '+filnavn+' findes ikke.');
4731        logTekst := 'Kontrol fil '+filnavn+' findes ikke.';        logTekst := 'Kontrol fil '+filnavn+' findes ikke.';
4732        SkrivScanningLogFil(logTekst);        SkrivScanningLogFil(logTekst);
4733        PlaySound(PWideChar(AlarmLyd));        PlaySound(PWideChar(Config.AlarmLyd));
4734    end;    end;
4735  end;  end;
4736    
# Line 4833  procedure TMainForm.VisAlarmSkaerm(strMe Line 4788  procedure TMainForm.VisAlarmSkaerm(strMe
4788  begin  begin
4789    //ShowMessage('Ændring ikke tilladt');    //ShowMessage('Ændring ikke tilladt');
4790    // Her skal komme en 'rød skærm' alarm    // Her skal komme en 'rød skærm' alarm
4791    PlaySound(PWideChar(AlarmLyd));    PlaySound(PWideChar(Config.AlarmLyd));
4792    MainForm.Color := clRed;    MainForm.Color := clRed;
4793    
4794    
# Line 4961  begin Line 4916  begin
4916    Result := self;    Result := self;
4917  end;  end;
4918    
4919    //Nedarvet fra IParentForm
4920    function TMainForm.GetXMLDocument() : TXMLDocument;
4921    begin
4922      Result := XMLDocument1
4923    end;
4924    
4925    
4926  end.  end.
4927    

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

  ViewVC Help
Powered by ViewVC 1.1.20