/[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 3107 by torben, Tue Aug 23 14:08:44 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  
   
   Url := Url + '&ver=' + TUtils.URLEncode( TUtils.Sto_GetFmtFileVersion(''));  
   Url := Url + '&host=' + TUtils.URLEncode( TUtils.GetComputerNameHelper());  
   Url := Url + '&user=' + TUtils.URLEncode( TUtils.GetCurrentUserName());  
505    
   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');  
559    
     FarveReturPakkeshop := ReadString('Settings','FarveReturPakkeshop','99FFCC');  
     TitelReturPakkeshop := ReadString('Settings','TitelReturPakkeshop','Returforsendelse fra pakkeshop');  
560    
     FarveIndlevering := ReadString('Settings', 'FarveIndlevering', 'E5B2CB');  
     TitelIndlevering := ReadString('Settings', 'TitelIndlevering', 'Indleveringskode');  
561    
562    
     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;  
   
     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          //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 2322  pakkeForkertSted : Integer; Line 2223  pakkeForkertSted : Integer;
2223    kontrolKoreliste : string;    kontrolKoreliste : string;
2224    nytRuteNummer, nyFarve : String;    nytRuteNummer, nyFarve : String;
2225  begin  begin
2226      if (PrintNyLabel = True OR chkAltidPrintLabel.Checked = True) then
2227      begin
2228        LabelPrint.PrintLabel( Stregkode );
2229      end;
2230    
2231    
2232      exit;
2233    
2234    if menuDaoDirekte1.Checked then    if menuDaoDirekte1.Checked then
2235       RuteNummerST.Color := TUtils.HexToTColor(Farve);       RuteNummerST.Color := TUtils.HexToTColor(Farve);
2236    
# Line 2366  begin Line 2275  begin
2275       begin       begin
2276          PrintNyLabel := false;          PrintNyLabel := false;
2277    
2278          PlaySound(PWideChar(AlarmLyd));          PlaySound(PWideChar(Config.AlarmLyd));
2279          MainForm.Color := clRed;          MainForm.Color := clRed;
2280          btnNulstil.Visible := true;          btnNulstil.Visible := true;
2281    
# Line 2386  begin Line 2295  begin
2295            logTekst := RightStr(List1Msg, Length(List1Msg)-10);            logTekst := RightStr(List1Msg, Length(List1Msg)-10);
2296            SkrivScanningLogFil(logTekst);            SkrivScanningLogFil(logTekst);
2297    
2298            if (PrinterNavn = 'Ingen') then  //          if (Config.PrinterNavn = 'Ingen') then
2299            begin  //          begin
2300               PrintNyLabel := false;  //             PrintNyLabel := false;
2301            end;  //          end;
2302    
2303            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
2304            begin            begin
2305              PlaySound(PWideChar(AlarmLyd));              PlaySound(PWideChar(Config.AlarmLyd));
2306              MainForm.Color := clRed;              MainForm.Color := clRed;
2307              btnNulstil.Visible := true;              btnNulstil.Visible := true;
2308            end;            end;
# Line 2419  begin Line 2328  begin
2328    
2329            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
2330            begin            begin
2331              PlaySound(PWideChar(AlarmLyd));              PlaySound(PWideChar(Config.AlarmLyd));
2332              MainForm.Color := clRed;              MainForm.Color := clRed;
2333              btnNulstil.Visible := true;              btnNulstil.Visible := true;
2334            end;            end;
# Line 2488  begin Line 2397  begin
2397    end    end
2398    else    else
2399    begin    begin
2400      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
2401      begin      begin
2402        logTekst := 'Printer label type ';        logTekst := 'Printer label type ';
2403        if (chkAltidPrintLabel.Checked) then        if (chkAltidPrintLabel.Checked) then
# Line 2507  begin Line 2416  begin
2416        SkrivScanningLogFil(logTekst);        SkrivScanningLogFil(logTekst);
2417    
2418        LabelPrint.PrintDaodirekteLabel( RuteNummer, Kommentar, BoghandlerNavn) ;        LabelPrint.PrintDaodirekteLabel( RuteNummer, Kommentar, BoghandlerNavn) ;
2419          
2420      end;      end;
2421    end;    end;
2422    
# Line 2613  begin Line 2522  begin
2522      // Tjekker UrlNormal      // Tjekker UrlNormal
2523      if PanelValg1.Enabled = true then      if PanelValg1.Enabled = true then
2524      begin      begin
2525        TjekkerEnkeltUrl('UrlNormal', UrlNormal, urlFejl);        TjekkerEnkeltUrl('UrlNormal', Config.UrlNormal, urlFejl);
2526      end;      end;
2527    
2528      // Tjekker UrlReturDAO      // Tjekker UrlReturDAO
2529      if PanelValg2.Enabled = true then      if PanelValg2.Enabled = true then
2530      begin      begin
2531        TjekkerEnkeltUrl('UrlReturDAO', UrlReturDAO, urlFejl);        TjekkerEnkeltUrl('UrlReturDAO', Config.UrlReturDAO, urlFejl);
2532      end;      end;
2533    
2534      // Tjekker UrlReturBoghandler      // Tjekker UrlReturBoghandler
2535      if PanelValg3.Enabled = true then      if PanelValg3.Enabled = true then
2536      begin      begin
2537        TjekkerEnkeltUrl('UrlReturBoghandler', UrlReturBoghandler, urlFejl);        TjekkerEnkeltUrl('UrlReturBoghandler', Config.UrlReturBoghandler, urlFejl);
2538      end;      end;
2539    
2540      // Tjekker UrlBudlevering      // Tjekker UrlBudlevering
2541      if PanelValg4.Enabled = true then      if PanelValg4.Enabled = true then
2542      begin      begin
2543        TjekkerEnkeltUrl('UrlBudlevering', UrlBudlevering, urlFejl);        TjekkerEnkeltUrl('UrlBudlevering', Config.UrlBudlevering, urlFejl);
2544      end;      end;
2545    
2546      // Tjekker UrlPakkeshoplevering      // Tjekker UrlPakkeshoplevering
2547      if PanelValg5.Enabled = true then      if PanelValg5.Enabled = true then
2548      begin      begin
2549        TjekkerEnkeltUrl('UrlPakkeshoplevering', UrlPakkeshoplevering, urlFejl);        TjekkerEnkeltUrl('UrlPakkeshoplevering', Config.UrlPakkeshoplevering, urlFejl);
2550      end;      end;
2551    
2552      // Tjekker UrlReturPakkeshop      // Tjekker UrlReturPakkeshop
2553      if PanelValg6.Enabled = true then      if PanelValg6.Enabled = true then
2554      begin      begin
2555        TjekkerEnkeltUrl('UrlReturPakkeshop', UrlReturPakkeshop, urlFejl);        TjekkerEnkeltUrl('UrlReturPakkeshop', Config.UrlReturPakkeshop, urlFejl);
2556      end;      end;
2557    
2558      // Tjekker UrlManglendeScanninger      // Tjekker UrlManglendeScanninger
2559      if (PanelValg1.Enabled = true) or (PanelValg4.Enabled = true) then      if (PanelValg1.Enabled = true) or (PanelValg4.Enabled = true) then
2560      begin      begin
2561        TjekkerEnkeltUrl('UrlManglendeScanninger', UrlManglendeScanninger, urlFejl);        TjekkerEnkeltUrl('UrlManglendeScanninger', Config.UrlManglendeScanninger, urlFejl);
2562      end;      end;
2563    
2564      // Tjekker UrlPakkeshopManglendeScanninger      // Tjekker UrlPakkeshopManglendeScanninger
2565      if PanelValg5.Enabled = true then      if PanelValg5.Enabled = true then
2566      begin      begin
2567        TjekkerEnkeltUrl('UrlPakkeshopManglendeScanninger', UrlPakkeshopManglendeScanninger, urlFejl);        TjekkerEnkeltUrl('UrlPakkeshopManglendeScanninger', Config.UrlPakkeshopManglendeScanninger, urlFejl);
2568      end;      end;
2569    
2570      // Tjekker UrlPakkeshopManglendeReturScanninger      // Tjekker UrlPakkeshopManglendeReturScanninger
2571      if PanelValg6.Enabled = true then      if PanelValg6.Enabled = true then
2572      begin      begin
2573        TjekkerEnkeltUrl('UrlPakkeshopManglendeReturScanninger', UrlPakkeshopManglendeReturScanninger, urlFejl);        TjekkerEnkeltUrl('UrlPakkeshopManglendeReturScanninger', Config.UrlPakkeshopManglendeReturScanninger, urlFejl);
2574      end;      end;
2575    
2576     // Tjekker UrlIndleveringsPakke og UrlIndleveringsPakkeManglendeScanninger     // Tjekker UrlIndleveringsPakke og UrlIndleveringsPakkeManglendeScanninger
2577      if PanelValg7.Enabled = true then      if PanelValg7.Enabled = true then
2578      begin      begin
2579        TjekkerEnkeltUrl('UrlIndleveringsPakke', UrlIndleveringsPakke, urlFejl);        TjekkerEnkeltUrl('UrlIndleveringsPakke', Config.UrlIndleveringsPakke, urlFejl);
2580        TjekkerEnkeltUrl('UrlIndleveringsPakkeManglendeScanninger', UrlIndleveringsPakkeManglendeScanninger, urlFejl);        TjekkerEnkeltUrl('UrlIndleveringsPakkeManglendeScanninger', Config.UrlIndleveringsPakkeManglendeScanninger, urlFejl);
2581      end;      end;
2582    
2583      // Tjekker UrlEKLoverforsel      // Tjekker UrlEKLoverforsel
2584      if PanelValg1.Enabled = true then      if PanelValg1.Enabled = true then
2585      begin      begin
2586        TjekkerEnkeltUrl('UrlEKLoverforsel', UrlEKLoverforsel, urlFejl);        TjekkerEnkeltUrl('UrlEKLoverforsel', Config.UrlEKLoverforsel, urlFejl);
2587      end;      end;
2588    
2589    
2590      // Tjekker UrlEKLoverforselPakkeshop      // Tjekker UrlEKLoverforselPakkeshop
2591      if PanelValg5.Enabled = true then      if PanelValg5.Enabled = true then
2592      begin      begin
2593        TjekkerEnkeltUrl('UrlEKLoverforselPakkeshop', UrlEKLoverforselPakkeshop, urlFejl);        TjekkerEnkeltUrl('UrlEKLoverforselPakkeshop', Config.UrlEKLoverforselPakkeshop, urlFejl);
2594      end;      end;
2595    
2596    
2597      // Tjekker UrlFindPakketype      // Tjekker UrlFindPakketype
2598      TjekkerEnkeltUrl('UrlFindPakketype', UrlFindPakketype, urlFejl);      TjekkerEnkeltUrl('UrlFindPakketype', Config.UrlFindPakketype, urlFejl);
2599    
2600      // Tjekker UrlSendPrograminfo      // Tjekker UrlSendPrograminfo
2601      TjekkerEnkeltUrl('UrlSendPrograminfo', UrlSendPrograminfo, urlFejl);      TjekkerEnkeltUrl('UrlSendPrograminfo', Config.UrlSendPrograminfo, urlFejl);
2602    
2603    
2604    
# Line 2698  begin Line 2607  begin
2607      SkrivScanningLogFil(logTekst);      SkrivScanningLogFil(logTekst);
2608    
2609    Except    Except
2610      TjekUrls := '-';   // markerer at der var fejl      Config.TjekUrls := '-';   // markerer at der var fejl
2611    
2612    end;    end;
2613  end;  end;
# Line 2718  begin Line 2627  begin
2627      inc(urlFejl);   // Optæller antal fejl      inc(urlFejl);   // Optæller antal fejl
2628      logTekst := UrlNavn + ' svarer ikke: ' + Url;      logTekst := UrlNavn + ' svarer ikke: ' + Url;
2629      ListBox1.Items.Insert(0,TimeToStr(now) + ': ' + logTekst);      ListBox1.Items.Insert(0,TimeToStr(now) + ': ' + logTekst);
2630      if TjekUrls = '1' then      if Config.TjekUrls = '1' then
2631      begin      begin
2632        logTekst := logTekst + crlf + crlf + 'Programmet afsluttes... ';        logTekst := logTekst + crlf + crlf + 'Programmet afsluttes... ';
2633      end;      end;
2634    
2635      SkrivScanningLogFil(logTekst);      SkrivScanningLogFil(logTekst);
2636    
2637      if TjekUrls = '1' then      if Config.TjekUrls = '1' then
2638      begin      begin
2639        ShowMessage(logTekst);        ShowMessage(logTekst);
2640        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
2641        Application.Terminate;        Application.Terminate;
2642    
2643        raise Exception.Create('UrlFejl');        raise Exception.Create('UrlFejl');
# Line 2809  begin Line 2718  begin
2718    if BoghandlerNavnST.Caption = 'Fejl i forbindelse til server' then    if BoghandlerNavnST.Caption = 'Fejl i forbindelse til server' then
2719    begin    begin
2720       ShowMessage('Programmet afbrydes...');       ShowMessage('Programmet afbrydes...');
2721       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
2722       Application.Terminate;       Application.Terminate;
2723       exit;       exit;
2724    end;    end;
# Line 2911  var Line 2820  var
2820    Leveringssted : String;    Leveringssted : String;
2821    orgTjekUrls : String;    orgTjekUrls : String;
2822  begin  begin
2823    orgTjekUrls := TjekUrls;    orgTjekUrls := Config.TjekUrls;
2824    if (TjekUrls = '1') or (TjekUrls = '2') then    if (Config.TjekUrls = '1') or (Config.TjekUrls = '2') then
2825    begin    begin
2826      TjekkerUrls();      TjekkerUrls();
2827    end;    end;
2828    if TjekUrls = '-' then    if Config.TjekUrls = '-' then
2829    begin    begin
2830      //ShowMessage('Der var fejl i een eller flere urls - se logvinduet');      //ShowMessage('Der var fejl i een eller flere urls - se logvinduet');
2831      RuteNummer := '';      RuteNummer := '';
# Line 2925  begin Line 2834  begin
2834      Koreliste := '';      Koreliste := '';
2835      UpdateScreen(RuteNummer, Kommentar, BoghandlerNavn, Koreliste, '');      UpdateScreen(RuteNummer, Kommentar, BoghandlerNavn, Koreliste, '');
2836      // Her kommer en alarm og rød skærm      // Her kommer en alarm og rød skærm
2837      PlaySound(PWideChar(AlarmLyd));      PlaySound(PWideChar(Config.AlarmLyd));
2838      MainForm.Color := clRed;      MainForm.Color := clRed;
2839      btnNulstil.Visible := true;      btnNulstil.Visible := true;
2840    end    end
# Line 2938  begin Line 2847  begin
2847      SmsKode := '999999';      SmsKode := '999999';
2848      DBKbane := '999';      DBKbane := '999';
2849      Leveringssted := 'XXX';      Leveringssted := 'XXX';
2850    
2851    
2852      PrintLabel(RuteNummer, Kommentar, BoghandlerNavn, Koreliste, SmsKode, DBKbane, Leveringssted, Falsk);      PrintLabel(RuteNummer, Kommentar, BoghandlerNavn, Koreliste, SmsKode, DBKbane, Leveringssted, Falsk);
2853      FocusControl(StregkodeST);      FocusControl(StregkodeST);
2854    end;    end;
2855    TjekUrls := orgTjekUrls;    Config.TjekUrls := orgTjekUrls;
2856    
2857  end;  end;
2858    
# Line 2955  var Line 2866  var
2866    SmsKode : String;    SmsKode : String;
2867    DBKbane : String;    DBKbane : String;
2868    Leveringssted : String;    Leveringssted : String;
2869      LabelData : TLabelData;
2870  begin  begin
2871    RuteNummer := 'Rutenr';    RuteNummer := 'Rutenr';
2872    Kommentar := '***** Kommentar *****';    Kommentar := '***** Kommentar *****';
# Line 2966  begin Line 2878  begin
2878    begin    begin
2879      ShowMessage('Der er ikke installeret en printer på denne PC.');      ShowMessage('Der er ikke installeret en printer på denne PC.');
2880    end    end
2881    else if PrinterNavn = 'Ingen' then  //  else if Config.PrinterNavn = 'Ingen' then //Det giver ikke længere mening at kunne fravælge printer
2882    begin  //  begin
2883      ShowMessage('Der er fravalgt printer i dette program.');  //    ShowMessage('Der er fravalgt printer i dette program.');
2884    end  //  end
2885    else    else
2886    begin    begin
2887      UpdateScreen(RuteNummer, Kommentar, BoghandlerNavn, Koreliste, '');      UpdateScreen(RuteNummer, Kommentar, BoghandlerNavn, Koreliste, '');
2888      SmsKode := '999999';  //    SmsKode := '999999';
2889      DBKbane := '999';  //    DBKbane := '999';
2890      Leveringssted := 'XXX';  //    Leveringssted := 'XXX';
2891      PrintLabel(RuteNummer, Kommentar, BoghandlerNavn, Koreliste, SmsKode, DBKbane, Leveringssted, Falsk);  //    PrintLabel(RuteNummer, Kommentar, BoghandlerNavn, Koreliste, SmsKode, DBKbane, Leveringssted, Falsk);
2892      LabelPrint.CheckPrintQue('Test', PrinterNavn);  
2893    
2894        LabelData := TLabelData.Create(nil);
2895        LabelData.LabelType := 'simpel';
2896        LabelData.SimpelLinie1 := '999999';
2897        LabelData.SimpelLinie2 := '999';
2898        LabelData.SimpelLinie3 := 'xxx';
2899        LabelPrint.PrintLabelData(Labeldata);
2900    
2901        LabelPrint.CheckPrintQue('Test', Config.PrinterNavn);
2902    
2903        LabelData.Free();
2904    
2905    end;    end;
2906    FocusControl(StregkodeST);    FocusControl(StregkodeST);
2907  end;  end;
2908    
2909  procedure TMainForm.Timer1Timer(Sender: TObject);  procedure TMainForm.Timer1Timer(Sender: TObject);
2910  begin  begin
2911    if (TjekPrinter = '1') then    if (Config.TjekPrinter = '1') then
2912    begin    begin
2913      LabelPrint.CheckPrintQue('Timer', PrinterNavn);      LabelPrint.CheckPrintQue('Timer', Config.PrinterNavn);
2914    end    end
2915    else    else
2916    begin    begin
# Line 3040  begin Line 2964  begin
2964      tekst := tekst+crlf+crlf;      tekst := tekst+crlf+crlf;
2965      tekst := tekst+crlf+crlf+'          **********  DETTE ER KUN EN TEST VERSION  **********';      tekst := tekst+crlf+crlf+'          **********  DETTE ER KUN EN TEST VERSION  **********';
2966      tekst := tekst+crlf+crlf;      tekst := tekst+crlf+crlf;
2967      tekst := tekst+crlf+crlf+'Url: '+url;      tekst := tekst+crlf+crlf+'Url: ' + Url;
2968    end;    end;
2969    
2970    MessageBox(Handle, PWideChar(tekst), 'Information', MB_OK);    MessageBox(Handle, PWideChar(tekst), 'Information', MB_OK);
# Line 3181  begin Line 3105  begin
3105        menuAutomatiskTjekkodeStyring.Enabled := true;        menuAutomatiskTjekkodeStyring.Enabled := true;
3106        btnNulstil.Visible := false;        btnNulstil.Visible := false;
3107        menuNatXpress1.Checked := true;        menuNatXpress1.Checked := true;
3108        InitForm(FarveNormal,TitelNormal,UrlNormal);        InitForm(Config.FarveNormal,Config.TitelNormal,Config.UrlNormal);
3109        PanelValg1.Color := clGreen;        PanelValg1.Color := clGreen;
3110        PanelValg1.Font.Color := clWhite;        PanelValg1.Font.Color := clWhite;
3111    
# Line 3217  begin Line 3141  begin
3141        menuAutomatiskTjekkodeStyring.Enabled := false;        menuAutomatiskTjekkodeStyring.Enabled := false;
3142        menuNatxpressReturDAO1.Checked := true;        menuNatxpressReturDAO1.Checked := true;
3143        btnNulstil.Visible := false;        btnNulstil.Visible := false;
3144        InitForm(FarveReturDAO,TitelReturDAO,UrlReturDAO);        InitForm(Config.FarveReturDAO, Config.TitelReturDAO, Config.UrlReturDAO);
3145        PanelValg2.Color := clGreen;        PanelValg2.Color := clGreen;
3146        PanelValg2.Font.Color := clWhite;        PanelValg2.Font.Color := clWhite;
3147    
# Line 3248  begin Line 3172  begin
3172        menuAutomatiskTjekkodeStyring.Enabled := false;        menuAutomatiskTjekkodeStyring.Enabled := false;
3173        menuNatxpressReturfraKunde1.Checked := true;        menuNatxpressReturfraKunde1.Checked := true;
3174        btnNulstil.Visible := false;        btnNulstil.Visible := false;
3175        InitForm(FarveReturBoghandler,TitelReturBoghandler,UrlReturBoghandler);        InitForm(Config.FarveReturBoghandler, Config.TitelReturBoghandler, Config.UrlReturBoghandler);
3176        PanelValg3.Color := clGreen;        PanelValg3.Color := clGreen;
3177        PanelValg3.Font.Color := clWhite;        PanelValg3.Font.Color := clWhite;
3178    
# Line 3278  begin Line 3202  begin
3202        menuAutomatiskTjekkodeStyring.Enabled := false;        menuAutomatiskTjekkodeStyring.Enabled := false;
3203        menuDaoDirekte1.Checked := true;        menuDaoDirekte1.Checked := true;
3204        btnNulstil.Visible := false;        btnNulstil.Visible := false;
3205        InitForm(FarveBudlevering,TitelBudlevering,UrlBudlevering);        InitForm(Config.FarveBudlevering, Config.TitelBudlevering, Config.UrlBudlevering);
3206        PanelValg4.Color := clGreen;        PanelValg4.Color := clGreen;
3207        PanelValg4.Font.Color := clWhite;        PanelValg4.Font.Color := clWhite;
3208    
# Line 3318  begin Line 3242  begin
3242        menuAutomatiskTjekkodeStyring.Enabled := true;        menuAutomatiskTjekkodeStyring.Enabled := true;
3243        menuPakkeshop1.Checked := true;        menuPakkeshop1.Checked := true;
3244        btnNulstil.Visible := false;        btnNulstil.Visible := false;
3245        InitForm(FarvePakkeshoplevering,TitelPakkeshoplevering,UrlPakkeshoplevering);        InitForm(Config.FarvePakkeshoplevering, Config.TitelPakkeshoplevering, Config.UrlPakkeshoplevering);
3246        PanelValg5.Color := clGreen;        PanelValg5.Color := clGreen;
3247        PanelValg5.Font.Color := clWhite;        PanelValg5.Font.Color := clWhite;
3248    
# Line 3358  begin Line 3282  begin
3282        menuAutomatiskTjekkodeStyring.Enabled := false;        menuAutomatiskTjekkodeStyring.Enabled := false;
3283        menuPakkeshopRetur1.Checked := true;        menuPakkeshopRetur1.Checked := true;
3284        btnNulstil.Visible := false;        btnNulstil.Visible := false;
3285        InitForm(FarveReturPakkeshop,TitelReturPakkeshop,UrlReturPakkeshop);        InitForm(Config.FarveReturPakkeshop, Config.TitelReturPakkeshop, Config.UrlReturPakkeshop);
3286        PanelValg6.Color := clGreen;        PanelValg6.Color := clGreen;
3287        PanelValg6.Font.Color := clWhite;        PanelValg6.Font.Color := clWhite;
3288    
# Line 3406  begin Line 3330  begin
3330        menuAutomatiskTjekkodeStyring.Enabled := false;        menuAutomatiskTjekkodeStyring.Enabled := false;
3331    
3332        btnNulstil.Visible := false;        btnNulstil.Visible := false;
3333        InitForm(FarveIndlevering, TitelIndlevering, UrlReturPakkeshop);        InitForm(Config.FarveIndlevering, Config.TitelIndlevering, Config.UrlReturPakkeshop);
3334        PanelValg7.Color := clGreen;        PanelValg7.Color := clGreen;
3335        PanelValg7.Font.Color := clWhite;        PanelValg7.Font.Color := clWhite;
3336    
# Line 3485  end; Line 3409  end;
3409    
3410  procedure TMainForm.Testlyd1Click(Sender: TObject);  procedure TMainForm.Testlyd1Click(Sender: TObject);
3411  begin  begin
3412     if AlarmLyd  <> '' then     if Config.AlarmLyd  <> '' then
3413     begin     begin
3414       PlaySound(PWideChar(AlarmLyd));       PlaySound(PWideChar(Config.AlarmLyd));
3415     end     end
3416     else     else
3417     begin     begin
# Line 3499  procedure TMainForm.Testlyd2Click(Sender Line 3423  procedure TMainForm.Testlyd2Click(Sender
3423  begin  begin
3424    if (PakkeshopText1.Caption = 'Tjekkode') then    if (PakkeshopText1.Caption = 'Tjekkode') then
3425    begin    begin
3426       if ScannetOkTilTjekkodeLyd  <> '' then       if Config.ScannetOkTilTjekkodeLyd  <> '' then
3427       begin       begin
3428         PlaySound(PWideChar(ScannetOkTilTjekkodeLyd));         PlaySound(PWideChar(Config.ScannetOkTilTjekkodeLyd));
3429       end       end
3430       else       else
3431       begin       begin
# Line 3511  begin Line 3435  begin
3435    end;    end;
3436    
3437    if menuSmaaPakker.Checked then    if menuSmaaPakker.Checked then
3438       if ScannetOkLyd  <> '' then       if Config.ScannetOkLyd  <> '' then
3439       begin       begin
3440         PlaySound(PWideChar(ScannetOkLyd));         PlaySound(PWideChar(Config.ScannetOkLyd));
3441       end       end
3442       else       else
3443       begin       begin
3444         MessageBox(Handle, PWideChar('Lyd fil ikke fundet (ScannetOkLyd)'), 'Information', MB_OK);         MessageBox(Handle, PWideChar('Lyd fil ikke fundet (ScannetOkLyd)'), 'Information', MB_OK);
3445       end;       end;
3446    if menuStorePakker.Checked then    if menuStorePakker.Checked then
3447       if ScannetOkStorLyd  <> '' then       if Config.ScannetOkStorLyd  <> '' then
3448       begin       begin
3449         PlaySound(PWideChar(ScannetOkStorLyd));         PlaySound(PWideChar(Config.ScannetOkStorLyd));
3450       end       end
3451       else       else
3452       begin       begin
# Line 3559  begin Line 3483  begin
3483      logTekst := 'Overfører de scannede pakker til EKL';      logTekst := 'Overfører de scannede pakker til EKL';
3484      SkrivScanningLogFil(logTekst);      SkrivScanningLogFil(logTekst);
3485      StedKode := Sted;      StedKode := Sted;
3486      URLStr := Format(UrlEKLoverforsel,[StedKode,Sted]);      URLStr := Format(Config.UrlEKLoverforsel,[StedKode,Sted]);
3487    
3488      if PanelValg5.Color = clGreen then      if PanelValg5.Color = clGreen then
3489      begin      begin
3490        URLStr := Format(UrlEKLoverforselPakkeshop,[StedKode,Sted]);        URLStr := Format(Config.UrlEKLoverforselPakkeshop,[StedKode,Sted]);
3491      end;      end;
3492    
3493    
# Line 3623  begin Line 3547  begin
3547      // Hvis der var fejl i overførslen skal dette fejlmeldes her      // Hvis der var fejl i overførslen skal dette fejlmeldes her
3548      if status = 'Fejl' then      if status = 'Fejl' then
3549      begin   // Her skal komme en alarm og rød skærm      begin   // Her skal komme en alarm og rød skærm
3550         PlaySound(PWideChar(AlarmLyd));         PlaySound(PWideChar(Config.AlarmLyd));
3551         MainForm.Color := clRed;         MainForm.Color := clRed;
3552         RutenummerST.Caption := 'EKL overførsel';         RutenummerST.Caption := 'EKL overførsel';
3553         BoghandlerNavnST.Caption := 'Fejl:';         BoghandlerNavnST.Caption := 'Fejl:';
# Line 4182  var Line 4106  var
4106    pakketyper : TDictionary<String, Integer>;    pakketyper : TDictionary<String, Integer>;
4107    tmpAntal : Integer;    tmpAntal : Integer;
4108    
4109     time, timeSamlet : TTimingHelper;
4110    
4111    
4112    antlin : Integer;    antlin : Integer;
# Line 4217  var Line 4142  var
4142    
4143      if (Scanningtype = '7') then      if (Scanningtype = '7') then
4144       begin       begin
4145        URLStr := Format(UrlIndleveringsPakkeManglendeScanninger, [StedKode]);        URLStr := Format(Config.UrlIndleveringsPakkeManglendeScanninger, [StedKode]);
4146       end       end
4147      else if (Scanningtype = '6') then      else if (Scanningtype = '6') then
4148       begin       begin
4149        URLStr := Format(UrlPakkeshopManglendeReturScanninger, [StedKode]);        URLStr := Format(Config.UrlPakkeshopManglendeReturScanninger, [StedKode]);
4150       end       end
4151      else if (Scanningtype = '5') then      else if (Scanningtype = '5') then
4152       begin       begin
4153        URLStr := Format(UrlPakkeshopManglendeScanninger, [StedKode]);        URLStr := Format(Config.UrlPakkeshopManglendeScanninger, [StedKode]);
4154       end       end
4155      else if (Scanningtype = '1') then      else if (Scanningtype = '1') then
4156       begin       begin
4157        URLStr := Format(UrlManglendeScanninger,[StedKode,'B2']);        URLStr := Format(Config.UrlManglendeScanninger,[StedKode,'B2']);
4158       end       end
4159      else if (Scanningtype = '4') then      else if (Scanningtype = '4') then
4160       begin       begin
4161        URLStr := Format(UrlManglendeScanninger,[StedKode,'A2']);    // Budleveringer        URLStr := Format(Config.UrlManglendeScanninger,[StedKode,'A2']);    // Budleveringer
4162       end       end
4163      else      else
4164       begin       begin
# Line 4241  var Line 4166  var
4166       end;       end;
4167  // 20150310: slut  // 20150310: slut
4168    
4169        time := TTimingHelper.create();        //DEBUG
4170        timeSamlet := TTimingHelper.create();        //DEBUG
4171    
4172      try      try
4173      //raise EIdConnClosedGracefully.Create('test');   // KUN TIL TEST      //raise EIdConnClosedGracefully.Create('test');   // KUN TIL TEST
4174  //    URLStr := string(Utf8Encode(URLStr));  //    URLStr := string(Utf8Encode(URLStr));
# Line 4263  var Line 4191  var
4191        end;        end;
4192      end;      end;
4193      try      try
4194          time.stop('HTTP Load');     //DEBUG
4195    
4196        XMLDocument1.LoadFromXML(WebSvar);        XMLDocument1.LoadFromXML(WebSvar);
4197    
4198          time.stop('XML Load');     //DEBUG
4199    
4200    
4201    
4202    
4203    
4204    
4205        antlin := 0;        antlin := 0;
4206        antlinIdag := 0;        antlinIdag := 0;
# Line 4307  var Line 4243  var
4243        SetLength(stregkoderMedTjekkodeArray, 0);    // reset fra tidligere brug        SetLength(stregkoderMedTjekkodeArray, 0);    // reset fra tidligere brug
4244        SetLength(stregkoderMedTjekkodeArray, antlin);  // sæt antal elementer i array        SetLength(stregkoderMedTjekkodeArray, antlin);  // sæt antal elementer i array
4245    
4246          time.stop('Antal Linier');//DEBUG
4247    
4248        Application.Processmessages; //Ugly Hack to improve User Experience when switching modes        Application.Processmessages; //Ugly Hack to improve User Experience when switching modes
4249    
# Line 4392  var Line 4329  var
4329        end;        end;
4330    
4331    
4332          time.stop('Fyld Listbox2');//DEBUG
4333    
4334    
4335        Application.Processmessages; //Ugly Hack to improve User Experience when switching modes        Application.Processmessages; //Ugly Hack to improve User Experience when switching modes
4336    
4337    
# Line 4511  var Line 4451  var
4451        end;        end;
4452      end;      end;
4453    
4454        time.stop('Done');//DEBUG
4455        timeSamlet.stop('SamletTid');//DEBUG
4456    
4457    
4458  end;  end;
4459    
4460  procedure TMainForm.IndlesScanningLogFil();  procedure TMainForm.IndlesScanningLogFil();
# Line 4686  begin Line 4630  begin
4630          ListBox1.Items.Insert(0,TimeToStr(now) + ': ' +'Fandt ingen linier til '+imorgenYmd+'.');          ListBox1.Items.Insert(0,TimeToStr(now) + ': ' +'Fandt ingen linier til '+imorgenYmd+'.');
4631          logTekst := 'Fandt ingen linier til '+imorgenYmd+'.';          logTekst := 'Fandt ingen linier til '+imorgenYmd+'.';
4632          SkrivScanningLogFil(logTekst);          SkrivScanningLogFil(logTekst);
4633          PlaySound(PWideChar(AlarmLyd));          PlaySound(PWideChar(Config.AlarmLyd));
4634        end;        end;
4635      end;      end;
4636    end    end
# Line 4695  begin Line 4639  begin
4639        ListBox1.Items.Insert(0,TimeToStr(now) + ': ' + 'Ruteskift fil '+filnavn+' findes ikke.');        ListBox1.Items.Insert(0,TimeToStr(now) + ': ' + 'Ruteskift fil '+filnavn+' findes ikke.');
4640        logTekst := 'Ruteskift fil '+filnavn+' findes ikke.';        logTekst := 'Ruteskift fil '+filnavn+' findes ikke.';
4641        SkrivScanningLogFil(logTekst);        SkrivScanningLogFil(logTekst);
4642        PlaySound(PWideChar(AlarmLyd));        PlaySound(PWideChar(Config.AlarmLyd));
4643    end;    end;
4644  end;  end;
4645    
# Line 4766  begin Line 4710  begin
4710          ListBox1.Items.Insert(0,TimeToStr(now) + ': ' +'Fandt ingen linier til '+imorgenYmd+'.');          ListBox1.Items.Insert(0,TimeToStr(now) + ': ' +'Fandt ingen linier til '+imorgenYmd+'.');
4711          logTekst := 'Fandt ingen linier til '+imorgenYmd+'.';          logTekst := 'Fandt ingen linier til '+imorgenYmd+'.';
4712          SkrivScanningLogFil(logTekst);          SkrivScanningLogFil(logTekst);
4713          PlaySound(PWideChar(AlarmLyd));          PlaySound(PWideChar(Config.AlarmLyd));
4714        end;        end;
4715      end;      end;
4716    end    end
# Line 4775  begin Line 4719  begin
4719        ListBox1.Items.Insert(0,TimeToStr(now) + ': ' + 'Kontrol fil '+filnavn+' findes ikke.');        ListBox1.Items.Insert(0,TimeToStr(now) + ': ' + 'Kontrol fil '+filnavn+' findes ikke.');
4720        logTekst := 'Kontrol fil '+filnavn+' findes ikke.';        logTekst := 'Kontrol fil '+filnavn+' findes ikke.';
4721        SkrivScanningLogFil(logTekst);        SkrivScanningLogFil(logTekst);
4722        PlaySound(PWideChar(AlarmLyd));        PlaySound(PWideChar(Config.AlarmLyd));
4723    end;    end;
4724  end;  end;
4725    
# Line 4833  procedure TMainForm.VisAlarmSkaerm(strMe Line 4777  procedure TMainForm.VisAlarmSkaerm(strMe
4777  begin  begin
4778    //ShowMessage('Ændring ikke tilladt');    //ShowMessage('Ændring ikke tilladt');
4779    // Her skal komme en 'rød skærm' alarm    // Her skal komme en 'rød skærm' alarm
4780    PlaySound(PWideChar(AlarmLyd));    PlaySound(PWideChar(Config.AlarmLyd));
4781    MainForm.Color := clRed;    MainForm.Color := clRed;
4782    
4783    
# Line 4961  begin Line 4905  begin
4905    Result := self;    Result := self;
4906  end;  end;
4907    
4908    //Nedarvet fra IParentForm
4909    function TMainForm.GetXMLDocument() : TXMLDocument;
4910    begin
4911      Result := XMLDocument1
4912    end;
4913    
4914    
4915  end.  end.
4916    

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

  ViewVC Help
Powered by ViewVC 1.1.20