/[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 3099 by torben, Mon Aug 22 18:27:30 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);  
559    
     URLOmdirigerTilPakkeshop := ReadString('Settings', 'URLOmdirigerTilPakkeshop','http://omdeling.info/webservices/pakkeshop/PakkeKontrolOmdirigerTilPakkeshop.php?sted=%s&stregkode=%s');  
     URLOmdirigerTilPakkeshop := InjectURL(URLOmdirigerTilPakkeshop);  
560    
561    
562    
     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');  
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;  
940    
     if not FileExists(ScannetOkLyd) then  
     begin  
       ScannetOkLyd := '';  
     end;  
   
     if not FileExists(ScannetOkStorLyd) then  
     begin  
       ScannetOkStorLyd := '';  
     end;  
941    
942    
     if not FileExists(ScannetOkTilTjekkodeLyd) then  
     begin  
       ScannetOkTilTjekkodeLyd := '';  
     end;  
943    
944        LabelPrint := TLabelPrint.Create( self, Config, Config.PrinterNavn );
945        LabelPrint.CheckPrintQue('Opstart', Config.PrinterNavn);
   
     LabelPrint := TLabelPrint.Create( self, Config, PrinterNavn );  
     LabelPrint.CheckPrintQue('Opstart', 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          //ShowMessage( URLStr);
1447    
1448          WebSvar := IdHTTP1.Get(Config.URLUdenforSpecifikation);
1449          //ShowMessage( WebSvar );
1450    
1451          chkUdenforSpecifikation.Checked := False;
1452          LabelPrint.PrintLabel(Stregkode);
1453          exit;   //leave procedure
1454        end;
1455    
1456    
1457    
1458    
1459      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 1500  begin
1500              BoghandlerStregkode := Stregkode;              BoghandlerStregkode := Stregkode;
1501              PakkeshopText1.Caption := 'Tjekkode';              PakkeshopText1.Caption := 'Tjekkode';
1502    
1503              PlaySound(PWideChar(ScannetOkTilTjekkodeLyd));              PlaySound(PWideChar(Config.ScannetOkTilTjekkodeLyd));
1504    
1505             end             end
1506            else            else
# Line 1610  begin Line 1518  begin
1518             BoghandlerTjekkode := Stregkode;             BoghandlerTjekkode := Stregkode;
1519             PakkeshopText1.Caption := 'Stregkode';             PakkeshopText1.Caption := 'Stregkode';
1520             if (menuPakkeshop1.Checked) then             if (menuPakkeshop1.Checked) then
1521                MainForm.Color := TUtils.HexToTColor(FarvePakkeshoplevering);                MainForm.Color := TUtils.HexToTColor(Config.FarvePakkeshoplevering);
1522             if (menuNatXpress1.Checked) then             if (menuNatXpress1.Checked) then
1523                MainForm.Color := TUtils.HexToTColor(FarveNormal);                MainForm.Color := TUtils.HexToTColor(Config.FarveNormal);
1524             btnNulstil.Visible := false;             btnNulstil.Visible := false;
1525           end           end
1526          else          else
# Line 1666  begin Line 1574  begin
1574              tjekkodemangler := pos('Tjekkode mangler', Kommentar);              tjekkodemangler := pos('Tjekkode mangler', Kommentar);
1575              if (pakkeErScannet > 0) or (pakkeForkertSted > 0) or (tjekkodemangler > 0) then              if (pakkeErScannet > 0) or (pakkeForkertSted > 0) or (tjekkodemangler > 0) then
1576              begin              begin
1577                PlaySound(PWideChar(AlarmLyd));                PlaySound(PWideChar(Config.AlarmLyd));
1578                btnNulstil.Visible := true;                btnNulstil.Visible := true;
1579                MainForm.Color := clRed;                MainForm.Color := clRed;
1580              end;              end;
# Line 1676  begin Line 1584  begin
1584              MainForm.Color := TUtils.HexToTColor(Farve);              MainForm.Color := TUtils.HexToTColor(Farve);
1585              if menuStorePakker.Checked then              if menuStorePakker.Checked then
1586              begin              begin
1587                PlaySound(PWideChar(ScannetOkStorLyd));                PlaySound(PWideChar(Config.ScannetOkStorLyd));
1588              end              end
1589              else              else
1590              begin              begin
1591                PlaySound(PWideChar(ScannetOkLyd));                PlaySound(PWideChar(Config.ScannetOkLyd));
1592              end;              end;
1593              btnNulstil.Visible := false;              btnNulstil.Visible := false;
1594            end            end
# Line 1689  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 1716  begin Line 1624  begin
1624              begin              begin
1625                if menuStorePakker.Checked then                if menuStorePakker.Checked then
1626                begin                begin
1627                  PlaySound(PWideChar(ScannetOkStorLyd));                  PlaySound(PWideChar(Config.ScannetOkStorLyd));
1628                end                end
1629                else                else
1630                begin                begin
1631                  PlaySound(PWideChar(ScannetOkLyd));                  PlaySound(PWideChar(Config.ScannetOkLyd));
1632                end;                end;
1633                InitLillePakke();                InitLillePakke();
1634              end;              end;
# Line 1774  var Line 1682  var
1682    WebSvar : String;    WebSvar : String;
1683    URLStr : String;    URLStr : String;
1684  begin  begin
1685    if UrlSendPrograminfo <> '' then    if Config.UrlSendPrograminfo <> '' then
1686    begin    begin
1687      URLStr := Format(UrlSendPrograminfo,[ExtractFileName(ParamStr(0)), Sted, Scanningtype, Infotype, Info]);      URLStr := Format(Config.UrlSendPrograminfo,[ExtractFileName(ParamStr(0)), Sted, Scanningtype, Infotype, Info]);
1688      try      try
1689        //raise EIdConnClosedGracefully.Create('test');   // KUN TIL TEST        //raise EIdConnClosedGracefully.Create('test');   // KUN TIL TEST
1690        WebSvar := IdHTTP1.Get(URLStr);        WebSvar := IdHTTP1.Get(URLStr);
# Line 1789  begin Line 1697  begin
1697        ShowMessage(logTekst);        ShowMessage(logTekst);
1698        SkrivScanningLogFil(logTekst);        SkrivScanningLogFil(logTekst);
1699        // 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
1700        UrlSendPrograminfo := '';        Config.UrlSendPrograminfo := '';
1701        Application.Terminate;        Application.Terminate;
1702      end;      end;
1703      end;      end;
# Line 2049  var Line 1957  var
1957    pakkestorrelse : String;    pakkestorrelse : String;
1958    PrintNyLabelInteger : Integer;    PrintNyLabelInteger : Integer;
1959    
1960    PakkeshopLabel: TPakkeshopLabel;    PakkeshopLabel: TLabelData;
1961  begin  begin
1962    if radioStorPakke.Checked then    if radioStorPakke.Checked then
1963    begin    begin
# Line 2067  begin Line 1975  begin
1975       begin       begin
1976         BoghandlerTjekkode := '-1';         BoghandlerTjekkode := '-1';
1977       end;       end;
1978       URLStr := Format(UrlNormal,[Sted, PakkeNr, BoghandlerNummer, BoghandlerTjekkode]);       URLStr := Format(Config.UrlNormal,[Sted, PakkeNr, BoghandlerNummer, BoghandlerTjekkode]);
1979    end    end
1980    else if menuNatxpressReturDAO1.Checked then    else if menuNatxpressReturDAO1.Checked then
1981    begin    begin
1982       URLStr := Format(UrlReturDAO,[Sted, PakkeNr, BoghandlerNummer, 'DAO', pakkestorrelse]);       URLStr := Format(Config.UrlReturDAO,[Sted, PakkeNr, BoghandlerNummer, 'DAO', pakkestorrelse]);
1983    end    end
1984    else if menuNatxpressReturfraKunde1.Checked then    else if menuNatxpressReturfraKunde1.Checked then
1985    begin    begin
1986       URLStr := Format(UrlReturBoghandler,[Sted, PakkeNr, BoghandlerNummer, 'Boghandler', pakkestorrelse]);       URLStr := Format(Config.UrlReturBoghandler,[Sted, PakkeNr, BoghandlerNummer, 'Boghandler', pakkestorrelse]);
1987    end    end
1988    else if menuDaoDirekte1.Checked then    else if menuDaoDirekte1.Checked then
1989    begin    begin
1990       URLStr := Format(UrlBudlevering,[Sted, PakkeNr, 'bud', pakkestorrelse]);       URLStr := Format(Config.UrlBudlevering,[Sted, PakkeNr, 'bud', pakkestorrelse]);
1991    end    end
1992    else if menuPakkeshop1.Checked then    else if menuPakkeshop1.Checked then
1993    begin    begin
1994       URLStr := Format(UrlPakkeshoplevering,[Sted, PakkeNr, PakkeshopTjekkode]);       URLStr := Format(Config.UrlPakkeshoplevering,[Sted, PakkeNr, PakkeshopTjekkode]);
1995    end    end
1996    else if menuPakkeshopRetur1.Checked then    else if menuPakkeshopRetur1.Checked then
1997    begin    begin
1998       URLStr := Format(UrlReturPakkeshop,[Sted, PakkeNr]);       URLStr := Format(Config.UrlReturPakkeshop,[Sted, PakkeNr]);
1999    end    end
2000    else if menuIndlevering.Checked then    else if menuIndlevering.Checked then
2001    begin    begin
2002      URLStr := Format(UrlIndleveringsPakke,[Sted, PakkeNr]);      URLStr := Format(Config.UrlIndleveringsPakke,[Sted, PakkeNr]);
2003    end    end
2004    else    else
2005    begin    begin
# Line 2100  begin Line 2008  begin
2008    
2009    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
2010    begin    begin
2011      URLStr := Format(URLOmdirigerTilPakkeshop,[Sted, PakkeNr]);      URLStr := Format(Config.URLOmdirigerTilPakkeshop,[Sted, PakkeNr]);
2012    end;    end;
2013    
2014    try    try
# Line 2158  begin Line 2066  begin
2066       if (Kommentar = 'Ok') then       if (Kommentar = 'Ok') then
2067       begin       begin
2068         PrintNyLabel := True; //Indleveringskode vil ALTID udskrive label         PrintNyLabel := True; //Indleveringskode vil ALTID udskrive label
2069         PakkeshopLabel := TPakkeshopLabel.Create( XMLDocument1 ); //Opret struct og parse xml doc         PakkeshopLabel := TLabelData.Create( XMLDocument1 ); //Opret struct og parse xml doc
2070         RuteNummer := PakkeshopLabel.Koreliste + '  ->  ' +  PakkeshopLabel.PakkeshopTurid;         RuteNummer := PakkeshopLabel.Koreliste + '  ->  ' +  PakkeshopLabel.PakkeshopTurid;
2071         Stregkode := PakkeshopLabel.Stregkode;         Stregkode := PakkeshopLabel.Stregkode;
2072    
2073         LabelPrint.PrintPakkeshopLabel( PakkeshopLabel );         LabelPrint.PrintFuldPakkeLabel( PakkeshopLabel );
2074         chkForstorTilDirekte.Checked := false;         chkForstorTilDirekte.Checked := false;
2075    
2076       end;       end;
# Line 2207  begin Line 2115  begin
2115      begin      begin
2116        if (Leveringssted <> BladhusStedKode[BladhusSted]) and (BladhusStedKode[BladhusSted] <> 'DBK') then        if (Leveringssted <> BladhusStedKode[BladhusSted]) and (BladhusStedKode[BladhusSted] <> 'DBK') then
2117        begin        begin
2118            Kommentar := Kommentar + ' Pakke burde være hos DAO Distribution';            Kommentar := Kommentar + ' Pakke burde være hos ' + Leveringssted;
2119            PrintNyLabel := False;            //PrintNyLabel := False; //ved fuld-daekning / X-ruter skal vi altid skrive label alligevel
2120        end;        end;
2121      end      end
2122      else if (menuDaoDirekte1.Checked) and (Leveringssted <> Sted) then      else if (menuDaoDirekte1.Checked) and (Leveringssted <> Sted) And (Leveringssted <> '') then
2123      begin      begin
2124         if (Leveringssted = 'E') and (Sted = 'DBK') then        Kommentar := Kommentar + ' Pakke burde være hos ' + Leveringssted;
2125         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;  
2126      end;      end;
2127    except on e:exception do    except on e:exception do
2128      raise exception.CreateFmt('Fejl i XML-format: %s',[e.Message]);      raise exception.CreateFmt('Fejl i XML-format: %s',[e.Message]);
# Line 2366  begin Line 2267  begin
2267       begin       begin
2268          PrintNyLabel := false;          PrintNyLabel := false;
2269    
2270          PlaySound(PWideChar(AlarmLyd));          PlaySound(PWideChar(Config.AlarmLyd));
2271          MainForm.Color := clRed;          MainForm.Color := clRed;
2272          btnNulstil.Visible := true;          btnNulstil.Visible := true;
2273    
# Line 2386  begin Line 2287  begin
2287            logTekst := RightStr(List1Msg, Length(List1Msg)-10);            logTekst := RightStr(List1Msg, Length(List1Msg)-10);
2288            SkrivScanningLogFil(logTekst);            SkrivScanningLogFil(logTekst);
2289    
2290            if (PrinterNavn = 'Ingen') then  //          if (Config.PrinterNavn = 'Ingen') then
2291            begin  //          begin
2292               PrintNyLabel := false;  //             PrintNyLabel := false;
2293            end;  //          end;
2294    
2295            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
2296            begin            begin
2297              PlaySound(PWideChar(AlarmLyd));              PlaySound(PWideChar(Config.AlarmLyd));
2298              MainForm.Color := clRed;              MainForm.Color := clRed;
2299              btnNulstil.Visible := true;              btnNulstil.Visible := true;
2300            end;            end;
# Line 2419  begin Line 2320  begin
2320    
2321            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
2322            begin            begin
2323              PlaySound(PWideChar(AlarmLyd));              PlaySound(PWideChar(Config.AlarmLyd));
2324              MainForm.Color := clRed;              MainForm.Color := clRed;
2325              btnNulstil.Visible := true;              btnNulstil.Visible := true;
2326            end;            end;
# Line 2488  begin Line 2389  begin
2389    end    end
2390    else    else
2391    begin    begin
2392      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
2393      begin      begin
2394        logTekst := 'Printer label type ';        logTekst := 'Printer label type ';
2395        if (chkAltidPrintLabel.Checked) then        if (chkAltidPrintLabel.Checked) then
# Line 2507  begin Line 2408  begin
2408        SkrivScanningLogFil(logTekst);        SkrivScanningLogFil(logTekst);
2409    
2410        LabelPrint.PrintDaodirekteLabel( RuteNummer, Kommentar, BoghandlerNavn) ;        LabelPrint.PrintDaodirekteLabel( RuteNummer, Kommentar, BoghandlerNavn) ;
2411          
2412      end;      end;
2413    end;    end;
2414    
# Line 2613  begin Line 2514  begin
2514      // Tjekker UrlNormal      // Tjekker UrlNormal
2515      if PanelValg1.Enabled = true then      if PanelValg1.Enabled = true then
2516      begin      begin
2517        TjekkerEnkeltUrl('UrlNormal', UrlNormal, urlFejl);        TjekkerEnkeltUrl('UrlNormal', Config.UrlNormal, urlFejl);
2518      end;      end;
2519    
2520      // Tjekker UrlReturDAO      // Tjekker UrlReturDAO
2521      if PanelValg2.Enabled = true then      if PanelValg2.Enabled = true then
2522      begin      begin
2523        TjekkerEnkeltUrl('UrlReturDAO', UrlReturDAO, urlFejl);        TjekkerEnkeltUrl('UrlReturDAO', Config.UrlReturDAO, urlFejl);
2524      end;      end;
2525    
2526      // Tjekker UrlReturBoghandler      // Tjekker UrlReturBoghandler
2527      if PanelValg3.Enabled = true then      if PanelValg3.Enabled = true then
2528      begin      begin
2529        TjekkerEnkeltUrl('UrlReturBoghandler', UrlReturBoghandler, urlFejl);        TjekkerEnkeltUrl('UrlReturBoghandler', Config.UrlReturBoghandler, urlFejl);
2530      end;      end;
2531    
2532      // Tjekker UrlBudlevering      // Tjekker UrlBudlevering
2533      if PanelValg4.Enabled = true then      if PanelValg4.Enabled = true then
2534      begin      begin
2535        TjekkerEnkeltUrl('UrlBudlevering', UrlBudlevering, urlFejl);        TjekkerEnkeltUrl('UrlBudlevering', Config.UrlBudlevering, urlFejl);
2536      end;      end;
2537    
2538      // Tjekker UrlPakkeshoplevering      // Tjekker UrlPakkeshoplevering
2539      if PanelValg5.Enabled = true then      if PanelValg5.Enabled = true then
2540      begin      begin
2541        TjekkerEnkeltUrl('UrlPakkeshoplevering', UrlPakkeshoplevering, urlFejl);        TjekkerEnkeltUrl('UrlPakkeshoplevering', Config.UrlPakkeshoplevering, urlFejl);
2542      end;      end;
2543    
2544      // Tjekker UrlReturPakkeshop      // Tjekker UrlReturPakkeshop
2545      if PanelValg6.Enabled = true then      if PanelValg6.Enabled = true then
2546      begin      begin
2547        TjekkerEnkeltUrl('UrlReturPakkeshop', UrlReturPakkeshop, urlFejl);        TjekkerEnkeltUrl('UrlReturPakkeshop', Config.UrlReturPakkeshop, urlFejl);
2548      end;      end;
2549    
2550      // Tjekker UrlManglendeScanninger      // Tjekker UrlManglendeScanninger
2551      if (PanelValg1.Enabled = true) or (PanelValg4.Enabled = true) then      if (PanelValg1.Enabled = true) or (PanelValg4.Enabled = true) then
2552      begin      begin
2553        TjekkerEnkeltUrl('UrlManglendeScanninger', UrlManglendeScanninger, urlFejl);        TjekkerEnkeltUrl('UrlManglendeScanninger', Config.UrlManglendeScanninger, urlFejl);
2554      end;      end;
2555    
2556      // Tjekker UrlPakkeshopManglendeScanninger      // Tjekker UrlPakkeshopManglendeScanninger
2557      if PanelValg5.Enabled = true then      if PanelValg5.Enabled = true then
2558      begin      begin
2559        TjekkerEnkeltUrl('UrlPakkeshopManglendeScanninger', UrlPakkeshopManglendeScanninger, urlFejl);        TjekkerEnkeltUrl('UrlPakkeshopManglendeScanninger', Config.UrlPakkeshopManglendeScanninger, urlFejl);
2560      end;      end;
2561    
2562      // Tjekker UrlPakkeshopManglendeReturScanninger      // Tjekker UrlPakkeshopManglendeReturScanninger
2563      if PanelValg6.Enabled = true then      if PanelValg6.Enabled = true then
2564      begin      begin
2565        TjekkerEnkeltUrl('UrlPakkeshopManglendeReturScanninger', UrlPakkeshopManglendeReturScanninger, urlFejl);        TjekkerEnkeltUrl('UrlPakkeshopManglendeReturScanninger', Config.UrlPakkeshopManglendeReturScanninger, urlFejl);
2566      end;      end;
2567    
2568     // Tjekker UrlIndleveringsPakke og UrlIndleveringsPakkeManglendeScanninger     // Tjekker UrlIndleveringsPakke og UrlIndleveringsPakkeManglendeScanninger
2569      if PanelValg7.Enabled = true then      if PanelValg7.Enabled = true then
2570      begin      begin
2571        TjekkerEnkeltUrl('UrlIndleveringsPakke', UrlIndleveringsPakke, urlFejl);        TjekkerEnkeltUrl('UrlIndleveringsPakke', Config.UrlIndleveringsPakke, urlFejl);
2572        TjekkerEnkeltUrl('UrlIndleveringsPakkeManglendeScanninger', UrlIndleveringsPakkeManglendeScanninger, urlFejl);        TjekkerEnkeltUrl('UrlIndleveringsPakkeManglendeScanninger', Config.UrlIndleveringsPakkeManglendeScanninger, urlFejl);
2573      end;      end;
2574    
2575      // Tjekker UrlEKLoverforsel      // Tjekker UrlEKLoverforsel
2576      if PanelValg1.Enabled = true then      if PanelValg1.Enabled = true then
2577      begin      begin
2578        TjekkerEnkeltUrl('UrlEKLoverforsel', UrlEKLoverforsel, urlFejl);        TjekkerEnkeltUrl('UrlEKLoverforsel', Config.UrlEKLoverforsel, urlFejl);
2579      end;      end;
2580    
2581    
2582      // Tjekker UrlEKLoverforselPakkeshop      // Tjekker UrlEKLoverforselPakkeshop
2583      if PanelValg5.Enabled = true then      if PanelValg5.Enabled = true then
2584      begin      begin
2585        TjekkerEnkeltUrl('UrlEKLoverforselPakkeshop', UrlEKLoverforselPakkeshop, urlFejl);        TjekkerEnkeltUrl('UrlEKLoverforselPakkeshop', Config.UrlEKLoverforselPakkeshop, urlFejl);
2586      end;      end;
2587    
2588    
2589      // Tjekker UrlFindPakketype      // Tjekker UrlFindPakketype
2590      TjekkerEnkeltUrl('UrlFindPakketype', UrlFindPakketype, urlFejl);      TjekkerEnkeltUrl('UrlFindPakketype', Config.UrlFindPakketype, urlFejl);
2591    
2592      // Tjekker UrlSendPrograminfo      // Tjekker UrlSendPrograminfo
2593      TjekkerEnkeltUrl('UrlSendPrograminfo', UrlSendPrograminfo, urlFejl);      TjekkerEnkeltUrl('UrlSendPrograminfo', Config.UrlSendPrograminfo, urlFejl);
2594    
2595    
2596    
# Line 2698  begin Line 2599  begin
2599      SkrivScanningLogFil(logTekst);      SkrivScanningLogFil(logTekst);
2600    
2601    Except    Except
2602      TjekUrls := '-';   // markerer at der var fejl      Config.TjekUrls := '-';   // markerer at der var fejl
2603    
2604    end;    end;
2605  end;  end;
# Line 2718  begin Line 2619  begin
2619      inc(urlFejl);   // Optæller antal fejl      inc(urlFejl);   // Optæller antal fejl
2620      logTekst := UrlNavn + ' svarer ikke: ' + Url;      logTekst := UrlNavn + ' svarer ikke: ' + Url;
2621      ListBox1.Items.Insert(0,TimeToStr(now) + ': ' + logTekst);      ListBox1.Items.Insert(0,TimeToStr(now) + ': ' + logTekst);
2622      if TjekUrls = '1' then      if Config.TjekUrls = '1' then
2623      begin      begin
2624        logTekst := logTekst + crlf + crlf + 'Programmet afsluttes... ';        logTekst := logTekst + crlf + crlf + 'Programmet afsluttes... ';
2625      end;      end;
2626    
2627      SkrivScanningLogFil(logTekst);      SkrivScanningLogFil(logTekst);
2628    
2629      if TjekUrls = '1' then      if Config.TjekUrls = '1' then
2630      begin      begin
2631        ShowMessage(logTekst);        ShowMessage(logTekst);
2632        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
2633        Application.Terminate;        Application.Terminate;
2634    
2635        raise Exception.Create('UrlFejl');        raise Exception.Create('UrlFejl');
# Line 2809  begin Line 2710  begin
2710    if BoghandlerNavnST.Caption = 'Fejl i forbindelse til server' then    if BoghandlerNavnST.Caption = 'Fejl i forbindelse til server' then
2711    begin    begin
2712       ShowMessage('Programmet afbrydes...');       ShowMessage('Programmet afbrydes...');
2713       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
2714       Application.Terminate;       Application.Terminate;
2715       exit;       exit;
2716    end;    end;
# Line 2911  var Line 2812  var
2812    Leveringssted : String;    Leveringssted : String;
2813    orgTjekUrls : String;    orgTjekUrls : String;
2814  begin  begin
2815    orgTjekUrls := TjekUrls;    orgTjekUrls := Config.TjekUrls;
2816    if (TjekUrls = '1') or (TjekUrls = '2') then    if (Config.TjekUrls = '1') or (Config.TjekUrls = '2') then
2817    begin    begin
2818      TjekkerUrls();      TjekkerUrls();
2819    end;    end;
2820    if TjekUrls = '-' then    if Config.TjekUrls = '-' then
2821    begin    begin
2822      //ShowMessage('Der var fejl i een eller flere urls - se logvinduet');      //ShowMessage('Der var fejl i een eller flere urls - se logvinduet');
2823      RuteNummer := '';      RuteNummer := '';
# Line 2925  begin Line 2826  begin
2826      Koreliste := '';      Koreliste := '';
2827      UpdateScreen(RuteNummer, Kommentar, BoghandlerNavn, Koreliste, '');      UpdateScreen(RuteNummer, Kommentar, BoghandlerNavn, Koreliste, '');
2828      // Her kommer en alarm og rød skærm      // Her kommer en alarm og rød skærm
2829      PlaySound(PWideChar(AlarmLyd));      PlaySound(PWideChar(Config.AlarmLyd));
2830      MainForm.Color := clRed;      MainForm.Color := clRed;
2831      btnNulstil.Visible := true;      btnNulstil.Visible := true;
2832    end    end
# Line 2941  begin Line 2842  begin
2842      PrintLabel(RuteNummer, Kommentar, BoghandlerNavn, Koreliste, SmsKode, DBKbane, Leveringssted, Falsk);      PrintLabel(RuteNummer, Kommentar, BoghandlerNavn, Koreliste, SmsKode, DBKbane, Leveringssted, Falsk);
2843      FocusControl(StregkodeST);      FocusControl(StregkodeST);
2844    end;    end;
2845    TjekUrls := orgTjekUrls;    Config.TjekUrls := orgTjekUrls;
2846    
2847  end;  end;
2848    
# Line 2966  begin Line 2867  begin
2867    begin    begin
2868      ShowMessage('Der er ikke installeret en printer på denne PC.');      ShowMessage('Der er ikke installeret en printer på denne PC.');
2869    end    end
2870    else if PrinterNavn = 'Ingen' then  //  else if Config.PrinterNavn = 'Ingen' then //Det giver ikke længere mening at kunne fravælge printer
2871    begin  //  begin
2872      ShowMessage('Der er fravalgt printer i dette program.');  //    ShowMessage('Der er fravalgt printer i dette program.');
2873    end  //  end
2874    else    else
2875    begin    begin
2876      UpdateScreen(RuteNummer, Kommentar, BoghandlerNavn, Koreliste, '');      UpdateScreen(RuteNummer, Kommentar, BoghandlerNavn, Koreliste, '');
# Line 2977  begin Line 2878  begin
2878      DBKbane := '999';      DBKbane := '999';
2879      Leveringssted := 'XXX';      Leveringssted := 'XXX';
2880      PrintLabel(RuteNummer, Kommentar, BoghandlerNavn, Koreliste, SmsKode, DBKbane, Leveringssted, Falsk);      PrintLabel(RuteNummer, Kommentar, BoghandlerNavn, Koreliste, SmsKode, DBKbane, Leveringssted, Falsk);
2881      LabelPrint.CheckPrintQue('Test', PrinterNavn);      LabelPrint.CheckPrintQue('Test', Config.PrinterNavn);
2882    end;    end;
2883    FocusControl(StregkodeST);    FocusControl(StregkodeST);
2884  end;  end;
2885    
2886  procedure TMainForm.Timer1Timer(Sender: TObject);  procedure TMainForm.Timer1Timer(Sender: TObject);
2887  begin  begin
2888    if (TjekPrinter = '1') then    if (Config.TjekPrinter = '1') then
2889    begin    begin
2890      LabelPrint.CheckPrintQue('Timer', PrinterNavn);      LabelPrint.CheckPrintQue('Timer', Config.PrinterNavn);
2891    end    end
2892    else    else
2893    begin    begin
# Line 3040  begin Line 2941  begin
2941      tekst := tekst+crlf+crlf;      tekst := tekst+crlf+crlf;
2942      tekst := tekst+crlf+crlf+'          **********  DETTE ER KUN EN TEST VERSION  **********';      tekst := tekst+crlf+crlf+'          **********  DETTE ER KUN EN TEST VERSION  **********';
2943      tekst := tekst+crlf+crlf;      tekst := tekst+crlf+crlf;
2944      tekst := tekst+crlf+crlf+'Url: '+url;      tekst := tekst+crlf+crlf+'Url: ' + Url;
2945    end;    end;
2946    
2947    MessageBox(Handle, PWideChar(tekst), 'Information', MB_OK);    MessageBox(Handle, PWideChar(tekst), 'Information', MB_OK);
# Line 3181  begin Line 3082  begin
3082        menuAutomatiskTjekkodeStyring.Enabled := true;        menuAutomatiskTjekkodeStyring.Enabled := true;
3083        btnNulstil.Visible := false;        btnNulstil.Visible := false;
3084        menuNatXpress1.Checked := true;        menuNatXpress1.Checked := true;
3085        InitForm(FarveNormal,TitelNormal,UrlNormal);        InitForm(Config.FarveNormal,Config.TitelNormal,Config.UrlNormal);
3086        PanelValg1.Color := clGreen;        PanelValg1.Color := clGreen;
3087        PanelValg1.Font.Color := clWhite;        PanelValg1.Font.Color := clWhite;
3088    
# Line 3217  begin Line 3118  begin
3118        menuAutomatiskTjekkodeStyring.Enabled := false;        menuAutomatiskTjekkodeStyring.Enabled := false;
3119        menuNatxpressReturDAO1.Checked := true;        menuNatxpressReturDAO1.Checked := true;
3120        btnNulstil.Visible := false;        btnNulstil.Visible := false;
3121        InitForm(FarveReturDAO,TitelReturDAO,UrlReturDAO);        InitForm(Config.FarveReturDAO, Config.TitelReturDAO, Config.UrlReturDAO);
3122        PanelValg2.Color := clGreen;        PanelValg2.Color := clGreen;
3123        PanelValg2.Font.Color := clWhite;        PanelValg2.Font.Color := clWhite;
3124    
# Line 3248  begin Line 3149  begin
3149        menuAutomatiskTjekkodeStyring.Enabled := false;        menuAutomatiskTjekkodeStyring.Enabled := false;
3150        menuNatxpressReturfraKunde1.Checked := true;        menuNatxpressReturfraKunde1.Checked := true;
3151        btnNulstil.Visible := false;        btnNulstil.Visible := false;
3152        InitForm(FarveReturBoghandler,TitelReturBoghandler,UrlReturBoghandler);        InitForm(Config.FarveReturBoghandler, Config.TitelReturBoghandler, Config.UrlReturBoghandler);
3153        PanelValg3.Color := clGreen;        PanelValg3.Color := clGreen;
3154        PanelValg3.Font.Color := clWhite;        PanelValg3.Font.Color := clWhite;
3155    
# Line 3278  begin Line 3179  begin
3179        menuAutomatiskTjekkodeStyring.Enabled := false;        menuAutomatiskTjekkodeStyring.Enabled := false;
3180        menuDaoDirekte1.Checked := true;        menuDaoDirekte1.Checked := true;
3181        btnNulstil.Visible := false;        btnNulstil.Visible := false;
3182        InitForm(FarveBudlevering,TitelBudlevering,UrlBudlevering);        InitForm(Config.FarveBudlevering, Config.TitelBudlevering, Config.UrlBudlevering);
3183        PanelValg4.Color := clGreen;        PanelValg4.Color := clGreen;
3184        PanelValg4.Font.Color := clWhite;        PanelValg4.Font.Color := clWhite;
3185    
# Line 3318  begin Line 3219  begin
3219        menuAutomatiskTjekkodeStyring.Enabled := true;        menuAutomatiskTjekkodeStyring.Enabled := true;
3220        menuPakkeshop1.Checked := true;        menuPakkeshop1.Checked := true;
3221        btnNulstil.Visible := false;        btnNulstil.Visible := false;
3222        InitForm(FarvePakkeshoplevering,TitelPakkeshoplevering,UrlPakkeshoplevering);        InitForm(Config.FarvePakkeshoplevering, Config.TitelPakkeshoplevering, Config.UrlPakkeshoplevering);
3223        PanelValg5.Color := clGreen;        PanelValg5.Color := clGreen;
3224        PanelValg5.Font.Color := clWhite;        PanelValg5.Font.Color := clWhite;
3225    
# Line 3358  begin Line 3259  begin
3259        menuAutomatiskTjekkodeStyring.Enabled := false;        menuAutomatiskTjekkodeStyring.Enabled := false;
3260        menuPakkeshopRetur1.Checked := true;        menuPakkeshopRetur1.Checked := true;
3261        btnNulstil.Visible := false;        btnNulstil.Visible := false;
3262        InitForm(FarveReturPakkeshop,TitelReturPakkeshop,UrlReturPakkeshop);        InitForm(Config.FarveReturPakkeshop, Config.TitelReturPakkeshop, Config.UrlReturPakkeshop);
3263        PanelValg6.Color := clGreen;        PanelValg6.Color := clGreen;
3264        PanelValg6.Font.Color := clWhite;        PanelValg6.Font.Color := clWhite;
3265    
# Line 3406  begin Line 3307  begin
3307        menuAutomatiskTjekkodeStyring.Enabled := false;        menuAutomatiskTjekkodeStyring.Enabled := false;
3308    
3309        btnNulstil.Visible := false;        btnNulstil.Visible := false;
3310        InitForm(FarveIndlevering, TitelIndlevering, UrlReturPakkeshop);        InitForm(Config.FarveIndlevering, Config.TitelIndlevering, Config.UrlReturPakkeshop);
3311        PanelValg7.Color := clGreen;        PanelValg7.Color := clGreen;
3312        PanelValg7.Font.Color := clWhite;        PanelValg7.Font.Color := clWhite;
3313    
# Line 3485  end; Line 3386  end;
3386    
3387  procedure TMainForm.Testlyd1Click(Sender: TObject);  procedure TMainForm.Testlyd1Click(Sender: TObject);
3388  begin  begin
3389     if AlarmLyd  <> '' then     if Config.AlarmLyd  <> '' then
3390     begin     begin
3391       PlaySound(PWideChar(AlarmLyd));       PlaySound(PWideChar(Config.AlarmLyd));
3392     end     end
3393     else     else
3394     begin     begin
# Line 3499  procedure TMainForm.Testlyd2Click(Sender Line 3400  procedure TMainForm.Testlyd2Click(Sender
3400  begin  begin
3401    if (PakkeshopText1.Caption = 'Tjekkode') then    if (PakkeshopText1.Caption = 'Tjekkode') then
3402    begin    begin
3403       if ScannetOkTilTjekkodeLyd  <> '' then       if Config.ScannetOkTilTjekkodeLyd  <> '' then
3404       begin       begin
3405         PlaySound(PWideChar(ScannetOkTilTjekkodeLyd));         PlaySound(PWideChar(Config.ScannetOkTilTjekkodeLyd));
3406       end       end
3407       else       else
3408       begin       begin
# Line 3511  begin Line 3412  begin
3412    end;    end;
3413    
3414    if menuSmaaPakker.Checked then    if menuSmaaPakker.Checked then
3415       if ScannetOkLyd  <> '' then       if Config.ScannetOkLyd  <> '' then
3416       begin       begin
3417         PlaySound(PWideChar(ScannetOkLyd));         PlaySound(PWideChar(Config.ScannetOkLyd));
3418       end       end
3419       else       else
3420       begin       begin
3421         MessageBox(Handle, PWideChar('Lyd fil ikke fundet (ScannetOkLyd)'), 'Information', MB_OK);         MessageBox(Handle, PWideChar('Lyd fil ikke fundet (ScannetOkLyd)'), 'Information', MB_OK);
3422       end;       end;
3423    if menuStorePakker.Checked then    if menuStorePakker.Checked then
3424       if ScannetOkStorLyd  <> '' then       if Config.ScannetOkStorLyd  <> '' then
3425       begin       begin
3426         PlaySound(PWideChar(ScannetOkStorLyd));         PlaySound(PWideChar(Config.ScannetOkStorLyd));
3427       end       end
3428       else       else
3429       begin       begin
# Line 3559  begin Line 3460  begin
3460      logTekst := 'Overfører de scannede pakker til EKL';      logTekst := 'Overfører de scannede pakker til EKL';
3461      SkrivScanningLogFil(logTekst);      SkrivScanningLogFil(logTekst);
3462      StedKode := Sted;      StedKode := Sted;
3463      URLStr := Format(UrlEKLoverforsel,[StedKode,Sted]);      URLStr := Format(Config.UrlEKLoverforsel,[StedKode,Sted]);
3464    
3465      if PanelValg5.Color = clGreen then      if PanelValg5.Color = clGreen then
3466      begin      begin
3467        URLStr := Format(UrlEKLoverforselPakkeshop,[StedKode,Sted]);        URLStr := Format(Config.UrlEKLoverforselPakkeshop,[StedKode,Sted]);
3468      end;      end;
3469    
3470    
# Line 3623  begin Line 3524  begin
3524      // Hvis der var fejl i overførslen skal dette fejlmeldes her      // Hvis der var fejl i overførslen skal dette fejlmeldes her
3525      if status = 'Fejl' then      if status = 'Fejl' then
3526      begin   // Her skal komme en alarm og rød skærm      begin   // Her skal komme en alarm og rød skærm
3527         PlaySound(PWideChar(AlarmLyd));         PlaySound(PWideChar(Config.AlarmLyd));
3528         MainForm.Color := clRed;         MainForm.Color := clRed;
3529         RutenummerST.Caption := 'EKL overførsel';         RutenummerST.Caption := 'EKL overførsel';
3530         BoghandlerNavnST.Caption := 'Fejl:';         BoghandlerNavnST.Caption := 'Fejl:';
# Line 4182  var Line 4083  var
4083    pakketyper : TDictionary<String, Integer>;    pakketyper : TDictionary<String, Integer>;
4084    tmpAntal : Integer;    tmpAntal : Integer;
4085    
4086     time, timeSamlet : TTimingHelper;
4087    
4088    
4089    antlin : Integer;    antlin : Integer;
# Line 4217  var Line 4119  var
4119    
4120      if (Scanningtype = '7') then      if (Scanningtype = '7') then
4121       begin       begin
4122        URLStr := Format(UrlIndleveringsPakkeManglendeScanninger, [StedKode]);        URLStr := Format(Config.UrlIndleveringsPakkeManglendeScanninger, [StedKode]);
4123       end       end
4124      else if (Scanningtype = '6') then      else if (Scanningtype = '6') then
4125       begin       begin
4126        URLStr := Format(UrlPakkeshopManglendeReturScanninger, [StedKode]);        URLStr := Format(Config.UrlPakkeshopManglendeReturScanninger, [StedKode]);
4127       end       end
4128      else if (Scanningtype = '5') then      else if (Scanningtype = '5') then
4129       begin       begin
4130        URLStr := Format(UrlPakkeshopManglendeScanninger, [StedKode]);        URLStr := Format(Config.UrlPakkeshopManglendeScanninger, [StedKode]);
4131       end       end
4132      else if (Scanningtype = '1') then      else if (Scanningtype = '1') then
4133       begin       begin
4134        URLStr := Format(UrlManglendeScanninger,[StedKode,'B2']);        URLStr := Format(Config.UrlManglendeScanninger,[StedKode,'B2']);
4135       end       end
4136      else if (Scanningtype = '4') then      else if (Scanningtype = '4') then
4137       begin       begin
4138        URLStr := Format(UrlManglendeScanninger,[StedKode,'A2']);    // Budleveringer        URLStr := Format(Config.UrlManglendeScanninger,[StedKode,'A2']);    // Budleveringer
4139       end       end
4140      else      else
4141       begin       begin
# Line 4241  var Line 4143  var
4143       end;       end;
4144  // 20150310: slut  // 20150310: slut
4145    
4146        time := TTimingHelper.create();        //DEBUG
4147        timeSamlet := TTimingHelper.create();        //DEBUG
4148    
4149      try      try
4150      //raise EIdConnClosedGracefully.Create('test');   // KUN TIL TEST      //raise EIdConnClosedGracefully.Create('test');   // KUN TIL TEST
4151  //    URLStr := string(Utf8Encode(URLStr));  //    URLStr := string(Utf8Encode(URLStr));
# Line 4263  var Line 4168  var
4168        end;        end;
4169      end;      end;
4170      try      try
4171          time.stop('HTTP Load');     //DEBUG
4172    
4173        XMLDocument1.LoadFromXML(WebSvar);        XMLDocument1.LoadFromXML(WebSvar);
4174    
4175          time.stop('XML Load');     //DEBUG
4176    
4177    
4178    
4179    
4180    
4181    
4182        antlin := 0;        antlin := 0;
4183        antlinIdag := 0;        antlinIdag := 0;
# Line 4307  var Line 4220  var
4220        SetLength(stregkoderMedTjekkodeArray, 0);    // reset fra tidligere brug        SetLength(stregkoderMedTjekkodeArray, 0);    // reset fra tidligere brug
4221        SetLength(stregkoderMedTjekkodeArray, antlin);  // sæt antal elementer i array        SetLength(stregkoderMedTjekkodeArray, antlin);  // sæt antal elementer i array
4222    
4223          time.stop('Antal Linier');//DEBUG
4224    
4225        Application.Processmessages; //Ugly Hack to improve User Experience when switching modes        Application.Processmessages; //Ugly Hack to improve User Experience when switching modes
4226    
# Line 4392  var Line 4306  var
4306        end;        end;
4307    
4308    
4309          time.stop('Fyld Listbox2');//DEBUG
4310    
4311    
4312        Application.Processmessages; //Ugly Hack to improve User Experience when switching modes        Application.Processmessages; //Ugly Hack to improve User Experience when switching modes
4313    
4314    
# Line 4511  var Line 4428  var
4428        end;        end;
4429      end;      end;
4430    
4431        time.stop('Done');//DEBUG
4432        timeSamlet.stop('SamletTid');//DEBUG
4433    
4434    
4435  end;  end;
4436    
4437  procedure TMainForm.IndlesScanningLogFil();  procedure TMainForm.IndlesScanningLogFil();
# Line 4686  begin Line 4607  begin
4607          ListBox1.Items.Insert(0,TimeToStr(now) + ': ' +'Fandt ingen linier til '+imorgenYmd+'.');          ListBox1.Items.Insert(0,TimeToStr(now) + ': ' +'Fandt ingen linier til '+imorgenYmd+'.');
4608          logTekst := 'Fandt ingen linier til '+imorgenYmd+'.';          logTekst := 'Fandt ingen linier til '+imorgenYmd+'.';
4609          SkrivScanningLogFil(logTekst);          SkrivScanningLogFil(logTekst);
4610          PlaySound(PWideChar(AlarmLyd));          PlaySound(PWideChar(Config.AlarmLyd));
4611        end;        end;
4612      end;      end;
4613    end    end
# Line 4695  begin Line 4616  begin
4616        ListBox1.Items.Insert(0,TimeToStr(now) + ': ' + 'Ruteskift fil '+filnavn+' findes ikke.');        ListBox1.Items.Insert(0,TimeToStr(now) + ': ' + 'Ruteskift fil '+filnavn+' findes ikke.');
4617        logTekst := 'Ruteskift fil '+filnavn+' findes ikke.';        logTekst := 'Ruteskift fil '+filnavn+' findes ikke.';
4618        SkrivScanningLogFil(logTekst);        SkrivScanningLogFil(logTekst);
4619        PlaySound(PWideChar(AlarmLyd));        PlaySound(PWideChar(Config.AlarmLyd));
4620    end;    end;
4621  end;  end;
4622    
# Line 4766  begin Line 4687  begin
4687          ListBox1.Items.Insert(0,TimeToStr(now) + ': ' +'Fandt ingen linier til '+imorgenYmd+'.');          ListBox1.Items.Insert(0,TimeToStr(now) + ': ' +'Fandt ingen linier til '+imorgenYmd+'.');
4688          logTekst := 'Fandt ingen linier til '+imorgenYmd+'.';          logTekst := 'Fandt ingen linier til '+imorgenYmd+'.';
4689          SkrivScanningLogFil(logTekst);          SkrivScanningLogFil(logTekst);
4690          PlaySound(PWideChar(AlarmLyd));          PlaySound(PWideChar(Config.AlarmLyd));
4691        end;        end;
4692      end;      end;
4693    end    end
# Line 4775  begin Line 4696  begin
4696        ListBox1.Items.Insert(0,TimeToStr(now) + ': ' + 'Kontrol fil '+filnavn+' findes ikke.');        ListBox1.Items.Insert(0,TimeToStr(now) + ': ' + 'Kontrol fil '+filnavn+' findes ikke.');
4697        logTekst := 'Kontrol fil '+filnavn+' findes ikke.';        logTekst := 'Kontrol fil '+filnavn+' findes ikke.';
4698        SkrivScanningLogFil(logTekst);        SkrivScanningLogFil(logTekst);
4699        PlaySound(PWideChar(AlarmLyd));        PlaySound(PWideChar(Config.AlarmLyd));
4700    end;    end;
4701  end;  end;
4702    
# Line 4833  procedure TMainForm.VisAlarmSkaerm(strMe Line 4754  procedure TMainForm.VisAlarmSkaerm(strMe
4754  begin  begin
4755    //ShowMessage('Ændring ikke tilladt');    //ShowMessage('Ændring ikke tilladt');
4756    // Her skal komme en 'rød skærm' alarm    // Her skal komme en 'rød skærm' alarm
4757    PlaySound(PWideChar(AlarmLyd));    PlaySound(PWideChar(Config.AlarmLyd));
4758    MainForm.Color := clRed;    MainForm.Color := clRed;
4759    
4760    
# Line 4961  begin Line 4882  begin
4882    Result := self;    Result := self;
4883  end;  end;
4884    
4885    //Nedarvet fra IParentForm
4886    function TMainForm.GetXMLDocument() : TXMLDocument;
4887    begin
4888      Result := XMLDocument1
4889    end;
4890    
4891    
4892  end.  end.
4893    

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

  ViewVC Help
Powered by ViewVC 1.1.20