--- dao/DelphiScanner/Main.pas 2015/12/17 19:04:09 2794 +++ dao/DelphiScanner/Main.pas 2016/06/14 09:50:04 3049 @@ -39,7 +39,6 @@ XMLDocument1: TXMLDocument; ApplicationEvents1: TApplicationEvents; chkSporgEfterKunde: TCheckBox; - KommentarST: TStaticText; MainMenu1: TMainMenu; N1: TMenuItem; Pakkernormal1: TMenuItem; @@ -106,6 +105,8 @@ PanelManglendePakker6: TPanel; menuIndlevering: TMenuItem; chkForstorTilDirekte: TCheckBox; + chkEmballageRepareret: TCheckBox; + KommentarST: TLabel; @@ -195,11 +196,13 @@ //Nedarvet fra IParentForm + procedure Msg( msg : string); procedure LogMessage( msg : string); procedure SetPrinterstatusText( txt: string; alert: boolean); function GetFormObject() : TForm; + private SpecialVersionSted, SpecialVersionScanningtype: String; // Bruges når programmet skal bruges udenfor DAO scanningssteder Stregkode : String; @@ -260,6 +263,7 @@ procedure SkrivScanningLogFil(var tekst : string); function TjekKoreliste(var RuteNummer, Koreliste : string) : string; procedure VisAlarmSkaerm(strMessage: string); + function InjectURL(Url : String) : String; public { Public declarations } @@ -285,6 +289,12 @@ procedure TMainForm.InitForm(Farve,Titel,Url : String); begin + IdHTTP1.ConnectTimeout := 5000; // Vent max 5 sek på connect + IdHTTP1.ReadTimeout := 10000; // Vent max 10 sek på read + + + + StaticTextManglendePakker.Caption := ''; @@ -358,9 +368,11 @@ else if (Sted = 'BR') then begin StedNavn := 'Brøndby: '; end else if (Sted = 'BK') then - begin StedNavn := 'Bladkompagniet: '; end + begin StedNavn := 'Bladkompagniet/ISV: '; end + else if (Sted = 'TK') then + begin StedNavn := 'BK/Trykkompagniet: '; end else if (Sted = 'DBK') then - begin StedNavn := 'DBK Køge: '; end + begin StedNavn := 'DBK/Køge: '; end else if (Sted = '1') then begin StedNavn := 'Ålborg: '; end else if (Sted = '2') then @@ -501,6 +513,15 @@ PanelValgA.Font.Color := clWhite; end; +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()); + + Result := Url; +end; //InitForm kaldes før FormCreate procedure TMainForm.FormCreate(Sender: TObject); @@ -551,27 +572,54 @@ SkrivLog := ReadString('Settings','SkrivLog','0'); Sted := ReadString('Settings','Sted',''); StedNavn := ReadString('Settings','Stednavn',''); + UrlFindPakketype := ReadString('Settings','UrlFindPakketype','http://omdeling.info/webservices/bogpakkekontrol/FindPakketype.php?stregkode=%s'); + UrlFindPakketype := InjectURL(UrlFindPakketype); + 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'); - UrlPakkeshopManglendeReturScanninger := ReadString('Settings','UrlPakkeshopManglendeReturScanninger','http://omdeling.info/webservices/pakkeshop/pakkemanglendereturscanninger.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'); - URLOmdirigerTilPakkeshop := ReadString('Settings', 'URLOmdirigerTilPakkeshop','http://omdeling.info/webservices/pakkeshop/PakkeKontrolOmdirigerTilPakkeshop.php?sted=%s&stregkode=%s'); + UrlIndleveringsPakkeManglendeScanninger := InjectURL(UrlIndleveringsPakkeManglendeScanninger); + URLOmdirigerTilPakkeshop := ReadString('Settings', 'URLOmdirigerTilPakkeshop','http://omdeling.info/webservices/pakkeshop/PakkeKontrolOmdirigerTilPakkeshop.php?sted=%s&stregkode=%s'); + URLOmdirigerTilPakkeshop := InjectURL(URLOmdirigerTilPakkeshop); @@ -689,6 +737,9 @@ {$IfDef STED_BK} SpecialVersionSted := 'BK'; {$EndIf} +{$IfDef STED_TK} + SpecialVersionSted := 'TK';// BK-Trykkompagniet +{$EndIf} {$IfDef STED_DBK} SpecialVersionSted := 'DBK'; {$EndIf} @@ -699,7 +750,6 @@ SpecialVersionSted := 'NS'; {$EndIf} - //SpecialVersionSted := '01'; // NS - bruges sammen med nedenstående SpecialVersionScanningtype DIREKTE) //SpecialVersionSted := '02'; // BK - BRUGES IKKE (brug i stedet ovenstående SpecialVersionSted BK) //SpecialVersionSted := '03'; // FD - (bruges sammen med nedenstående SpecialVersionScanningtype DIREKTE) @@ -717,16 +767,51 @@ if SpecialVersionSted = 'NS' then begin - SpecialVersionSted := '01'; - SpecialVersionScanningtype := '4'; + //SpecialVersionSted := '01'; // Fra før NS overtog scanning løssalg + //SpecialVersionScanningtype := '4'; + + //FarveNormal := 'A9F5A9'; // her kan vi evt. overrule ini fil + Sted := SpecialVersionSted; + // her skal vi også disable de knapper BK ikke kan bruge + PanelValg2.Enabled := false; + PanelValg2.Font.Color := clInactiveCaption; + PanelValg3.Enabled := false; + PanelValg3.Font.Color := clInactiveCaption; + //PanelValg6.Enabled := false; + //PanelValg6.Font.Color := clInactiveCaption; + + // her skal vi også disable de menupunkter FD ikke kan bruge + ReturpakkerfraDAO1.Enabled := false; + Returpakkerfraboghandler1.Enabled := false; + + //Returpakkerfrapakkeshop1.Enabled := false; end; + if SpecialVersionSted = 'FD' then begin - SpecialVersionSted := '03'; - SpecialVersionScanningtype := '4'; + //SpecialVersionSted := '03'; //fra før at FD overtog scanning + //SpecialVersionScanningtype := '4'; + + + //FarveNormal := 'A9F5A9'; // her kan vi evt. overrule ini fil + Sted := SpecialVersionSted; + // her skal vi også disable de knapper BK ikke kan bruge + PanelValg2.Enabled := false; + PanelValg2.Font.Color := clInactiveCaption; + PanelValg3.Enabled := false; + PanelValg3.Font.Color := clInactiveCaption; + //PanelValg6.Enabled := false; + //PanelValg6.Font.Color := clInactiveCaption; + + // her skal vi også disable de menupunkter FD ikke kan bruge + ReturpakkerfraDAO1.Enabled := false; + Returpakkerfraboghandler1.Enabled := false; + + //Returpakkerfrapakkeshop1.Enabled := false; + end; - if SpecialVersionSted = 'BK' then + if (SpecialVersionSted = 'BK') OR (SpecialVersionSted = 'TK') then begin //FarveNormal := 'A9F5A9'; // her kan vi evt. overrule ini fil Sted := SpecialVersionSted; @@ -767,8 +852,7 @@ PanelValg5.Font.Color := clInactiveCaption; PanelValg6.Enabled := false; PanelValg6.Font.Color := clInactiveCaption; - PanelValg7.Enabled := false; - PanelValg7.Font.Color := clInactiveCaption; + // her skal vi også disable de menupunkter DBK ikke kan bruge ReturpakkerfraDAO1.Enabled := false; @@ -1127,6 +1211,7 @@ or (NumberString = 'DAO PAKKESHOP') or (NumberString = 'DAO PAKKESHOP') or (LowerCase(NumberString) = 'for stor hjemmelevering' ) + or (LowerCase(NumberString) = 'for stor daodirekte' ) or (NumberString = 'Retur fra pakkeshop') then begin @@ -1141,7 +1226,11 @@ if Key = #13 then // Enter begin - if (Length(Trim(Stregkode)) = 0) then + + // Sikre at den er trimmet inden vi går videre - DBK kan finde på at encode et space i enden af deres barcodes + Stregkode := Trim(Stregkode); + + if (Length(Stregkode) = 0) then begin VisAlarmSkaerm( 'Der skal scannes en stregkode...' ); @@ -1191,7 +1280,7 @@ exit; end; - if LowerCase(StregKode) = 'for stor hjemmelevering' then + if (LowerCase(StregKode) = 'for stor hjemmelevering') OR (LowerCase(StregKode) = 'for stor daodirekte') then begin if chkForstorTilDirekte.Enabled then begin @@ -1445,7 +1534,16 @@ InitPakkeshoplevering(); end; end - // Retur kan ikke scannes med 'Automatisk valg' + else if Pakketype = 'PakkeshopRetur' then + begin + if Scanningtype <> '6' then + begin + VisAlarmSkaerm( Stregkode + ' Pakkeshop retur,'#13#10' kan ikke bruges med automatisk valg' ); + + exit; + end; + end + else begin @@ -2975,6 +3073,7 @@ end; + procedure TMainForm.ListBox1DrawItem(Control: TWinControl; Index: Integer; Rect: TRect; State: TOwnerDrawState); var @@ -4177,6 +4276,9 @@ begin // Her skal vi ikke gøre noget - men vi skal forespørge igen WebSvar := IdHTTP1.Get(URLStr); + + + end; on e:exception do begin @@ -4771,6 +4873,8 @@ KommentarST.Caption := strMessage; end; + Stregkode := ''; //Nulstil stregkode feltet efter at fejl er vist + end; function TMainForm.getProddato() : TDate; @@ -4844,6 +4948,11 @@ end; +//Nedarvet fra IParentForm +procedure TMainForm.Msg( msg : string); +begin + ShowMessage(msg); +end; //Nedarvet fra IParentForm procedure TMainForm.LogMessage( msg : string);