/[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 2756 by torben, Thu Oct 22 14:06:23 2015 UTC revision 3054 by torben, Mon Jun 27 11:53:04 2016 UTC
# Line 25  uses Line 25  uses
25    ParentForm,    ParentForm,
26    LabelPrint,    LabelPrint,
27    Configuration,    Configuration,
28    Vcl.Imaging.pngimage    Vcl.Imaging.pngimage,
29      Generics.Collections
30    
31    ;    ;
32    
# Line 38  type Line 39  type
39      XMLDocument1: TXMLDocument;      XMLDocument1: TXMLDocument;
40      ApplicationEvents1: TApplicationEvents;      ApplicationEvents1: TApplicationEvents;
41      chkSporgEfterKunde: TCheckBox;      chkSporgEfterKunde: TCheckBox;
     KommentarST: TStaticText;  
42      MainMenu1: TMainMenu;      MainMenu1: TMainMenu;
43      N1: TMenuItem;      N1: TMenuItem;
44      Pakkernormal1: TMenuItem;      menuNatXpress1: TMenuItem;
45      ReturpakkerfraDAO1: TMenuItem;      menuNatxpressReturDAO1: TMenuItem;
46      Returpakkerfraboghandler1: TMenuItem;      menuNatxpressReturfraKunde1: TMenuItem;
47      Hjlp1: TMenuItem;      Hjlp1: TMenuItem;
48      Om1: TMenuItem;      Om1: TMenuItem;
49      Testforbindelsen1: TMenuItem;      Testforbindelsen1: TMenuItem;
# Line 63  type Line 63  type
63      Button1: TButton;      Button1: TButton;
64      Testlyd1: TMenuItem;      Testlyd1: TMenuItem;
65      ListBox1: TListBox;      ListBox1: TListBox;
66      Budlevering1: TMenuItem;      menuDaoDirekte1: TMenuItem;
67      BtnDownloadKontrolfil: TButton;      BtnDownloadKontrolfil: TButton;
68      IdFTP1: TIdFTP;      IdFTP1: TIdFTP;
69      Image1: TImage;      Image1: TImage;
# Line 71  type Line 71  type
71      BtnOpdaterListen: TButton;      BtnOpdaterListen: TButton;
72      BtnUploadLogfil: TButton;      BtnUploadLogfil: TButton;
73      BtnDownloadRuteskiftFil: TButton;      BtnDownloadRuteskiftFil: TButton;
74      Pakkeshoplevering1: TMenuItem;      menuPakkeshop1: TMenuItem;
75      PakkeshopText1: TStaticText;      PakkeshopText1: TStaticText;
76      btnNulstil: TButton;      btnNulstil: TButton;
77      Returpakkerfrapakkeshop1: TMenuItem;      menuPakkeshopRetur1: TMenuItem;
78      Altidprintepakkelabel1: TMenuItem;      Altidprintepakkelabel1: TMenuItem;
79      chkAltidPrintLabel: TCheckBox;      chkAltidPrintLabel: TCheckBox;
80      BtnEKLoverforsel: TButton;      BtnEKLoverforsel: TButton;
# Line 86  type Line 86  type
86      chkScanTjekkode: TCheckBox;      chkScanTjekkode: TCheckBox;
87      Scanogstjekkoden1: TMenuItem;      Scanogstjekkoden1: TMenuItem;
88      Automatisktjekkodestyring1: TMenuItem;      Automatisktjekkodestyring1: TMenuItem;
89      Automatiskvalg1: TMenuItem;      menuAutomatiskvalg1: TMenuItem;
90      PanelValgA: TPanel;      PanelValgA: TPanel;
91      PanelValg1: TPanel;      PanelValg1: TPanel;
92      PanelValg2: TPanel;      PanelValg2: TPanel;
# Line 104  type Line 104  type
104      PanelManglendePakker5: TPanel;      PanelManglendePakker5: TPanel;
105      PanelManglendePakker6: TPanel;      PanelManglendePakker6: TPanel;
106      menuIndlevering: TMenuItem;      menuIndlevering: TMenuItem;
107        chkForstorTilDirekte: TCheckBox;
108        chkEmballageRepareret: TCheckBox;
109        KommentarST: TLabel;
110    
111    
112    
# Line 125  type Line 128  type
128    procedure radioStorPakkeClick(Sender: TObject);    procedure radioStorPakkeClick(Sender: TObject);
129    procedure radioLillePakkeClick(Sender: TObject);    procedure radioLillePakkeClick(Sender: TObject);
130    procedure chkSporgEfterKundeClick(Sender: TObject);    procedure chkSporgEfterKundeClick(Sender: TObject);
131    procedure Pakkernormal1Click(Sender: TObject);    procedure menuNatXpress1Click(Sender: TObject);
132    procedure Testforbindelsen1Click(Sender: TObject);    procedure Testforbindelsen1Click(Sender: TObject);
133    procedure Testprinter1Click(Sender: TObject);    procedure Testprinter1Click(Sender: TObject);
134    procedure Om1Click(Sender: TObject);    procedure Om1Click(Sender: TObject);
135    procedure Lukprogrammet1Click(Sender: TObject);    procedure Lukprogrammet1Click(Sender: TObject);
136    procedure Sprgefterboghandlernummer1Click(Sender: TObject);    procedure Sprgefterboghandlernummer1Click(Sender: TObject);
137    procedure ReturpakkerfraDAO1Click(Sender: TObject);    procedure menuNatxpressReturDAO1Click(Sender: TObject);
138    procedure Returpakkerfraboghandler1Click(Sender: TObject);    procedure menuNatxpressReturfraKunde1Click(Sender: TObject);
139    procedure Storepakker1Click(Sender: TObject);    procedure Storepakker1Click(Sender: TObject);
140    procedure Smpakker1Click(Sender: TObject);    procedure Smpakker1Click(Sender: TObject);
141    procedure Testlyd1Click(Sender: TObject);    procedure Testlyd1Click(Sender: TObject);
142    procedure Testlyd2Click(Sender: TObject);    procedure Testlyd2Click(Sender: TObject);
143    procedure Button1Click(Sender: TObject);    procedure Button1Click(Sender: TObject);
144    procedure ListBox1DrawItem(Control: TWinControl; Index: Integer; Rect: TRect; State: TOwnerDrawState);    procedure ListBox1DrawItem(Control: TWinControl; Index: Integer; Rect: TRect; State: TOwnerDrawState);
145    procedure Budlevering1Click(Sender: TObject);    procedure menuDaoDirekte1Click(Sender: TObject);
146    procedure BtnDownloadKontrolfilClick(Sender: TObject);    procedure BtnDownloadKontrolfilClick(Sender: TObject);
147    procedure BtnOpdaterListenClick(Sender: TObject);    procedure BtnOpdaterListenClick(Sender: TObject);
148    procedure DownloadBladhusRuteskiftfil();    procedure DownloadBladhusRuteskiftfil();
# Line 151  type Line 154  type
154    procedure FormDestroy(Sender: TObject);    procedure FormDestroy(Sender: TObject);
155    procedure BtnUploadLogfilClick(Sender: TObject);    procedure BtnUploadLogfilClick(Sender: TObject);
156    procedure BtnDownloadRuteskiftFilClick(Sender: TObject);    procedure BtnDownloadRuteskiftFilClick(Sender: TObject);
157    procedure Pakkeshoplevering1Click(Sender: TObject);    procedure menuPakkeshop1Click(Sender: TObject);
158    procedure btnNulstilClick(Sender: TObject);    procedure btnNulstilClick(Sender: TObject);
159    procedure Returpakkerfrapakkeshop1Click(Sender: TObject);    procedure menuPakkeshopRetur1Click(Sender: TObject);
160    procedure InitNatxpresslevering();    procedure InitNatxpresslevering();
161    procedure InitReturFraDao();    procedure InitReturFraDao();
162    procedure InitReturFraKunde();    procedure InitReturFraKunde();
# Line 172  type Line 175  type
175    procedure chkScanTjekkodeClick(Sender: TObject);    procedure chkScanTjekkodeClick(Sender: TObject);
176    procedure Automatisktjekkodestyring1Click(Sender: TObject);    procedure Automatisktjekkodestyring1Click(Sender: TObject);
177    procedure SendInfoTilServer(Sted, Scanningtype, Infotype, Info : String);    procedure SendInfoTilServer(Sted, Scanningtype, Infotype, Info : String);
178    procedure Automatiskvalg1Click(Sender: TObject);    procedure menuAutomatiskvalg1Click(Sender: TObject);
179    procedure PanelValgAClick(Sender: TObject);    procedure PanelValgAClick(Sender: TObject);
180    procedure PanelValg1Click(Sender: TObject);    procedure PanelValg1Click(Sender: TObject);
181    procedure PanelValg2Click(Sender: TObject);    procedure PanelValg2Click(Sender: TObject);
# Line 192  type Line 195  type
195    
196    
197    
   
198    //Nedarvet fra IParentForm    //Nedarvet fra IParentForm
199      procedure Msg( msg : string);
200    procedure LogMessage( msg : string);    procedure LogMessage( msg : string);
201    procedure SetPrinterstatusText( txt: string; alert: boolean);    procedure SetPrinterstatusText( txt: string; alert: boolean);
202    function GetFormObject() : TForm;    function GetFormObject() : TForm;
203    
204    
205    
206    private    private
207      SpecialVersionSted, SpecialVersionScanningtype: String;    // Bruges når programmet skal bruges udenfor DAO scanningssteder      SpecialVersionSted, SpecialVersionScanningtype: String;    // Bruges når programmet skal bruges udenfor DAO scanningssteder
208      Stregkode : String;      Stregkode : String;
209      SkrivLog : String;      SkrivLog : String;
210      Sted : String;      Sted : String;
211      StedNavn : String;      StedNavn : String;
212      Url, UrlNormal, UrlReturDAO, UrlReturBoghandler, UrlBudlevering, UrlManglendeScanninger, UrlPakkeshoplevering, UrlReturPakkeshop, UrlPakkeshopManglendeScanninger, UrlPakkeshopManglendeReturScanninger,UrlIndleveringsPakke,UrlIndleveringsPakkeManglendeScanninger,UrlEKLoverforsel : String;      Url, UrlNormal, UrlReturDAO, UrlReturBoghandler, UrlBudlevering, UrlManglendeScanninger, UrlPakkeshoplevering,
213                UrlReturPakkeshop, UrlPakkeshopManglendeScanninger, UrlPakkeshopManglendeReturScanninger,UrlIndleveringsPakke,
214                UrlIndleveringsPakkeManglendeScanninger,UrlEKLoverforsel, URLOmdirigerTilPakkeshop : String;
215    
216      UrlEKLoverforselPakkeshop : String;      UrlEKLoverforselPakkeshop : String;
217    
# Line 213  type Line 219  type
219      Scanningtype, TestFunktionen, Pakketype, SporgEfterBoghandler : String;      Scanningtype, TestFunktionen, Pakketype, SporgEfterBoghandler : String;
220      ScanTjekkode : String;      ScanTjekkode : String;
221      ScanTjekkodeAutomatik : string;      ScanTjekkodeAutomatik : string;
222      Farve, FarveNormal, FarveReturDAO, FarveReturBoghandler, FarveBudlevering, FarvePakkeshoplevering, FarveReturPakkeshop, FarveIndlevering : String;  
223      Titel, TitelNormal, TitelReturDAO, TitelReturBoghandler, TitelBudlevering, TitelPakkeshoplevering, TitelReturPakkeshop, TitelIndlevering : String;      Farve, FarveNormal, FarveReturDAO, FarveReturBoghandler, FarveBudlevering, FarvePakkeshoplevering, FarveReturPakkeshop,
224              FarveIndlevering : String;
225    
226        Titel, TitelNormal, TitelReturDAO, TitelReturBoghandler, TitelBudlevering, TitelPakkeshoplevering, TitelReturPakkeshop,
227              TitelIndlevering : String;
228    
229      AlarmLyd : String;      AlarmLyd : String;
230      ScannetOkLyd : String;      ScannetOkLyd : String;
# Line 253  type Line 263  type
263      procedure SkrivScanningLogFil(var tekst : string);      procedure SkrivScanningLogFil(var tekst : string);
264      function TjekKoreliste(var RuteNummer, Koreliste : string) : string;      function TjekKoreliste(var RuteNummer, Koreliste : string) : string;
265      procedure VisAlarmSkaerm(strMessage: string);      procedure VisAlarmSkaerm(strMessage: string);
266        function InjectURL(Url : String) : String;
267    
268    public    public
269      { Public declarations }      { Public declarations }
# Line 278  implementation Line 289  implementation
289  procedure TMainForm.InitForm(Farve,Titel,Url : String);  procedure TMainForm.InitForm(Farve,Titel,Url : String);
290  begin  begin
291    
292        IdHTTP1.ConnectTimeout := 5000; // Vent max 5 sek på connect
293        IdHTTP1.ReadTimeout := 10000; // Vent max 10 sek på read
294    
295    
296    
297    
298      StaticTextManglendePakker.Caption := '';      StaticTextManglendePakker.Caption := '';
299    
300    
# Line 351  begin Line 368  begin
368        else if (Sted = 'BR') then        else if (Sted = 'BR') then
369          begin StedNavn := 'Brøndby: '; end          begin StedNavn := 'Brøndby: '; end
370        else if (Sted = 'BK') then        else if (Sted = 'BK') then
371          begin StedNavn := 'Bladkompagniet: '; end          begin StedNavn := 'Bladkompagniet/ISV: '; end
372          else if (Sted = 'TK') then
373            begin StedNavn := 'BK/Trykkompagniet: '; end
374        else if (Sted = 'DBK') then        else if (Sted = 'DBK') then
375          begin StedNavn := 'DBK Køge: '; end          begin StedNavn := 'DBK/Køge: '; end
376        else if (Sted = '1') then        else if (Sted = '1') then
377          begin StedNavn := 'Ålborg: '; end          begin StedNavn := 'Ålborg: '; end
378        else if (Sted = '2') then        else if (Sted = '2') then
# Line 387  begin Line 406  begin
406        PrinterstatusStaticText1.Color := MainForm.Color;        PrinterstatusStaticText1.Color := MainForm.Color;
407      end;      end;
408    
409      if PakkeshopLevering1.Checked or Pakkernormal1.Checked then      if menuPakkeshop1.Checked or menuNatXpress1.Checked then
410        PakkeshopText1.Visible := true        PakkeshopText1.Visible := true
411      else      else
412        PakkeshopText1.Visible := false;        PakkeshopText1.Visible := false;
# Line 485  begin Line 504  begin
504    
505  end;  end;
506    
507  procedure TMainForm.Automatiskvalg1Click(Sender: TObject);  procedure TMainForm.menuAutomatiskvalg1Click(Sender: TObject);
508  begin  begin
509  // Skal ikke toggle men bare sætte funktionen on  // Skal ikke toggle men bare sætte funktionen on
510  // Fravælges ved at vælge en scanningstype  // Fravælges ved at vælge en scanningstype
511       AutomatiskValg1.Checked := true;       menuAutomatiskvalg1.Checked := true;
512       PanelValgA.Color := clGreen;       PanelValgA.Color := clGreen;
513       PanelValgA.Font.Color := clWhite;       PanelValgA.Font.Color := clWhite;
514  end;  end;
515    
516    function TMainForm.InjectURL(Url : String) : String;
517    begin
518    
519      Url := Url + '&ver=' + TUtils.URLEncode( TUtils.Sto_GetFmtFileVersion(''));
520      Url := Url + '&host=' + TUtils.URLEncode( TUtils.GetComputerNameHelper());
521      Url := Url + '&user=' + TUtils.URLEncode( TUtils.GetCurrentUserName());
522    
523      Result := Url;
524    end;
525    
526  //InitForm kaldes før FormCreate  //InitForm kaldes før FormCreate
527  procedure TMainForm.FormCreate(Sender: TObject);  procedure TMainForm.FormCreate(Sender: TObject);
# Line 544  begin Line 572  begin
572      SkrivLog := ReadString('Settings','SkrivLog','0');      SkrivLog := ReadString('Settings','SkrivLog','0');
573      Sted := ReadString('Settings','Sted','');      Sted := ReadString('Settings','Sted','');
574      StedNavn := ReadString('Settings','Stednavn','');      StedNavn := ReadString('Settings','Stednavn','');
575    
576      UrlFindPakketype := ReadString('Settings','UrlFindPakketype','http://omdeling.info/webservices/bogpakkekontrol/FindPakketype.php?stregkode=%s');      UrlFindPakketype := ReadString('Settings','UrlFindPakketype','http://omdeling.info/webservices/bogpakkekontrol/FindPakketype.php?stregkode=%s');
577        UrlFindPakketype := InjectURL(UrlFindPakketype);
578    
579      UrlSendPrograminfo := ReadString('Settings','UrlSendPrograminfo','http://omdeling.info/webservices/bogpakkekontrol/SendPrograminfo.php?programnavn=%s&sted=%s&scanningtype=%s&infotype=%s&info=%s');      UrlSendPrograminfo := ReadString('Settings','UrlSendPrograminfo','http://omdeling.info/webservices/bogpakkekontrol/SendPrograminfo.php?programnavn=%s&sted=%s&scanningtype=%s&infotype=%s&info=%s');
580        UrlSendPrograminfo := InjectURL(UrlSendPrograminfo);
581    
582      UrlNormal := ReadString('Settings','UrlNormal','http://omdeling.info/webservices/bogpakkekontrol/bogpakkekontrol.php?sted=%s&pakkenummer=%s&boghandlernummer=%s&tjekkode=%s');      UrlNormal := ReadString('Settings','UrlNormal','http://omdeling.info/webservices/bogpakkekontrol/bogpakkekontrol.php?sted=%s&pakkenummer=%s&boghandlernummer=%s&tjekkode=%s');
583        UrlNormal := InjectURL(UrlNormal);
584    
585      UrlReturDAO := ReadString('Settings','UrlReturDAO','http://omdeling.info/webservices/bogpakkekontrol/bogpakkekontrol.php?sted=%s&pakkenummer=%s&boghandlernummer=%s&returpakketype=%s&pakkestorrelse=%s');      UrlReturDAO := ReadString('Settings','UrlReturDAO','http://omdeling.info/webservices/bogpakkekontrol/bogpakkekontrol.php?sted=%s&pakkenummer=%s&boghandlernummer=%s&returpakketype=%s&pakkestorrelse=%s');
586        UrlReturDAO := InjectURL(UrlReturDAO);
587    
588      UrlReturBoghandler := ReadString('Settings','UrlReturBoghandler','http://omdeling.info/webservices/bogpakkekontrol/bogpakkekontrol.php?sted=%s&pakkenummer=%s&boghandlernummer=%s&returpakketype=%s&pakkestorrelse=%s');      UrlReturBoghandler := ReadString('Settings','UrlReturBoghandler','http://omdeling.info/webservices/bogpakkekontrol/bogpakkekontrol.php?sted=%s&pakkenummer=%s&boghandlernummer=%s&returpakketype=%s&pakkestorrelse=%s');
589        UrlReturBoghandler := InjectURL(UrlReturBoghandler);
590    
591      UrlBudlevering := ReadString('Settings','UrlBudlevering','http://omdeling.info/webservices/bogpakkekontrol/bogpakkekontrol.php?sted=%s&pakkenummer=%s&leveringstype=%s&pakkestorrelse=%s');      UrlBudlevering := ReadString('Settings','UrlBudlevering','http://omdeling.info/webservices/bogpakkekontrol/bogpakkekontrol.php?sted=%s&pakkenummer=%s&leveringstype=%s&pakkestorrelse=%s');
592        UrlBudlevering := InjectURL(UrlBudlevering);
593    
594      UrlManglendeScanninger := ReadString('Settings','UrlManglendeScanninger','http://omdeling.info/webservices/bogpakkekontrol/bogpakkemanglendescanninger.php?sted=%s&type=%s');      UrlManglendeScanninger := ReadString('Settings','UrlManglendeScanninger','http://omdeling.info/webservices/bogpakkekontrol/bogpakkemanglendescanninger.php?sted=%s&type=%s');
595        UrlManglendeScanninger := InjectURL(UrlManglendeScanninger);
596    
597      UrlEKLoverforsel := ReadString('Settings','UrlEKLoverforsel','http://omdeling.info/webservices/bogpakkekontrol/bogpakkertilekl.php?sted=%s');      UrlEKLoverforsel := ReadString('Settings','UrlEKLoverforsel','http://omdeling.info/webservices/bogpakkekontrol/bogpakkertilekl.php?sted=%s');
598        UrlEKLoverforsel := InjectURL(UrlEKLoverforsel);
599    
600      UrlEKLoverforselPakkeshop := ReadString('Settings','UrlEKLoverforselPakkeshop','http://omdeling.info/webservices/pakkeshop/pakkertilekl.php?sted=%s');      UrlEKLoverforselPakkeshop := ReadString('Settings','UrlEKLoverforselPakkeshop','http://omdeling.info/webservices/pakkeshop/pakkertilekl.php?sted=%s');
601        UrlEKLoverforselPakkeshop := InjectURL(UrlEKLoverforselPakkeshop);
602    
603      UrlPakkeshoplevering := ReadString('Settings','UrlPakkeshoplevering','http://omdeling.info/webservices/pakkeshop/pakkekontrol.php?sted=%s&stregkode=%s&tjekkode=%s');      UrlPakkeshoplevering := ReadString('Settings','UrlPakkeshoplevering','http://omdeling.info/webservices/pakkeshop/pakkekontrol.php?sted=%s&stregkode=%s&tjekkode=%s');
604        UrlPakkeshoplevering := InjectURL(UrlPakkeshoplevering);
605    
606      UrlReturPakkeshop := ReadString('Settings','UrlReturPakkeshop','http://omdeling.info/webservices/pakkeshop/returpakkekontrol.php?sted=%s&stregkode=%s');      UrlReturPakkeshop := ReadString('Settings','UrlReturPakkeshop','http://omdeling.info/webservices/pakkeshop/returpakkekontrol.php?sted=%s&stregkode=%s');
607        UrlReturPakkeshop := InjectURL(UrlReturPakkeshop);
608    
609      UrlPakkeshopManglendeScanninger := ReadString('Settings','UrlPakkeshopManglendeScanninger','http://omdeling.info/webservices/pakkeshop/pakkemanglendescanninger.php?sted=%s');      UrlPakkeshopManglendeScanninger := ReadString('Settings','UrlPakkeshopManglendeScanninger','http://omdeling.info/webservices/pakkeshop/pakkemanglendescanninger.php?sted=%s');
610      UrlPakkeshopManglendeReturScanninger := ReadString('Settings','UrlPakkeshopManglendeReturScanninger','http://omdeling.info/webservices/pakkeshop/pakkemanglendereturscanninger.php?sted=%s');      UrlPakkeshopManglendeScanninger := InjectURL(UrlPakkeshopManglendeScanninger);
611    
612        UrlPakkeshopManglendeReturScanninger := ReadString('Settings','UrlPakkeshopManglendeReturScanninger','http://omdeling.info/webservices/pakkeshop/pakkemanglendereturscanninger.php?sted=%s');
613        UrlPakkeshopManglendeReturScanninger := InjectURL(UrlPakkeshopManglendeReturScanninger);
614    
615      UrlIndleveringsPakke := ReadString('Settings','UrlIndleveringsPakke','http://omdeling.info/webservices/pakkeshop/PakkekontrolIndleveringskode.php?sted=%s&pakkekode=%s');      UrlIndleveringsPakke := ReadString('Settings','UrlIndleveringsPakke','http://omdeling.info/webservices/pakkeshop/PakkekontrolIndleveringskode.php?sted=%s&pakkekode=%s');
616        UrlIndleveringsPakke := InjectURL(UrlIndleveringsPakke);
617    
618      UrlIndleveringsPakkeManglendeScanninger := ReadString('Settings', 'UrlIndleveringsPakkeManglendeScanninger','http://omdeling.info/webservices/pakkeshop/IndleveringsPakkeManglendeScanninger.php?sted=%s');      UrlIndleveringsPakkeManglendeScanninger := ReadString('Settings', 'UrlIndleveringsPakkeManglendeScanninger','http://omdeling.info/webservices/pakkeshop/IndleveringsPakkeManglendeScanninger.php?sted=%s');
619        UrlIndleveringsPakkeManglendeScanninger := InjectURL(UrlIndleveringsPakkeManglendeScanninger);
620    
621        URLOmdirigerTilPakkeshop := ReadString('Settings', 'URLOmdirigerTilPakkeshop','http://omdeling.info/webservices/pakkeshop/PakkeKontrolOmdirigerTilPakkeshop.php?sted=%s&stregkode=%s');
622        URLOmdirigerTilPakkeshop := InjectURL(URLOmdirigerTilPakkeshop);
623    
624    
625    
# Line 618  begin Line 675  begin
675    
676      if Scanningtype = 'A' then      if Scanningtype = 'A' then
677      begin      begin
678        Automatiskvalg1.Checked := true;        menuAutomatiskvalg1.Checked := true;
679        Scanningtype := '1';        Scanningtype := '1';
680        PanelValgA.Color := clGreen;        PanelValgA.Color := clGreen;
681        PanelValgA.Font.Color := clWhite;        PanelValgA.Font.Color := clWhite;
# Line 680  begin Line 737  begin
737  {$IfDef STED_BK}  {$IfDef STED_BK}
738      SpecialVersionSted := 'BK';      SpecialVersionSted := 'BK';
739  {$EndIf}  {$EndIf}
740    {$IfDef STED_TK}
741        SpecialVersionSted := 'TK';// BK-Trykkompagniet
742    {$EndIf}
743  {$IfDef STED_DBK}  {$IfDef STED_DBK}
744      SpecialVersionSted := 'DBK';      SpecialVersionSted := 'DBK';
745  {$EndIf}  {$EndIf}
# Line 690  begin Line 750  begin
750      SpecialVersionSted := 'NS';      SpecialVersionSted := 'NS';
751  {$EndIf}  {$EndIf}
752    
   
753      //SpecialVersionSted := '01';  // NS - bruges sammen med nedenstående SpecialVersionScanningtype DIREKTE)      //SpecialVersionSted := '01';  // NS - bruges sammen med nedenstående SpecialVersionScanningtype DIREKTE)
754      //SpecialVersionSted := '02';  // BK - BRUGES IKKE (brug i stedet ovenstående SpecialVersionSted BK)      //SpecialVersionSted := '02';  // BK - BRUGES IKKE (brug i stedet ovenstående SpecialVersionSted BK)
755      //SpecialVersionSted := '03';  // FD - (bruges sammen med nedenstående SpecialVersionScanningtype DIREKTE)      //SpecialVersionSted := '03';  // FD - (bruges sammen med nedenstående SpecialVersionScanningtype DIREKTE)
# Line 708  begin Line 767  begin
767    
768      if SpecialVersionSted = 'NS' then      if SpecialVersionSted = 'NS' then
769      begin      begin
770         SpecialVersionSted := '01';         //SpecialVersionSted := '01'; // Fra før NS overtog scanning løssalg
771         SpecialVersionScanningtype := '4';         //SpecialVersionScanningtype := '4';
772    
773          //FarveNormal := 'A9F5A9';  // her kan vi evt. overrule ini fil
774          Sted := SpecialVersionSted;
775         // her skal vi også disable de knapper BK ikke kan bruge
776          PanelValg2.Enabled := false;
777          PanelValg2.Font.Color := clInactiveCaption;
778          PanelValg3.Enabled := false;
779          PanelValg3.Font.Color := clInactiveCaption;
780          //PanelValg6.Enabled := false;
781          //PanelValg6.Font.Color := clInactiveCaption;
782    
783         // her skal vi også disable de menupunkter FD ikke kan bruge
784          menuNatxpressReturDAO1.Enabled := false;
785          menuNatxpressReturfraKunde1.Enabled := false;
786    
787          //Returpakkerfrapakkeshop1.Enabled := false;
788      end;      end;
789    
790      if SpecialVersionSted = 'FD' then      if SpecialVersionSted = 'FD' then
791      begin      begin
792         SpecialVersionSted := '03';         //SpecialVersionSted := '03'; //fra før at FD overtog scanning
793         SpecialVersionScanningtype := '4';         //SpecialVersionScanningtype := '4';
794    
795    
796          //FarveNormal := 'A9F5A9';  // her kan vi evt. overrule ini fil
797          Sted := SpecialVersionSted;
798         // her skal vi også disable de knapper BK ikke kan bruge
799          PanelValg2.Enabled := false;
800          PanelValg2.Font.Color := clInactiveCaption;
801          PanelValg3.Enabled := false;
802          PanelValg3.Font.Color := clInactiveCaption;
803          //PanelValg6.Enabled := false;
804          //PanelValg6.Font.Color := clInactiveCaption;
805    
806         // her skal vi også disable de menupunkter FD ikke kan bruge
807          menuNatxpressReturDAO1.Enabled := false;
808          menuNatxpressReturfraKunde1.Enabled := false;
809    
810          //Returpakkerfrapakkeshop1.Enabled := false;
811    
812      end;      end;
813    
814      if SpecialVersionSted = 'BK' then      if (SpecialVersionSted = 'BK') OR (SpecialVersionSted = 'TK') then
815      begin      begin
816        //FarveNormal := 'A9F5A9';  // her kan vi evt. overrule ini fil        //FarveNormal := 'A9F5A9';  // her kan vi evt. overrule ini fil
817        Sted := SpecialVersionSted;        Sted := SpecialVersionSted;
# Line 730  begin Line 824  begin
824        //PanelValg6.Font.Color := clInactiveCaption;        //PanelValg6.Font.Color := clInactiveCaption;
825    
826       // her skal vi også disable de menupunkter BK ikke kan bruge       // her skal vi også disable de menupunkter BK ikke kan bruge
827        ReturpakkerfraDAO1.Enabled := false;        menuNatxpressReturDAO1.Enabled := false;
828        Returpakkerfraboghandler1.Enabled := false;        menuNatxpressReturfraKunde1.Enabled := false;
829    
830        //Returpakkerfrapakkeshop1.Enabled := false;        //Returpakkerfrapakkeshop1.Enabled := false;
831    
# Line 758  begin Line 852  begin
852        PanelValg5.Font.Color := clInactiveCaption;        PanelValg5.Font.Color := clInactiveCaption;
853        PanelValg6.Enabled := false;        PanelValg6.Enabled := false;
854        PanelValg6.Font.Color := clInactiveCaption;        PanelValg6.Font.Color := clInactiveCaption;
855        PanelValg7.Enabled := false;  
       PanelValg7.Font.Color := clInactiveCaption;  
856    
857       // her skal vi også disable de menupunkter DBK ikke kan bruge       // her skal vi også disable de menupunkter DBK ikke kan bruge
858        ReturpakkerfraDAO1.Enabled := false;        menuNatxpressReturDAO1.Enabled := false;
859        Returpakkerfraboghandler1.Enabled := false;        menuNatxpressReturfraKunde1.Enabled := false;
860    
861        Pakkeshoplevering1.Enabled := false;        menuPakkeshop1.Enabled := false;
862        Returpakkerfrapakkeshop1.Enabled := false;        menuPakkeshopRetur1.Enabled := false;
863    
864        if SpecialVersionScanningtype = 'A' then        if SpecialVersionScanningtype = 'A' then
865        begin        begin
# Line 801  begin Line 894  begin
894        PanelValg7.Font.Color := clInactiveCaption;        PanelValg7.Font.Color := clInactiveCaption;
895       // her skal vi også disable de menupunkter Bladhusene (01, 02, 03 og 04) ikke kan bruge       // her skal vi også disable de menupunkter Bladhusene (01, 02, 03 og 04) ikke kan bruge
896    
897        Automatiskvalg1.Enabled := false;        menuAutomatiskvalg1.Enabled := false;
898    
899        Pakkernormal1.Enabled := false;        menuNatXpress1.Enabled := false;
900        ReturpakkerfraDAO1.Enabled := false;        menuNatxpressReturDAO1.Enabled := false;
901        Returpakkerfraboghandler1.Enabled := false;        menuNatxpressReturfraKunde1.Enabled := false;
902        Budlevering1.Enabled := false;        menuDaoDirekte1.Enabled := false;
903        Pakkeshoplevering1.Enabled := false;        menuPakkeshop1.Enabled := false;
904        Returpakkerfrapakkeshop1.Enabled := false;        menuPakkeshopRetur1.Enabled := false;
905        if SpecialVersionScanningtype = 'A' then        if SpecialVersionScanningtype = 'A' then
906        begin        begin
907          Scanningtype := '4';          Scanningtype := '4';
908          Budlevering1.Enabled := true;          menuDaoDirekte1.Enabled := true;
909          PanelValg4.Font.Color := clWindowText;          PanelValg4.Font.Color := clWindowText;
910          PanelValg4.Enabled := true;          PanelValg4.Enabled := true;
911        end        end
# Line 821  begin Line 914  begin
914          Scanningtype := SpecialVersionScanningtype;          Scanningtype := SpecialVersionScanningtype;
915          PanelValgA.Enabled := false;          PanelValgA.Enabled := false;
916          PanelValgA.Font.Color := clInactiveCaption;          PanelValgA.Font.Color := clInactiveCaption;
917          AutomatiskValg1.Checked := false;          menuAutomatiskvalg1.Checked := false;
918          PanelValgA.Color := clBtnFace;          PanelValgA.Color := clBtnFace;
919          if Scanningtype = '1' then          if Scanningtype = '1' then
920          begin          begin
921            Pakkernormal1.Enabled := true;            menuNatXpress1.Enabled := true;
922            PanelValg1.Enabled := true;            PanelValg1.Enabled := true;
923            PanelValg1.Font.Color := clWindowText;            PanelValg1.Font.Color := clWindowText;
924          end;          end;
925          if Scanningtype = '2' then          if Scanningtype = '2' then
926          begin          begin
927            ReturpakkerfraDAO1.Enabled := true;            menuNatxpressReturDAO1.Enabled := true;
928            PanelValg2.Enabled := true;            PanelValg2.Enabled := true;
929            PanelValg2.Font.Color := clWindowText;            PanelValg2.Font.Color := clWindowText;
930          end;          end;
931          if Scanningtype = '3' then          if Scanningtype = '3' then
932          begin          begin
933            Returpakkerfraboghandler1.Enabled := true;            menuNatxpressReturfraKunde1.Enabled := true;
934            PanelValg3.Enabled := true;            PanelValg3.Enabled := true;
935            PanelValg3.Font.Color := clWindowText;            PanelValg3.Font.Color := clWindowText;
936          end;          end;
937          if Scanningtype = '4' then          if Scanningtype = '4' then
938          begin          begin
939            Budlevering1.Enabled := true;            menuDaoDirekte1.Enabled := true;
940            PanelValg4.Enabled := true;            PanelValg4.Enabled := true;
941            PanelValg4.Font.Color := clWindowText;            PanelValg4.Font.Color := clWindowText;
942          end;          end;
943          if Scanningtype = '5' then          if Scanningtype = '5' then
944          begin          begin
945            Pakkeshoplevering1.Enabled := true;            menuPakkeshop1.Enabled := true;
946            PanelValg5.Enabled := true;            PanelValg5.Enabled := true;
947            PanelValg5.Font.Color := clWindowText;            PanelValg5.Font.Color := clWindowText;
948          end;          end;
949          if Scanningtype = '6' then          if Scanningtype = '6' then
950          begin          begin
951            Returpakkerfrapakkeshop1.Enabled := true;            menuPakkeshopRetur1.Enabled := true;
952            PanelValg6.Enabled := true;            PanelValg6.Enabled := true;
953            PanelValg6.Font.Color := clWindowText;            PanelValg6.Font.Color := clWindowText;
954          end;          end;
# Line 1001  begin Line 1094  begin
1094      // UBD skal p.t. ikke have adgang til flg. funktioner      // UBD skal p.t. ikke have adgang til flg. funktioner
1095      if ( (Sted = '1') or (Sted = '2') or (Sted = '3') or (Sted = '4') ) then      if ( (Sted = '1') or (Sted = '2') or (Sted = '3') or (Sted = '4') ) then
1096      begin      begin
1097        ReturpakkerfraDAO1.Visible := false;        menuNatxpressReturDAO1.Visible := false;
1098        Returpakkerfraboghandler1.Visible := false;        menuNatxpressReturfraKunde1.Visible := false;
1099        Budlevering1.Visible := false;        menuDaoDirekte1.Visible := false;
1100        Storepakker1.Visible := false;        Storepakker1.Visible := false;
1101        Smpakker1.Visible := false;        Smpakker1.Visible := false;
1102        Testprinter1.Visible := false;        Testprinter1.Visible := false;
1103        Pakkeshoplevering1.Visible := false;        menuPakkeshop1.Visible := false;
1104        Returpakkerfrapakkeshop1.Visible := false;        menuPakkeshopRetur1.Visible := false;
1105      end;      end;
1106    
1107      if (BladhusSted > 00) and (BladhusSted < Length(BladhusStedNavn)) then      if (BladhusSted > 00) and (BladhusSted < Length(BladhusStedNavn)) then
# Line 1116  begin Line 1209  begin
1209      or (NumberString = 'Retur fra kunde')      or (NumberString = 'Retur fra kunde')
1210      or (NumberString = 'DAO DIREKTE')      or (NumberString = 'DAO DIREKTE')
1211      or (NumberString = 'DAO PAKKESHOP')      or (NumberString = 'DAO PAKKESHOP')
1212        or (NumberString = 'DAO PAKKESHOP')
1213        or (LowerCase(NumberString) = 'for stor hjemmelevering' )
1214            or (LowerCase(NumberString) = 'for stor daodirekte' )
1215      or (NumberString = 'Retur fra pakkeshop') then      or (NumberString = 'Retur fra pakkeshop') then
1216    
1217      begin      begin
# Line 1126  begin Line 1222  begin
1222      begin      begin
1223        ShowMessage('Indsæt et gyldigt pakkenummer - uden linieskift');        ShowMessage('Indsæt et gyldigt pakkenummer - uden linieskift');
1224      end;      end;
1225    end;    end;  // Slut ctrl-v
1226    
1227    if Key = #13 then     // Enter    if Key = #13 then     // Enter
1228    begin    begin
1229      if (Length(Trim(Stregkode)) = 0) then  
1230        // Sikre at den er trimmet inden vi går videre - DBK kan finde på at encode et space i enden af deres barcodes
1231        Stregkode := Trim(Stregkode);
1232    
1233        if (Length(Stregkode) = 0) then
1234      begin      begin
1235        VisAlarmSkaerm( 'Der skal scannes en stregkode...' );        VisAlarmSkaerm( 'Der skal scannes en stregkode...' );
1236    
# Line 1180  begin Line 1280  begin
1280         exit;         exit;
1281      end;      end;
1282    
1283        if (LowerCase(StregKode) = 'for stor hjemmelevering') OR (LowerCase(StregKode) = 'for stor daodirekte') then
1284        begin
1285          if chkForstorTilDirekte.Enabled then
1286          begin
1287            chkForstorTilDirekte.Checked := true;
1288          end
1289          else
1290          begin
1291             VisAlarmSkaerm( Stregkode + ' kan ikke vælges på denne scannings tilstand' );
1292          end;
1293          Stregkode := '';
1294          StregkodeST.Caption := StregKode;
1295          exit;
1296        end;
1297    
1298    
1299      if StregKode = 'Indtast kundenummer' then      if StregKode = 'Indtast kundenummer' then
1300      begin      begin
1301         if chkSporgEfterKunde.Enabled = true then         if chkSporgEfterKunde.Enabled = true then
# Line 1377  begin Line 1493  begin
1493        Pakkescanningtype := Scanningtype;        Pakkescanningtype := Scanningtype;
1494      end;      end;
1495    
1496      if (   (Pakkescanningtype = '1') and (PanelValg1.Enabled = false)      if (   ( (Pakkescanningtype = '1') and (PanelValg1.Enabled = false) )
1497          or (Pakkescanningtype = '2') and (PanelValg2.Enabled = false)          or ( (Pakkescanningtype = '2') and (PanelValg2.Enabled = false) )
1498          or (Pakkescanningtype = '3') and (PanelValg3.Enabled = false)          or ( (Pakkescanningtype = '3') and (PanelValg3.Enabled = false) )
1499          or (Pakkescanningtype = '4') and (PanelValg4.Enabled = false)          or ( (Pakkescanningtype = '4') and (PanelValg4.Enabled = false) )
1500          or (Pakkescanningtype = '5') and (PanelValg5.Enabled = false)          or ( (Pakkescanningtype = '5') and (PanelValg5.Enabled = false) )
1501          or (Pakkescanningtype = '6') and (PanelValg6.Enabled = false)  ) then          or ( (Pakkescanningtype = '6') and (PanelValg6.Enabled = false) ) ) then
1502      begin   // Her skal komme en alarm og rød skærm      begin   // Her skal komme en alarm og rød skærm
1503          VisAlarmSkaerm( Stregkode + ' kan ikke vælges på dette scanningsted' );          VisAlarmSkaerm( Stregkode + ' kan ikke vælges på dette scanningsted' );
1504    
1505         exit;         exit;
1506      end;      end;
1507    
1508      if Automatiskvalg1.Checked and (Length(Stregkode) > 8) then      if (menuAutomatiskvalg1.Checked and (Length(Stregkode) > 8) ) then
1509      begin      begin
1510        GemStregkode := Stregkode;        GemStregkode := Stregkode;
1511        if Pakketype = 'NatXpress' then        if Pakketype = 'NatXpress' then
# Line 1418  begin Line 1534  begin
1534                InitPakkeshoplevering();                InitPakkeshoplevering();
1535              end;              end;
1536            end            end
1537        // Retur kan ikke scannes med 'Automatisk valg'       else if Pakketype = 'PakkeshopRetur' then
1538              begin
1539                if Scanningtype <> '6' then
1540                begin
1541                 VisAlarmSkaerm( Stregkode + ' Pakkeshop retur,'#13#10' kan ikke bruges med automatisk valg' );
1542    
1543                 exit;
1544                end;
1545              end
1546    
1547    
1548        else        else
1549            begin            begin
1550            // Her skal komme en alarm og rød skærm            // Her skal komme en alarm og rød skærm
1551              VisAlarmSkaerm( Stregkode + ' kan ikke vælges på dette scanningsted' );              //VisAlarmSkaerm( Stregkode + ' kan ikke vælges på dette scanningsted' );
1552                 VisAlarmSkaerm( Stregkode + ' kan ikke bruges med automatisk valg' );
1553    
1554               exit;               exit;
1555            end;            end;
1556        Stregkode := GemStregkode;        Stregkode := GemStregkode;
1557      end      end
1558      else if Automatiskvalg1.Checked and (PakkeshopText1.Caption = 'Stregkode') then      else if menuAutomatiskvalg1.Checked and (PakkeshopText1.Caption = 'Stregkode') then
1559      begin      begin
1560        VisAlarmSkaerm( 'Pakkenummer ikke gyldigt (for kort)' );        VisAlarmSkaerm( 'Pakkenummer ikke gyldigt (for kort)' );
1561    
1562        exit;        exit;
1563      end;      end;
1564    
1565      if not Automatiskvalg1.Checked then      if not menuAutomatiskvalg1.Checked then
1566      begin      begin
1567        if ( (Pakkescanningtype <> Scanningtype) and (Scanningtype <> '2') and (Scanningtype <> '3') ) then        if ( (Pakkescanningtype <> Scanningtype) and (Scanningtype <> '2') and (Scanningtype <> '3') ) then
1568        begin        begin
# Line 1462  begin Line 1588  begin
1588        end;        end;
1589      end;      end;
1590    
1591      if Pakkernormal1.Checked and not Scanogstjekkoden1.Checked then      if menuNatXpress1.Checked and not Scanogstjekkoden1.Checked then
1592        begin        begin
1593          // Når vi ikke kræver tjekkode er alt ok her          // Når vi ikke kræver tjekkode er alt ok her
1594             BoghandlerStregkode := Stregkode;             BoghandlerStregkode := Stregkode;
# Line 1472  begin Line 1598  begin
1598             Stregkode := '';             Stregkode := '';
1599             InitScreen();             InitScreen();
1600        end        end
1601      else if (PakkeshopLevering1.Checked or Pakkernormal1.Checked) and not Scanogstjekkoden1.Checked then      else if (menuPakkeshop1.Checked or menuNatXpress1.Checked) and not Scanogstjekkoden1.Checked then
1602        begin        begin
1603          // Når vi ikke kræver tjekkode er alt ok her          // Når vi ikke kræver tjekkode er alt ok her
1604             PakkeshopStregkode := Stregkode;             PakkeshopStregkode := Stregkode;
# Line 1484  begin Line 1610  begin
1610             Stregkode := '';             Stregkode := '';
1611             InitScreen();             InitScreen();
1612        end        end
1613      else if PakkeshopLevering1.Checked or Pakkernormal1.Checked then      else if menuPakkeshop1.Checked or menuNatXpress1.Checked then
1614        if PakkeshopText1.Caption = 'Stregkode' then        if PakkeshopText1.Caption = 'Stregkode' then
1615         begin         begin
1616            if length(Stregkode) > 5 then            if length(Stregkode) > 5 then
# Line 1510  begin Line 1636  begin
1636             PakkeshopTjekkode := Stregkode;             PakkeshopTjekkode := Stregkode;
1637             BoghandlerTjekkode := Stregkode;             BoghandlerTjekkode := Stregkode;
1638             PakkeshopText1.Caption := 'Stregkode';             PakkeshopText1.Caption := 'Stregkode';
1639             if (PakkeshopLevering1.Checked) then             if (menuPakkeshop1.Checked) then
1640                MainForm.Color := TUtils.HexToTColor(FarvePakkeshoplevering);                MainForm.Color := TUtils.HexToTColor(FarvePakkeshoplevering);
1641             if (Pakkernormal1.Checked) then             if (menuNatXpress1.Checked) then
1642                MainForm.Color := TUtils.HexToTColor(FarveNormal);                MainForm.Color := TUtils.HexToTColor(FarveNormal);
1643             btnNulstil.Visible := false;             btnNulstil.Visible := false;
1644           end           end
1645          else          else
1646           begin           begin
1647                if (PakkeshopLevering1.Checked) then                if (menuPakkeshop1.Checked) then
1648                  VisAlarmSkaerm('Du skal scanne en tjekkode til stregkode ' + PakkeshopStregkode);                  VisAlarmSkaerm('Du skal scanne en tjekkode til stregkode ' + PakkeshopStregkode);
1649                if (Pakkernormal1.Checked) then                if (menuNatXpress1.Checked) then
1650                  VisAlarmSkaerm('Du skal scanne en tjekkode til stregkode ' + BoghandlerStregkode);                  VisAlarmSkaerm('Du skal scanne en tjekkode til stregkode ' + BoghandlerStregkode);
1651                                    
1652                StregKode := '';                StregKode := '';
# Line 1532  begin Line 1658  begin
1658          InitScreen();          InitScreen();
1659       end;       end;
1660    
1661      if not PakkeshopLevering1.Checked and not Pakkernormal1.Checked or (PakkeshopLevering1.Checked and (PakkeshopStregkode <> '') and (PakkeshopTjekkode <> '')) or (Pakkernormal1.Checked and (Scanogstjekkoden1.Checked and (BoghandlerStregkode <> '') and (BoghandlerTjekkode <> '') or not Scanogstjekkoden1.Checked)) then      if not menuPakkeshop1.Checked and not menuNatXpress1.Checked or (menuPakkeshop1.Checked and (PakkeshopStregkode <> '') and (PakkeshopTjekkode <> '')) or (menuNatXpress1.Checked and (Scanogstjekkoden1.Checked and (BoghandlerStregkode <> '') and (BoghandlerTjekkode <> '') or not Scanogstjekkoden1.Checked)) then
1662      begin      begin
1663    
1664         if PakkeshopLevering1.Checked and (PakkeshopStregkode <> '') and (PakkeshopTjekkode <> '') then         if menuPakkeshop1.Checked and (PakkeshopStregkode <> '') and (PakkeshopTjekkode <> '') then
1665            StregKode := PakkeshopStregkode;            StregKode := PakkeshopStregkode;
1666         if Pakkernormal1.Checked and ((BoghandlerStregkode <> '') and (BoghandlerTjekkode <> '') or not Scanogstjekkoden1.Checked) then         if menuNatXpress1.Checked and ((BoghandlerStregkode <> '') and (BoghandlerTjekkode <> '') or not Scanogstjekkoden1.Checked) then
1667            StregKode := BoghandlerStregkode;            StregKode := BoghandlerStregkode;
1668         StregkodeST.Caption := StregKode;         StregkodeST.Caption := StregKode;
1669         try         try
# Line 1551  begin Line 1677  begin
1677    
1678              exit;              exit;
1679            end;            end;
1680            if (Pakkernormal1.Checked or Budlevering1.Checked or PakkeshopLevering1.Checked) then            if (menuNatXpress1.Checked or menuDaoDirekte1.Checked or menuPakkeshop1.Checked) then
1681            begin            begin
1682              PrintLabel(RuteNummer, Kommentar, BoghandlerNavn, Koreliste, SmsKode, DBKbane, Leveringssted, PrintNyLabel);              PrintLabel(RuteNummer, Kommentar, BoghandlerNavn, Koreliste, SmsKode, DBKbane, Leveringssted, PrintNyLabel);
1683              pakkeErScannet := pos('PAKKEN ER SCANNET', BoghandlerNavn);              pakkeErScannet := pos('PAKKEN ER SCANNET', BoghandlerNavn);
# Line 1572  begin Line 1698  begin
1698                MainForm.Color := clRed;                MainForm.Color := clRed;
1699              end;              end;
1700           end;           end;
1701            if ( Pakkernormal1.Checked and (pakkeErScannet = 0) and (pakkeForkertSted = 0) and (tjekkodemangler = 0) and (RuteNummerST.Caption <> 'Ukendt') ) or (Copy(Kommentar,1,2) = 'Ok') then            if ( menuNatXpress1.Checked and (pakkeErScannet = 0) and (pakkeForkertSted = 0) and (tjekkodemangler = 0) and (RuteNummerST.Caption <> 'Ukendt') ) or (Copy(Kommentar,1,2) = 'Ok') then
1702            begin            begin
1703              MainForm.Color := TUtils.HexToTColor(Farve);              MainForm.Color := TUtils.HexToTColor(Farve);
1704              if Storepakker1.Checked then              if Storepakker1.Checked then
# Line 1585  begin Line 1711  begin
1711              end;              end;
1712              btnNulstil.Visible := false;              btnNulstil.Visible := false;
1713            end            end
1714            else if (Returpakkerfradao1.Checked or Returpakkerfraboghandler1.Checked) then            else if (menuNatxpressReturDAO1.Checked or menuNatxpressReturfraKunde1.Checked) then
1715            begin            begin
1716              MainForm.Color := TUtils.HexToTColor(Farve);              MainForm.Color := TUtils.HexToTColor(Farve);
1717              if Storepakker1.Checked then              if Storepakker1.Checked then
# Line 1613  begin Line 1739  begin
1739           if not btnNulstil.Visible then           if not btnNulstil.Visible then
1740            begin            begin
1741    
1742              If (Budlevering1.Checked) then              If (menuDaoDirekte1.Checked) then
1743              begin              begin
1744                if Storepakker1.Checked then                if Storepakker1.Checked then
1745                begin                begin
# Line 1659  begin Line 1785  begin
1785    
1786    Key := #0;    Key := #0;
1787    
1788    
1789    
1790    
1791    
1792    
1793  end; //End of OnKeyPress  end; //End of OnKeyPress
1794    
1795    
1796    
1797  procedure TMainForm.SendInfoTilServer(Sted, Scanningtype, Infotype, Info : String);  procedure TMainForm.SendInfoTilServer(Sted, Scanningtype, Infotype, Info : String);
1798  const  const
1799    crlf = Chr(13) + Chr(10) ;  // Carriage return & Linefeed    crlf = Chr(13) + Chr(10) ;  // Carriage return & Linefeed
# Line 1702  var Line 1835  var
1835    
1836    
1837  begin  begin
1838      if Budlevering1.Checked or Pakkeshoplevering1.Checked or Returpakkerfrapakkeshop1.Checked or Pakkernormal1.Checked or menuIndlevering.Checked then      if menuDaoDirekte1.Checked or menuPakkeshop1.Checked or menuPakkeshopRetur1.Checked or menuNatXpress1.Checked or menuIndlevering.Checked then
1839      begin      begin
1840        for i := ListBox2.items.count-1 downto 0 do        for i := ListBox2.items.count-1 downto 0 do
1841          if pos(StregKode,ListBox2.items[i]) <> 0 then          if pos(StregKode,ListBox2.items[i]) <> 0 then
# Line 1851  procedure TMainForm.InitBladhus(); Line 1984  procedure TMainForm.InitBladhus();
1984    
1985  begin  begin
1986    Altidprintepakkelabel1.Enabled := false;    Altidprintepakkelabel1.Enabled := false;
1987    Pakkernormal1.Visible := false;    menuNatXpress1.Visible := false;
1988    ReturpakkerfraDAO1.Visible := false;    menuNatxpressReturDAO1.Visible := false;
1989    Returpakkerfraboghandler1.Visible := false;    menuNatxpressReturfraKunde1.Visible := false;
1990    Sprgefterboghandlernummer1.Enabled := false;    Sprgefterboghandlernummer1.Enabled := false;
1991    ListBox1.Visible := true;    ListBox1.Visible := true;
1992  //  TestFunktionen := '1';  //  TestFunktionen := '1';
1993    
1994    if Budlevering1.Checked then    if menuDaoDirekte1.Checked then
1995    begin    begin
1996      IndlesScanningLogFil();      IndlesScanningLogFil();
1997    end;    end;
# Line 1954  begin Line 2087  begin
2087    end;    end;
2088    
2089    
2090    if Pakkernormal1.Checked then    if menuNatXpress1.Checked then
2091    begin    begin
2092       if (BoghandlerTjekkode = '') then       if (BoghandlerTjekkode = '') then
2093       begin       begin
# Line 1962  begin Line 2095  begin
2095       end;       end;
2096       URLStr := Format(UrlNormal,[Sted, PakkeNr, BoghandlerNummer, BoghandlerTjekkode]);       URLStr := Format(UrlNormal,[Sted, PakkeNr, BoghandlerNummer, BoghandlerTjekkode]);
2097    end    end
2098    else if ReturpakkerfraDAO1.Checked then    else if menuNatxpressReturDAO1.Checked then
2099    begin    begin
2100       URLStr := Format(UrlReturDAO,[Sted, PakkeNr, BoghandlerNummer, 'DAO', pakkestorrelse]);       URLStr := Format(UrlReturDAO,[Sted, PakkeNr, BoghandlerNummer, 'DAO', pakkestorrelse]);
2101    end    end
2102    else if Returpakkerfraboghandler1.Checked then    else if menuNatxpressReturfraKunde1.Checked then
2103    begin    begin
2104       URLStr := Format(UrlReturBoghandler,[Sted, PakkeNr, BoghandlerNummer, 'Boghandler', pakkestorrelse]);       URLStr := Format(UrlReturBoghandler,[Sted, PakkeNr, BoghandlerNummer, 'Boghandler', pakkestorrelse]);
2105    end    end
2106    else if Budlevering1.Checked then    else if menuDaoDirekte1.Checked then
2107    begin    begin
2108       URLStr := Format(UrlBudlevering,[Sted, PakkeNr, 'bud', pakkestorrelse]);       URLStr := Format(UrlBudlevering,[Sted, PakkeNr, 'bud', pakkestorrelse]);
2109    end    end
2110    else if Pakkeshoplevering1.Checked then    else if menuPakkeshop1.Checked then
2111    begin    begin
2112       URLStr := Format(UrlPakkeshoplevering,[Sted, PakkeNr, PakkeshopTjekkode]);       URLStr := Format(UrlPakkeshoplevering,[Sted, PakkeNr, PakkeshopTjekkode]);
2113    end    end
2114    else if Returpakkerfrapakkeshop1.Checked then    else if menuPakkeshopRetur1.Checked then
2115    begin    begin
2116       URLStr := Format(UrlReturPakkeshop,[Sted, PakkeNr]);       URLStr := Format(UrlReturPakkeshop,[Sted, PakkeNr]);
2117    end    end
# Line 1990  begin Line 2123  begin
2123    begin    begin
2124      exit;      exit;
2125    end;    end;
2126    
2127      if chkForstorTilDirekte.Checked then  // Denne skal være efter if/else kæden da den overrider de øvrige URL'er
2128      begin
2129        URLStr := Format(URLOmdirigerTilPakkeshop,[Sted, PakkeNr]);
2130      end;
2131    
2132    try    try
2133      //raise EIdConnClosedGracefully.Create('test');   // KUN TIL TEST      //raise EIdConnClosedGracefully.Create('test');   // KUN TIL TEST
2134      WebSvar := IdHTTP1.Get(URLStr);      WebSvar := IdHTTP1.Get(URLStr);
# Line 2011  begin Line 2150  begin
2150          end;          end;
2151      end;      end;
2152    end;    end;
2153    
2154    XMLDocument1.LoadFromXML(WebSvar);    XMLDocument1.LoadFromXML(WebSvar);
2155    try    try
2156      if Pakkeshoplevering1.Checked or Returpakkerfrapakkeshop1.Checked then      if menuPakkeshop1.Checked or menuPakkeshopRetur1.Checked then
2157       begin       begin
2158        RuteNummer := XMLDocument1.ChildNodes.FindNode('PakkeKontrol').ChildNodes.FindNode('PakkeshopTurid').Text;        RuteNummer := XMLDocument1.ChildNodes.FindNode('PakkeKontrol').ChildNodes.FindNode('PakkeshopTurid').Text;
2159        Kommentar := XMLDocument1.ChildNodes.FindNode('PakkeKontrol').ChildNodes.FindNode('Stregkodematch').Text;        Kommentar := XMLDocument1.ChildNodes.FindNode('PakkeKontrol').ChildNodes.FindNode('Stregkodematch').Text;
# Line 2021  begin Line 2161  begin
2161        BoghandlerNavn := BoghandlerNavn + ' ' + XMLDocument1.ChildNodes.FindNode('PakkeKontrol').ChildNodes.FindNode('PakkeshopNavn').Text;        BoghandlerNavn := BoghandlerNavn + ' ' + XMLDocument1.ChildNodes.FindNode('PakkeKontrol').ChildNodes.FindNode('PakkeshopNavn').Text;
2162        PrintNyLabel := False;        PrintNyLabel := False;
2163    
2164        if Pakkeshoplevering1.Checked then        if menuPakkeshop1.Checked then
2165        begin        begin
2166          try          try
2167            PrintNyLabelInteger := StrToInt(XMLDocument1.ChildNodes.FindNode('PakkeKontrol').ChildNodes.FindNode('PakkeshopPrintPakkeLabel').Text);            PrintNyLabelInteger := StrToInt(XMLDocument1.ChildNodes.FindNode('PakkeKontrol').ChildNodes.FindNode('PakkeshopPrintPakkeLabel').Text);
# Line 2034  begin Line 2174  begin
2174          end;          end;
2175        end;        end;
2176       end       end
2177      else if menuIndlevering.Checked then      else if menuIndlevering.Checked or chkForstorTilDirekte.Checked then
2178      begin      begin
2179    
2180    
# Line 2049  begin Line 2189  begin
2189         Stregkode := PakkeshopLabel.Stregkode;         Stregkode := PakkeshopLabel.Stregkode;
2190    
2191         LabelPrint.PrintPakkeshopLabel( PakkeshopLabel );         LabelPrint.PrintPakkeshopLabel( PakkeshopLabel );
2192           chkForstorTilDirekte.Checked := false;
2193    
2194       end;       end;
2195    
# Line 2061  begin Line 2202  begin
2202        Kommentar := XMLDocument1.ChildNodes.FindNode('BogpakkeKontrol').ChildNodes.FindNode('Kommentar').Text;        Kommentar := XMLDocument1.ChildNodes.FindNode('BogpakkeKontrol').ChildNodes.FindNode('Kommentar').Text;
2203        BoghandlerNavn := XMLDocument1.ChildNodes.FindNode('BogpakkeKontrol').ChildNodes.FindNode('BoghandlerNavn').Text;        BoghandlerNavn := XMLDocument1.ChildNodes.FindNode('BogpakkeKontrol').ChildNodes.FindNode('BoghandlerNavn').Text;
2204        Leveringssted := XMLDocument1.ChildNodes.FindNode('BogpakkeKontrol').ChildNodes.FindNode('Leveringssted').Text;        Leveringssted := XMLDocument1.ChildNodes.FindNode('BogpakkeKontrol').ChildNodes.FindNode('Leveringssted').Text;
2205        if Budlevering1.Checked then        if menuDaoDirekte1.Checked then
2206          begin          begin
2207          try          try
2208            SmsKode := XMLDocument1.ChildNodes.FindNode('BogpakkeKontrol').ChildNodes.FindNode('SmsKode').Text;            SmsKode := XMLDocument1.ChildNodes.FindNode('BogpakkeKontrol').ChildNodes.FindNode('SmsKode').Text;
# Line 2096  begin Line 2237  begin
2237            PrintNyLabel := False;            PrintNyLabel := False;
2238        end;        end;
2239      end      end
2240      else if (Budlevering1.Checked) and (Leveringssted <> Sted) then      else if (menuDaoDirekte1.Checked) and (Leveringssted <> Sted) then
2241      begin      begin
2242         if (Leveringssted = 'E') and (Sted = 'DBK') then         if (Leveringssted = 'E') and (Sted = 'DBK') then
2243         begin         begin
# Line 2125  begin Line 2266  begin
2266    //Label1.Caption := Kommentar;   // bruges hvis der skal vises linieskift - det kan man ikke i en staticText    //Label1.Caption := Kommentar;   // bruges hvis der skal vises linieskift - det kan man ikke i en staticText
2267    BoghandlerNavnST.Caption := StringReplace(BoghandlerNavn, ' & ', ' && ', [rfReplaceAll, rfIgnoreCase]);    BoghandlerNavnST.Caption := StringReplace(BoghandlerNavn, ' & ', ' && ', [rfReplaceAll, rfIgnoreCase]);
2268    List1msg := TimeToStr(now) + '; ';    List1msg := TimeToStr(now) + '; ';
2269    if Pakkeshoplevering1.Checked then    if menuPakkeshop1.Checked then
2270      List1msg := List1msg + PakkeshopStregkode + ' ' + PakkeshopTjekkode + '; ' + KommentarST.Caption + '; ';      List1msg := List1msg + PakkeshopStregkode + ' ' + PakkeshopTjekkode + '; ' + KommentarST.Caption + '; ';
2271    List1Pakkestorrelse := '';    List1Pakkestorrelse := '';
2272    if radioStorPakke.Checked then    if radioStorPakke.Checked then
# Line 2137  begin Line 2278  begin
2278      List1Pakkestorrelse := 'Lille pakke';      List1Pakkestorrelse := 'Lille pakke';
2279    end;    end;
2280    List1msg := List1msg + BoghandlerNavn + '; ';    List1msg := List1msg + BoghandlerNavn + '; ';
2281    if ReturpakkerfraDAO1.Checked then    if menuNatxpressReturDAO1.Checked then
2282    begin    begin
2283      List1msg := List1msg + RightStr(Kommentar, Length(Kommentar)-8);      List1msg := List1msg + RightStr(Kommentar, Length(Kommentar)-8);
2284    end;    end;
2285    if Returpakkerfraboghandler1.Checked then    if menuNatxpressReturfraKunde1.Checked then
2286    begin    begin
2287      List1msg := List1msg + RightStr(Kommentar, Length(Kommentar)-16);      List1msg := List1msg + RightStr(Kommentar, Length(Kommentar)-16);
2288    end;    end;
2289    if ReturpakkerfraDAO1.Checked or Returpakkerfraboghandler1.Checked then    if menuNatxpressReturDAO1.Checked or menuNatxpressReturfraKunde1.Checked then
2290       List1msg := List1msg + '; ' + List1Pakkestorrelse;       List1msg := List1msg + '; ' + List1Pakkestorrelse;
2291    if length(BoghNr) > 0 then    if length(BoghNr) > 0 then
2292    begin    begin
2293      List1Msg := List1Msg + '; Indtastet ' + BoghNr;      List1Msg := List1Msg + '; Indtastet ' + BoghNr;
2294    end;    end;
2295    if Budlevering1.Checked then    if menuDaoDirekte1.Checked then
2296    begin    begin
2297       List1msg := TimeToStr(now) + '; ' + Kommentar + '; ' + BoghandlerNavn;       List1msg := TimeToStr(now) + '; ' + Kommentar + '; ' + BoghandlerNavn;
2298        if (radioStorPakke.Checked) then        if (radioStorPakke.Checked) then
# Line 2163  begin Line 2304  begin
2304          List1msg := List1msg + '; Lille pakke';          List1msg := List1msg + '; Lille pakke';
2305        end;        end;
2306    end;    end;
2307    if Returpakkerfrapakkeshop1.Checked then    if menuPakkeshopRetur1.Checked then
2308    begin    begin
2309      List1msg := List1msg + Stregkode + ' ' + RightStr(Kommentar, Length(Kommentar)-6);      List1msg := List1msg + Stregkode + ' ' + RightStr(Kommentar, Length(Kommentar)-6);
2310    end;    end;
2311    if Pakkernormal1.Checked then    if menuNatXpress1.Checked then
2312    begin    begin
2313      if (Kommentar = '***** Kommentar *****')                       // fra test printer funktionen      if (Kommentar = '***** Kommentar *****')                       // fra test printer funktionen
2314      or (BoghandlerNavn = 'Forbindelse ok')                         // fra test forbindelse funktionen      or (BoghandlerNavn = 'Forbindelse ok')                         // fra test forbindelse funktionen
# Line 2207  pakkeForkertSted : Integer; Line 2348  pakkeForkertSted : Integer;
2348    kontrolKoreliste : string;    kontrolKoreliste : string;
2349    nytRuteNummer, nyFarve : String;    nytRuteNummer, nyFarve : String;
2350  begin  begin
2351    if Budlevering1.Checked then    if menuDaoDirekte1.Checked then
2352       RuteNummerST.Color := TUtils.HexToTColor(Farve);       RuteNummerST.Color := TUtils.HexToTColor(Farve);
2353    
2354    pakkeErScannet := pos('PAKKEN ER SCANNET', BoghandlerNavn);    pakkeErScannet := pos('PAKKEN ER SCANNET', BoghandlerNavn);
# Line 2245  begin Line 2386  begin
2386        end;        end;
2387    end    end
2388    else    else
2389    if Budlevering1.Checked then    if menuDaoDirekte1.Checked then
2390    begin    begin
2391       if (BoghandlerNavn = 'Ukendt pakke') then       if (BoghandlerNavn = 'Ukendt pakke') then
2392       begin       begin
# Line 2314  begin Line 2455  begin
2455    
2456    end;    end;
2457    
2458    if Budlevering1.Checked then    if menuDaoDirekte1.Checked then
2459    begin    begin
2460      case BladhusSted of      case BladhusSted of
2461        00 :  begin;        00 :  begin;
# Line 2363  begin Line 2504  begin
2504    end;    end;
2505    
2506  // Hvis det er normal bogpakke modtagelse til UBD skal vi p.t. ikke printe - men stopper her  // Hvis det er normal bogpakke modtagelse til UBD skal vi p.t. ikke printe - men stopper her
2507    if Pakkernormal1.Checked and ( (Sted = '1') or (Sted = '2') or (Sted = '3') or (Sted = '4') ) then    if menuNatXpress1.Checked and ( (Sted = '1') or (Sted = '2') or (Sted = '3') or (Sted = '4') ) then
2508    begin    begin
2509      exit;      exit;
2510    end;    end;
2511    
2512    if Budlevering1.Checked or ( Sprgefterboghandlernummer1.Enabled and chkSporgEfterKunde.Checked and ( (RuteNummer = 'Ukendt') or (RuteNummer = 'Ukendt tur') or (RuteNummer = 'Retur ukendt') or (pakkeErScannet > 0) ) and (printNyLabel = false) ) then    if menuDaoDirekte1.Checked or ( Sprgefterboghandlernummer1.Enabled and chkSporgEfterKunde.Checked and ( (RuteNummer = 'Ukendt') or (RuteNummer = 'Ukendt tur') or (RuteNummer = 'Retur ukendt') or (pakkeErScannet > 0) ) and (printNyLabel = false) ) then
2513    begin    begin
2514    end    end
2515    else    else
# Line 2451  begin Line 2592  begin
2592    end;    end;
2593  end;  end;
2594    
2595  procedure TMainForm.Pakkeshoplevering1Click(Sender: TObject);  procedure TMainForm.menuPakkeshop1Click(Sender: TObject);
2596  begin  begin
2597        Scanningtype := '5';        Scanningtype := '5';
2598        InitPakkeshoplevering();        InitPakkeshoplevering();
# Line 2460  end; Line 2601  end;
2601    
2602  procedure TMainForm.NulstilAutomatiskValg();  procedure TMainForm.NulstilAutomatiskValg();
2603  begin  begin
2604      Automatiskvalg1.Checked := false;      menuAutomatiskvalg1.Checked := false;
2605      PanelValgA.Color := clBtnFace;      PanelValgA.Color := clBtnFace;
2606      PanelValgA.Font.Color := clWindowText;      PanelValgA.Font.Color := clWindowText;
2607    
# Line 2472  begin Line 2613  begin
2613        // her skal vi også disable knappen for 01, 02, 03 og 04 (NS, BK, FD og DBK)        // her skal vi også disable knappen for 01, 02, 03 og 04 (NS, BK, FD og DBK)
2614        PanelValgA.Enabled := false;        PanelValgA.Enabled := false;
2615        PanelValgA.Font.Color := clInactiveCaption;        PanelValgA.Font.Color := clInactiveCaption;
2616        Automatiskvalg1.Enabled := false;        menuAutomatiskvalg1.Enabled := false;
2617      end;      end;
2618  // 20150317: slut  // 20150317: slut
2619  end;  end;
# Line 2705  begin Line 2846  begin
2846    begin    begin
2847       MainForm.Color := TUtils.HexToTColor(Farve);       MainForm.Color := TUtils.HexToTColor(Farve);
2848    end;    end;
2849    if (Budlevering1.Checked) then    if (menuDaoDirekte1.Checked) then
2850    begin    begin
2851       InitLillePakke();       InitLillePakke();
2852    end;    end;
# Line 2769  procedure TMainForm.PanelValgAClick(Send Line 2910  procedure TMainForm.PanelValgAClick(Send
2910  begin  begin
2911  // Skal ikke toggle men bare sætte funktionen on  // Skal ikke toggle men bare sætte funktionen on
2912  // Fravælges ved at vælge en scanningstype  // Fravælges ved at vælge en scanningstype
2913    AutomatiskValg1.Checked := true;    menuAutomatiskvalg1.Checked := true;
2914    PanelValgA.Color := clGreen;    PanelValgA.Color := clGreen;
2915    PanelValgA.Font.Color := clWhite;    PanelValgA.Font.Color := clWhite;
2916    
# Line 2777  begin Line 2918  begin
2918    
2919  end;  end;
2920    
2921  procedure TMainForm.Pakkernormal1Click(Sender: TObject);  procedure TMainForm.menuNatXpress1Click(Sender: TObject);
2922  begin  begin
2923        Scanningtype := '1';        Scanningtype := '1';
2924        NulstilAutomatiskValg();        NulstilAutomatiskValg();
# Line 2932  begin Line 3073  begin
3073    
3074  end;  end;
3075    
3076    
3077  procedure TMainForm.ListBox1DrawItem(Control: TWinControl; Index: Integer;  procedure TMainForm.ListBox1DrawItem(Control: TWinControl; Index: Integer;
3078    Rect: TRect; State: TOwnerDrawState);    Rect: TRect; State: TOwnerDrawState);
3079  var  var
# Line 3046  begin Line 3188  begin
3188    
3189  end;  end;
3190    
3191  procedure TMainForm.ReturpakkerfraDAO1Click(Sender: TObject);  procedure TMainForm.menuNatxpressReturDAO1Click(Sender: TObject);
3192  begin  begin
3193        Scanningtype := '2';        Scanningtype := '2';
3194        NulstilAutomatiskValg();        NulstilAutomatiskValg();
3195        InitReturFraDao();        InitReturFraDao();
3196  end;  end;
3197    
3198  procedure TMainForm.Returpakkerfrapakkeshop1Click(Sender: TObject);  procedure TMainForm.menuPakkeshopRetur1Click(Sender: TObject);
3199  begin  begin
3200        Scanningtype := '6';        Scanningtype := '6';
3201        InitReturFraPakkeshop();        InitReturFraPakkeshop();
# Line 3064  procedure TMainForm.InitNatxpressleverin Line 3206  procedure TMainForm.InitNatxpressleverin
3206  begin  begin
3207        AutomatiskTjekkodeStyring1.Enabled := true;        AutomatiskTjekkodeStyring1.Enabled := true;
3208        btnNulstil.Visible := false;        btnNulstil.Visible := false;
3209        Pakkernormal1.Checked := true;        menuNatXpress1.Checked := true;
3210        InitForm(FarveNormal,TitelNormal,UrlNormal);        InitForm(FarveNormal,TitelNormal,UrlNormal);
3211        PanelValg1.Color := clGreen;        PanelValg1.Color := clGreen;
3212        PanelValg1.Font.Color := clWhite;        PanelValg1.Font.Color := clWhite;
# Line 3085  begin Line 3227  begin
3227        BtnEKLoverforsel.Enabled := true;        BtnEKLoverforsel.Enabled := true;
3228        InitLillePakke();        InitLillePakke();
3229        ListBox1.Items.Clear;        ListBox1.Items.Clear;
3230    
3231          chkForstorTilDirekte.Checked := false;
3232          chkForstorTilDirekte.Enabled := false;
3233    
3234        if BladhusSted = 0 then        if BladhusSted = 0 then
3235        begin        begin
3236          IndlesScanningLogFil();          IndlesScanningLogFil();
# Line 3095  end; Line 3241  end;
3241  procedure TMainForm.InitReturFraDao();  procedure TMainForm.InitReturFraDao();
3242  begin  begin
3243        AutomatiskTjekkodeStyring1.Enabled := false;        AutomatiskTjekkodeStyring1.Enabled := false;
3244        ReturpakkerfraDAO1.Checked := true;        menuNatxpressReturDAO1.Checked := true;
3245        btnNulstil.Visible := false;        btnNulstil.Visible := false;
3246        InitForm(FarveReturDAO,TitelReturDAO,UrlReturDAO);        InitForm(FarveReturDAO,TitelReturDAO,UrlReturDAO);
3247        PanelValg2.Color := clGreen;        PanelValg2.Color := clGreen;
# Line 3116  begin Line 3262  begin
3262        ListBox1.Items.Clear;        ListBox1.Items.Clear;
3263        ListBox2.Items.Clear;        ListBox2.Items.Clear;
3264        BtnEKLoverforsel.Enabled := false;        BtnEKLoverforsel.Enabled := false;
3265    
3266          chkForstorTilDirekte.Checked := false;
3267          chkForstorTilDirekte.Enabled := false;
3268    
3269        InitLillePakke();        InitLillePakke();
3270  end;  end;
3271    
3272  procedure TMainForm.InitReturFraKunde();  procedure TMainForm.InitReturFraKunde();
3273  begin  begin
3274        AutomatiskTjekkodeStyring1.Enabled := false;        AutomatiskTjekkodeStyring1.Enabled := false;
3275        Returpakkerfraboghandler1.Checked := true;        menuNatxpressReturfraKunde1.Checked := true;
3276        btnNulstil.Visible := false;        btnNulstil.Visible := false;
3277        InitForm(FarveReturBoghandler,TitelReturBoghandler,UrlReturBoghandler);        InitForm(FarveReturBoghandler,TitelReturBoghandler,UrlReturBoghandler);
3278        PanelValg3.Color := clGreen;        PanelValg3.Color := clGreen;
# Line 3142  begin Line 3292  begin
3292        ListBox1.Items.Clear;        ListBox1.Items.Clear;
3293        ListBox2.Items.Clear;        ListBox2.Items.Clear;
3294        BtnEKLoverforsel.Enabled := false;        BtnEKLoverforsel.Enabled := false;
3295    
3296          chkForstorTilDirekte.Checked := false;
3297          chkForstorTilDirekte.Enabled := false;
3298    
3299        InitLillePakke();        InitLillePakke();
3300  end;  end;
3301    
3302  procedure TMainForm.InitDirektelevering();  procedure TMainForm.InitDirektelevering();
3303  begin  begin
3304        AutomatiskTjekkodeStyring1.Enabled := false;        AutomatiskTjekkodeStyring1.Enabled := false;
3305        Budlevering1.Checked := true;        menuDaoDirekte1.Checked := true;
3306        btnNulstil.Visible := false;        btnNulstil.Visible := false;
3307        InitForm(FarveBudlevering,TitelBudlevering,UrlBudlevering);        InitForm(FarveBudlevering,TitelBudlevering,UrlBudlevering);
3308        PanelValg4.Color := clGreen;        PanelValg4.Color := clGreen;
# Line 3173  begin Line 3327  begin
3327        BtnEKLoverforsel.Enabled := false;        BtnEKLoverforsel.Enabled := false;
3328        IdFTP1.Passive := true;        IdFTP1.Passive := true;
3329        IdFTP1.PassiveUseControlHost := true;        IdFTP1.PassiveUseControlHost := true;
3330    
3331          chkForstorTilDirekte.Checked := false;
3332          chkForstorTilDirekte.Enabled := true;
3333    
3334        if (BladhusSted = 0) or (BladhusSted = 2) or (BladhusSted = 3) then        if (BladhusSted = 0) or (BladhusSted = 2) or (BladhusSted = 3) then
3335        begin        begin
3336            IndlesScanningLogFil();            IndlesScanningLogFil();
# Line 3184  end; Line 3342  end;
3342  procedure TMainForm.InitPakkeshoplevering();  procedure TMainForm.InitPakkeshoplevering();
3343  begin  begin
3344        AutomatiskTjekkodeStyring1.Enabled := true;        AutomatiskTjekkodeStyring1.Enabled := true;
3345        Pakkeshoplevering1.Checked := true;        menuPakkeshop1.Checked := true;
3346        btnNulstil.Visible := false;        btnNulstil.Visible := false;
3347        InitForm(FarvePakkeshoplevering,TitelPakkeshoplevering,UrlPakkeshoplevering);        InitForm(FarvePakkeshoplevering,TitelPakkeshoplevering,UrlPakkeshoplevering);
3348        PanelValg5.Color := clGreen;        PanelValg5.Color := clGreen;
# Line 3208  begin Line 3366  begin
3366    
3367        BtnEKLoverforsel.Enabled := true;        BtnEKLoverforsel.Enabled := true;
3368    
3369          chkForstorTilDirekte.Checked := false;
3370          chkForstorTilDirekte.Enabled := true;
3371    
3372        InitLillePakke();        InitLillePakke();
3373        IndlesScanningLogFil();        IndlesScanningLogFil();
3374        if BladhusSted = 0 then        if BladhusSted = 0 then
# Line 3221  end; Line 3382  end;
3382  procedure TMainForm.InitReturFraPakkeshop();  procedure TMainForm.InitReturFraPakkeshop();
3383  begin  begin
3384        AutomatiskTjekkodeStyring1.Enabled := false;        AutomatiskTjekkodeStyring1.Enabled := false;
3385        Returpakkerfrapakkeshop1.Checked := true;        menuPakkeshopRetur1.Checked := true;
3386        btnNulstil.Visible := false;        btnNulstil.Visible := false;
3387        InitForm(FarveReturPakkeshop,TitelReturPakkeshop,UrlReturPakkeshop);        InitForm(FarveReturPakkeshop,TitelReturPakkeshop,UrlReturPakkeshop);
3388        PanelValg6.Color := clGreen;        PanelValg6.Color := clGreen;
# Line 3243  begin Line 3404  begin
3404        BtnDownloadKontrolfil.Enabled := false;        BtnDownloadKontrolfil.Enabled := false;
3405        BtnOpdaterListen.Enabled := true;        BtnOpdaterListen.Enabled := true;
3406        BtnEKLoverforsel.Enabled := false;        BtnEKLoverforsel.Enabled := false;
3407    
3408          chkForstorTilDirekte.Checked := false;
3409          chkForstorTilDirekte.Enabled := false;
3410    
3411    
3412        InitLillePakke();        InitLillePakke();
3413        IndlesScanningLogFil();        IndlesScanningLogFil();
3414        if BladhusSted = 0 then        if BladhusSted = 0 then
# Line 3253  begin Line 3419  begin
3419        IdFTP1.PassiveUseControlHost := true;        IdFTP1.PassiveUseControlHost := true;
3420  end;  end;
3421    
3422  procedure TMainForm.Returpakkerfraboghandler1Click(Sender: TObject);  procedure TMainForm.menuNatxpressReturfraKunde1Click(Sender: TObject);
3423  begin  begin
3424        Scanningtype := '3';        Scanningtype := '3';
3425        NulstilAutomatiskValg();        NulstilAutomatiskValg();
# Line 3290  begin Line 3456  begin
3456        BtnDownloadKontrolfil.Enabled := false;        BtnDownloadKontrolfil.Enabled := false;
3457        BtnOpdaterListen.Enabled := true;        BtnOpdaterListen.Enabled := true;
3458        BtnEKLoverforsel.Enabled := false;        BtnEKLoverforsel.Enabled := false;
3459    
3460          chkForstorTilDirekte.Checked := false;
3461          chkForstorTilDirekte.Enabled := false;
3462    
3463    
3464        InitLillePakke();        InitLillePakke();
3465        IndlesScanningLogFil();        IndlesScanningLogFil();
3466        if BladhusSted = 0 then        if BladhusSted = 0 then
# Line 3386  begin Line 3557  begin
3557  end;  end;
3558    
3559    
3560  procedure TMainForm.Budlevering1Click(Sender: TObject);  procedure TMainForm.menuDaoDirekte1Click(Sender: TObject);
3561  begin  begin
3562        Scanningtype := '4';        Scanningtype := '4';
3563        NulstilAutomatiskValg();        NulstilAutomatiskValg();
# Line 4033  var Line 4204  var
4204    stregkode, modtagernavn, modtageradresse, kommentar : string;    stregkode, modtagernavn, modtageradresse, kommentar : string;
4205    pakketype, tjekkodestatus : String;    pakketype, tjekkodestatus : String;
4206    pakketypeix, antalLiniefelter, antalFelterFundet, linienr : Integer;    pakketypeix, antalLiniefelter, antalFelterFundet, linienr : Integer;
4207    pakketyper : TStrings;    //pakketyper : TStrings;
4208      pakketyper : TDictionary<String, Integer>;
4209      tmpAntal : Integer;
4210    
4211    
4212    
4213    antlin : Integer;    antlin : Integer;
4214    
4215    antlinIdag, antlinSenere : Integer;    antlinIdag, antlinSenere : Integer;
4216    
4217    XmlFelter : TStrings;    //XmlFelter : TStrings;
4218      XmlFelter : TDictionary<String, Integer>;
4219    
4220   begin   begin
4221      XmlFelter := TStringList.Create;  
4222      pakketyper := TStringList.Create;  
4223        XmlFelter := TDictionary<String, Integer>.Create;
4224        pakketyper := TDictionary<String, Integer>.Create;
4225    
4226      linienr := 0;      linienr := 0;
4227      ListBox2.Clear;      ListBox2.Clear;
4228      ListBox1.Items.Insert(0,TimeToStr(now) + ': ' + 'Henter oversigt over pakker der endnu ikke er modtaget');      ListBox1.Items.Insert(0,TimeToStr(now) + ': ' + 'Henter oversigt over pakker der endnu ikke er modtaget');
# Line 4057  var Line 4237  var
4237          StedKode := Sted;          StedKode := Sted;
4238        end;        end;
4239    
4240          Application.Processmessages; //Ugly Hack to improve User Experience when switching modes
4241    
4242    
4243    
4244      if (Scanningtype = '7') then      if (Scanningtype = '7') then
# Line 4094  var Line 4276  var
4276        begin        begin
4277          // Her skal vi ikke gøre noget - men vi skal forespørge igen          // Her skal vi ikke gøre noget - men vi skal forespørge igen
4278          WebSvar := IdHTTP1.Get(URLStr);          WebSvar := IdHTTP1.Get(URLStr);
4279    
4280    
4281    
4282        end;        end;
4283        on e:exception do        on e:exception do
4284        begin        begin
# Line 4116  var Line 4301  var
4301            if Node.NodeType = ntElement then begin            if Node.NodeType = ntElement then begin
4302              if Node.NodeName = 'Stregkode' then              if Node.NodeName = 'Stregkode' then
4303              begin              begin
4304                 antlin := antlin + 1;                 Inc(antlin);
4305                 // 20150306: start                 // 20150306: start
4306                if not VarIsNull(Node.NodeValue) then                if not VarIsNull(Node.NodeValue) then
4307                begin                begin
4308                   if (pos('(', Node.NodeValue) = 0) then                   if (pos('(', Node.NodeValue) = 0) then
4309                   begin                   begin
4310                     antlinIdag := antlinIdag + 1;                     Inc(antlinIdag);
4311                   end                   end
4312                   else                   else
4313                   begin                   begin
4314                     antlinSenere := antlinSenere + 1;                     Inc(antlinSenere);
4315                   end;                   end;
4316                end;                end;
4317                 // 20150306: slut                 // 20150306: slut
4318              end;              end;
4319            end;            end;
4320            if (XmlFelter.values[Node.NodeName] <> '') then            if ( XmlFelter.ContainsKey(Node.NodeName) ) then
4321                  XmlFelter.values[Node.NodeName] := IntToStr(StrToInt(XmlFelter.values[Node.NodeName]) + 1)                begin
4322                    XmlFelter.TryGetValue(Node.NodeName, tmpAntal);
4323                    XmlFelter.AddOrSetValue(Node.NodeName, tmpAntal + 1);
4324                  end
4325                else                else
4326                  XmlFelter.values[Node.NodeName] := '1';                begin
4327                    XmlFelter.Add(Node.NodeName, 1);
4328                  end;
4329    
4330        end;        end;
4331        antalLiniefelter := XmlFelter.Count;        antalLiniefelter := XmlFelter.Count;
# Line 4143  var Line 4333  var
4333        SetLength(stregkoderMedTjekkodeArray, 0);    // reset fra tidligere brug        SetLength(stregkoderMedTjekkodeArray, 0);    // reset fra tidligere brug
4334        SetLength(stregkoderMedTjekkodeArray, antlin);  // sæt antal elementer i array        SetLength(stregkoderMedTjekkodeArray, antlin);  // sæt antal elementer i array
4335    
4336    
4337          Application.Processmessages; //Ugly Hack to improve User Experience when switching modes
4338    
4339        logTekst := 'Der er ' + IntToStr(antlin) + ' pakker, der endnu ikke er modtaget';        logTekst := 'Der er ' + IntToStr(antlin) + ' pakker, der endnu ikke er modtaget';
4340        if (antlinSenere > 0) then        if (antlinSenere > 0) then
4341        begin        begin
# Line 4151  var Line 4344  var
4344        logTekst := logTekst + '.';        logTekst := logTekst + '.';
4345    
4346        SkrivScanningLogFil(logTekst);        SkrivScanningLogFil(logTekst);
4347    
4348    
4349        for I:= 0 to XMLDocument1.DocumentElement.ChildNodes.Count - 1 do begin        for I:= 0 to XMLDocument1.DocumentElement.ChildNodes.Count - 1 do begin
4350            Node:= XMLDocument1.DocumentElement.ChildNodes[I];            Node:= XMLDocument1.DocumentElement.ChildNodes[I];
4351            if Node.NodeType = ntElement then begin            if Node.NodeType = ntElement then begin
# Line 4158  var Line 4353  var
4353                if not VarIsNull(Node.NodeValue) then                if not VarIsNull(Node.NodeValue) then
4354                  stregkode := Node.NodeValue;                  stregkode := Node.NodeValue;
4355                  antalFelterFundet := antalFelterFundet + 1;                  antalFelterFundet := antalFelterFundet + 1;
4356              end;              end
4357              if Node.NodeName = 'ModtagerNavn' then begin              else if Node.NodeName = 'ModtagerNavn' then begin
4358                if not VarIsNull(Node.NodeValue) then                if not VarIsNull(Node.NodeValue) then
4359                  modtagernavn := Node.NodeValue;                  modtagernavn := Node.NodeValue;
4360                  antalFelterFundet := antalFelterFundet + 1;                  antalFelterFundet := antalFelterFundet + 1;
4361              end;              end
4362              if Node.NodeName = 'ModtagerAdresse' then begin              else if Node.NodeName = 'ModtagerAdresse' then begin
4363                if not VarIsNull(Node.NodeValue) then                if not VarIsNull(Node.NodeValue) then
4364                  modtageradresse := Node.NodeValue;                  modtageradresse := Node.NodeValue;
4365                  antalFelterFundet := antalFelterFundet + 1;                  antalFelterFundet := antalFelterFundet + 1;
4366              end;              end
4367              if Node.NodeName = 'Kommentar' then begin              else if Node.NodeName = 'Kommentar' then begin
4368                if not VarIsNull(Node.NodeValue) then                if not VarIsNull(Node.NodeValue) then
4369                  kommentar := Node.NodeValue;                  kommentar := Node.NodeValue;
4370                  antalFelterFundet := antalFelterFundet + 1;                  antalFelterFundet := antalFelterFundet + 1;
4371              end;              end
4372              if Node.NodeName = 'PakkeType' then begin              else if Node.NodeName = 'PakkeType' then begin
4373                if not VarIsNull(Node.NodeValue) then                if not VarIsNull(Node.NodeValue) then
4374                  pakketype := Node.NodeValue;                  pakketype := Node.NodeValue;
4375                  antalFelterFundet := antalFelterFundet + 1;                  antalFelterFundet := antalFelterFundet + 1;
4376                if (pakketyper.values[pakketype] <> '') then                if ( pakketyper.ContainsKey(pakketype) ) then
4377                  pakketyper.values[pakketype] := IntToStr(StrToInt(pakketyper.values[pakketype]) + 1)                begin
4378                    pakketyper.TryGetValue(pakketype, tmpAntal);
4379                    pakketyper.AddOrSetValue(pakketype, tmpAntal + 1);
4380                  end
4381                else                else
4382                  pakketyper.values[pakketype] := '1';                  pakketyper.Add(pakketype, 1);
4383              end;              end
4384              if Node.NodeName = 'TjekkodeStatus' then begin              else if Node.NodeName = 'TjekkodeStatus' then begin
4385                if not VarIsNull(Node.NodeValue) then                if not VarIsNull(Node.NodeValue) then
4386                  tjekkodestatus := Node.NodeValue;                  tjekkodestatus := Node.NodeValue;
4387                  antalFelterFundet := antalFelterFundet + 1;                  antalFelterFundet := antalFelterFundet + 1;
# Line 4201  var Line 4399  var
4399                    linienr := linienr + 1;                    linienr := linienr + 1;
4400                  end;                  end;
4401              end;              end;
4402    
4403    
4404              if antalFelterFundet = antalLiniefelter then              if antalFelterFundet = antalLiniefelter then
4405              begin              begin
4406                if (ScanningType = '1') then                if (ScanningType = '1') then
# Line 4216  var Line 4416  var
4416              end;              end;
4417            end;            end;
4418        end;        end;
       for pakketypeix := 0 to pakketyper.Count-1 do  
         begin  
           ListBox1.Items.Insert(0,TimeToStr(now) + ': ' + ' '+pakketyper[pakketypeix]+' pakke(r) ikke modtaget');  
         end;  
4419    
4420          // Free up the list object  
4421          Application.Processmessages; //Ugly Hack to improve User Experience when switching modes
4422    
4423    
4424          for pakketype in pakketyper.Keys do
4425          begin
4426            pakketyper.TryGetValue(pakketype, tmpAntal);
4427            ListBox1.Items.Insert(0,TimeToStr(now) + ': ' + pakketype + ' ' + IntToStr(tmpAntal) + ' pakke(r) ikke modtaget');
4428          end;
4429    
4430            // Free up the dictionary object
4431        pakketyper.Free;        pakketyper.Free;
4432    
4433    
4434    
4435  //      ListBox1.Items.Insert(0,TimeToStr(now) + ': ' + 'Der er '+IntToStr(antlin)+' pakker, der endnu ikke er modtaget.');  //      ListBox1.Items.Insert(0,TimeToStr(now) + ': ' + 'Der er '+IntToStr(antlin)+' pakker, der endnu ikke er modtaget.');
4436        logTekst := 'Der er ' + IntToStr(antlin) + ' pakker, der endnu ikke er modtaget';        logTekst := 'Der er ' + IntToStr(antlin) + ' pakker, der endnu ikke er modtaget';
4437        if (antlinSenere > 0) then        if (antlinSenere > 0) then
# Line 4664  begin Line 4873  begin
4873      KommentarST.Caption := strMessage;      KommentarST.Caption := strMessage;
4874    end;    end;
4875    
4876      Stregkode := ''; //Nulstil stregkode feltet efter at fejl er vist
4877    
4878  end;  end;
4879    
4880  function TMainForm.getProddato() : TDate;  function TMainForm.getProddato() : TDate;
# Line 4737  begin Line 4948  begin
4948  end;  end;
4949    
4950    
4951    //Nedarvet fra IParentForm
4952    procedure TMainForm.Msg( msg : string);
4953    begin
4954      ShowMessage(msg);
4955    end;
4956    
4957  //Nedarvet fra IParentForm  //Nedarvet fra IParentForm
4958  procedure TMainForm.LogMessage( msg : string);  procedure TMainForm.LogMessage( msg : string);

Legend:
Removed from v.2756  
changed lines
  Added in v.3054

  ViewVC Help
Powered by ViewVC 1.1.20