--- dao/DelphiScanner/Main.pas 2016/05/23 13:03:49 3036 +++ dao/DelphiScanner/Main.pas 2016/10/20 06:56:45 3130 @@ -20,13 +20,14 @@ IdExplicitTLSClientServerBase, IdFTP, IdException, ShellApi, ClipBrd, Buttons, wininet, UITypes, - PakkeshopLabels, + LabelData, Utils, ParentForm, LabelPrint, Configuration, Vcl.Imaging.pngimage, - Generics.Collections + Generics.Collections, + TimingHelper ; @@ -39,12 +40,11 @@ XMLDocument1: TXMLDocument; ApplicationEvents1: TApplicationEvents; chkSporgEfterKunde: TCheckBox; - KommentarST: TStaticText; MainMenu1: TMainMenu; N1: TMenuItem; - Pakkernormal1: TMenuItem; - ReturpakkerfraDAO1: TMenuItem; - Returpakkerfraboghandler1: TMenuItem; + menuNatXpress1: TMenuItem; + menuNatxpressReturDAO1: TMenuItem; + menuNatxpressReturfraKunde1: TMenuItem; Hjlp1: TMenuItem; Om1: TMenuItem; Testforbindelsen1: TMenuItem; @@ -57,14 +57,14 @@ radioStorPakke: TRadioButton; radioLillePakke: TRadioButton; N4: TMenuItem; - Storepakker1: TMenuItem; - Smpakker1: TMenuItem; + menuStorePakker: TMenuItem; + menuSmaaPakker: TMenuItem; Panel1: TPanel; Testlyd2: TMenuItem; Button1: TButton; Testlyd1: TMenuItem; ListBox1: TListBox; - Budlevering1: TMenuItem; + menuDaoDirekte1: TMenuItem; BtnDownloadKontrolfil: TButton; IdFTP1: TIdFTP; Image1: TImage; @@ -72,10 +72,10 @@ BtnOpdaterListen: TButton; BtnUploadLogfil: TButton; BtnDownloadRuteskiftFil: TButton; - Pakkeshoplevering1: TMenuItem; + menuPakkeshop1: TMenuItem; PakkeshopText1: TStaticText; btnNulstil: TButton; - Returpakkerfrapakkeshop1: TMenuItem; + menuPakkeshopRetur1: TMenuItem; Altidprintepakkelabel1: TMenuItem; chkAltidPrintLabel: TCheckBox; BtnEKLoverforsel: TButton; @@ -86,8 +86,8 @@ Timer1: TTimer; chkScanTjekkode: TCheckBox; Scanogstjekkoden1: TMenuItem; - Automatisktjekkodestyring1: TMenuItem; - Automatiskvalg1: TMenuItem; + menuAutomatiskTjekkodeStyring: TMenuItem; + menuAutomatiskvalg1: TMenuItem; PanelValgA: TPanel; PanelValg1: TPanel; PanelValg2: TPanel; @@ -106,6 +106,9 @@ PanelManglendePakker6: TPanel; menuIndlevering: TMenuItem; chkForstorTilDirekte: TCheckBox; + chkEmballageRepareret: TCheckBox; + KommentarST: TLabel; + chkUdenforSpecifikation: TCheckBox; @@ -127,21 +130,21 @@ procedure radioStorPakkeClick(Sender: TObject); procedure radioLillePakkeClick(Sender: TObject); procedure chkSporgEfterKundeClick(Sender: TObject); - procedure Pakkernormal1Click(Sender: TObject); + procedure menuNatXpress1Click(Sender: TObject); procedure Testforbindelsen1Click(Sender: TObject); procedure Testprinter1Click(Sender: TObject); procedure Om1Click(Sender: TObject); procedure Lukprogrammet1Click(Sender: TObject); procedure Sprgefterboghandlernummer1Click(Sender: TObject); - procedure ReturpakkerfraDAO1Click(Sender: TObject); - procedure Returpakkerfraboghandler1Click(Sender: TObject); - procedure Storepakker1Click(Sender: TObject); - procedure Smpakker1Click(Sender: TObject); + procedure menuNatxpressReturDAO1Click(Sender: TObject); + procedure menuNatxpressReturfraKunde1Click(Sender: TObject); + procedure menuStorePakkerClick(Sender: TObject); + procedure menuSmaaPakkerClick(Sender: TObject); procedure Testlyd1Click(Sender: TObject); procedure Testlyd2Click(Sender: TObject); procedure Button1Click(Sender: TObject); procedure ListBox1DrawItem(Control: TWinControl; Index: Integer; Rect: TRect; State: TOwnerDrawState); - procedure Budlevering1Click(Sender: TObject); + procedure menuDaoDirekte1Click(Sender: TObject); procedure BtnDownloadKontrolfilClick(Sender: TObject); procedure BtnOpdaterListenClick(Sender: TObject); procedure DownloadBladhusRuteskiftfil(); @@ -153,9 +156,9 @@ procedure FormDestroy(Sender: TObject); procedure BtnUploadLogfilClick(Sender: TObject); procedure BtnDownloadRuteskiftFilClick(Sender: TObject); - procedure Pakkeshoplevering1Click(Sender: TObject); + procedure menuPakkeshop1Click(Sender: TObject); procedure btnNulstilClick(Sender: TObject); - procedure Returpakkerfrapakkeshop1Click(Sender: TObject); + procedure menuPakkeshopRetur1Click(Sender: TObject); procedure InitNatxpresslevering(); procedure InitReturFraDao(); procedure InitReturFraKunde(); @@ -172,9 +175,9 @@ procedure Timer1Timer(Sender: TObject); procedure Scanogstjekkoden1Click(Sender: TObject); procedure chkScanTjekkodeClick(Sender: TObject); - procedure Automatisktjekkodestyring1Click(Sender: TObject); + procedure menuAutomatiskTjekkodeStyringClick(Sender: TObject); procedure SendInfoTilServer(Sted, Scanningtype, Infotype, Info : String); - procedure Automatiskvalg1Click(Sender: TObject); + procedure menuAutomatiskvalg1Click(Sender: TObject); procedure PanelValgAClick(Sender: TObject); procedure PanelValg1Click(Sender: TObject); procedure PanelValg2Click(Sender: TObject); @@ -195,9 +198,14 @@ //Nedarvet fra IParentForm + procedure Msg( msg : string); procedure LogMessage( msg : string); procedure SetPrinterstatusText( txt: string; alert: boolean); function GetFormObject() : TForm; + function GetXMLDocument() : TXMLDocument; + procedure chkEmballageRepareretClick(Sender: TObject); + procedure chkUdenforSpecifikationClick(Sender: TObject); + private @@ -206,31 +214,17 @@ SkrivLog : String; Sted : String; StedNavn : String; - Url, UrlNormal, UrlReturDAO, UrlReturBoghandler, UrlBudlevering, UrlManglendeScanninger, UrlPakkeshoplevering, - UrlReturPakkeshop, UrlPakkeshopManglendeScanninger, UrlPakkeshopManglendeReturScanninger,UrlIndleveringsPakke, - UrlIndleveringsPakkeManglendeScanninger,UrlEKLoverforsel, URLOmdirigerTilPakkeshop : String; - UrlEKLoverforselPakkeshop : String; + Scanningtype, Pakketype : String; - UrlFindPakketype, UrlSendPrograminfo: String; - Scanningtype, TestFunktionen, Pakketype, SporgEfterBoghandler : String; - ScanTjekkode : String; - ScanTjekkodeAutomatik : string; - Farve, FarveNormal, FarveReturDAO, FarveReturBoghandler, FarveBudlevering, FarvePakkeshoplevering, FarveReturPakkeshop, - FarveIndlevering : String; + Url : String; - Titel, TitelNormal, TitelReturDAO, TitelReturBoghandler, TitelBudlevering, TitelPakkeshoplevering, TitelReturPakkeshop, - TitelIndlevering : String; + Farve : String; - AlarmLyd : String; - ScannetOkLyd : String; - ScannetOkStorLyd : String; + Titel : String; - ScannetOkTilTjekkodeLyd : String; - PrinterNavn : String; - TjekPrinter : String; Org_RuteNummerST, Org_BoghandlerNavnST, Org_KommentarST : String; BladhusSted : Integer; @@ -243,7 +237,7 @@ logTekst : string; PakkeshopStregkode, PakkeshopTjekkode : String; BoghandlerStregkode, BoghandlerTjekkode : String; - TjekUrls : String; + Config : TConfiguration; @@ -253,14 +247,15 @@ procedure HentPakkeInfoFraServer(const Sted, PakkeNr : String; var RuteNummer, Kommentar, BoghandlerNavn, Koreliste, SmsKode, DBKbane, Leveringssted : String; var PrintNyLabel: Boolean; BoghandlerNummer : String = ''); procedure CheckCode(); - procedure IndlesManglendeScanninger(); + procedure IndlesManglendeScanningerAntal(); + procedure IndlesManglendeScanningerListe(); procedure IndlesRuteskiftFil(var filnavn : string); procedure IndlesKontrolFil(var filnavn : string); procedure IndlesScanningLogFil(); procedure SkrivScanningLogFil(var tekst : string); function TjekKoreliste(var RuteNummer, Koreliste : string) : string; procedure VisAlarmSkaerm(strMessage: string); - function InjectURL(Url : String) : String; + public { Public declarations } @@ -286,6 +281,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 := ''; @@ -397,7 +398,7 @@ PrinterstatusStaticText1.Color := MainForm.Color; end; - if PakkeshopLevering1.Checked or Pakkernormal1.Checked then + if menuPakkeshop1.Checked or menuNatXpress1.Checked then PakkeshopText1.Visible := true else PakkeshopText1.Visible := false; @@ -408,7 +409,7 @@ if (Scanningtype = '1') or (Scanningtype = '5') then begin - if (ScanTjekkode = '1') then + if (Config.ScanTjekkode = '1') then begin chkScanTjekkode.Checked := true; chkScanTjekkode.Enabled := true; @@ -422,7 +423,7 @@ end; end; - if Automatisktjekkodestyring1.Checked then + if menuAutomatiskTjekkodeStyring.Checked then begin chkScanTjekkode.Enabled := false; Scanogstjekkoden1.Enabled := false; @@ -480,9 +481,9 @@ StregkodeST.Caption := Stregkode; end; -procedure TMainForm.Automatisktjekkodestyring1Click(Sender: TObject); +procedure TMainForm.menuAutomatiskTjekkodeStyringClick(Sender: TObject); begin - if Automatisktjekkodestyring1.Checked then + if menuAutomatiskTjekkodeStyring.Checked then begin chkScanTjekkode.Enabled := false; Scanogstjekkoden1.Enabled := false; @@ -495,24 +496,16 @@ end; -procedure TMainForm.Automatiskvalg1Click(Sender: TObject); +procedure TMainForm.menuAutomatiskvalg1Click(Sender: TObject); begin // Skal ikke toggle men bare sætte funktionen on // Fravælges ved at vælge en scanningstype - AutomatiskValg1.Checked := true; + menuAutomatiskvalg1.Checked := true; PanelValgA.Color := clGreen; 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); @@ -549,7 +542,7 @@ // Sætter lige en default panel størrelse MainForm.ClientWidth := 1000; - MainForm.ClientHeight := 750; + MainForm.ClientHeight := 920; Config := TConfiguration.Create(); Config.ReadFromInifile( TIniFile.Create(ChangeFileExt(Application.ExeName,'.ini')) ); //ToDo: clean up duplicate ini ref @@ -564,89 +557,12 @@ 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); + Scanningtype := 'A'; //hardcoded + Pakketype := '0'; - UrlReturPakkeshop := ReadString('Settings','UrlReturPakkeshop','http://omdeling.info/webservices/pakkeshop/returpakkekontrol.php?sted=%s&stregkode=%s'); - UrlReturPakkeshop := InjectURL(UrlReturPakkeshop); - UrlPakkeshopManglendeScanninger := ReadString('Settings','UrlPakkeshopManglendeScanninger','http://omdeling.info/webservices/pakkeshop/pakkemanglendescanninger.php?sted=%s'); - UrlPakkeshopManglendeScanninger := InjectURL(UrlPakkeshopManglendeScanninger); - UrlPakkeshopManglendeReturScanninger := ReadString('Settings','UrlPakkeshopManglendeReturScanninger','http://omdeling.info/webservices/pakkeshop/pakkemanglendereturscanninger.php?sted=%s'); - UrlPakkeshopManglendeReturScanninger := InjectURL(UrlPakkeshopManglendeReturScanninger); - UrlIndleveringsPakke := ReadString('Settings','UrlIndleveringsPakke','http://omdeling.info/webservices/pakkeshop/PakkekontrolIndleveringskode.php?sted=%s&pakkekode=%s'); - UrlIndleveringsPakke := InjectURL(UrlIndleveringsPakke); - - UrlIndleveringsPakkeManglendeScanninger := ReadString('Settings', 'UrlIndleveringsPakkeManglendeScanninger','http://omdeling.info/webservices/pakkeshop/IndleveringsPakkeManglendeScanninger.php?sted=%s'); - UrlIndleveringsPakkeManglendeScanninger := InjectURL(UrlIndleveringsPakkeManglendeScanninger); - - URLOmdirigerTilPakkeshop := ReadString('Settings', 'URLOmdirigerTilPakkeshop','http://omdeling.info/webservices/pakkeshop/PakkeKontrolOmdirigerTilPakkeshop.php?sted=%s&stregkode=%s'); - URLOmdirigerTilPakkeshop := InjectURL(URLOmdirigerTilPakkeshop); - - - - FarveNormal := ReadString('Settings','FarveNormal','D8D8D8'); - TitelNormal := ReadString('Settings','TitelNormal','Modtagelse af DAO NAT X-PRESS pakker'); - FarveReturDAO := ReadString('Settings','FarveReturDAO','A9F5A9'); - TitelReturDAO := ReadString('Settings','TitelReturDAO','Returforsendelse fra DAO'); - FarveReturBoghandler := ReadString('Settings','FarveReturBoghandler','F2F5A9'); - TitelReturBoghandler := ReadString('Settings','TitelReturBoghandler','Returforsendelse fra boghandler'); - FarveBudlevering := ReadString('Settings','FarveBudlevering','2E9AFE'); - TitelBudlevering := ReadString('Settings','TitelBudlevering','Modtagelse af DAO DIREKTE pakker'); - FarvePakkeshoplevering := ReadString('Settings','FarvePakkeshoplevering','99FFFF'); - TitelPakkeshoplevering := ReadString('Settings','TitelPakkeshoplevering','Modtagelse af DAO PAKKESHOP pakker'); - - FarveReturPakkeshop := ReadString('Settings','FarveReturPakkeshop','99FFCC'); - TitelReturPakkeshop := ReadString('Settings','TitelReturPakkeshop','Returforsendelse fra pakkeshop'); - - FarveIndlevering := ReadString('Settings', 'FarveIndlevering', 'E5B2CB'); - TitelIndlevering := ReadString('Settings', 'TitelIndlevering', 'Indleveringskode'); - - - SporgEfterBoghandler := ReadString('Settings','SporgEfterBoghandler','0'); - ScanTjekkode := ReadString('Settings','ScanTjekkode','0'); - ScanTjekkodeAutomatik := ReadString('Settings','ScanTjekkodeAutomatik','1'); - Scanningtype := ReadString('Settings','Scanningtype','A'); - Pakketype := ReadString('Settings','Pakketype','0'); - TestFunktionen := ReadString('Settings','TestFunktion','0'); - AlarmLyd := ReadString('Settings','AlarmLyd','Sounds\Alarm.wav'); - ScannetOkLyd := ReadString('Settings','ScannetOkLyd','Sounds\Ok.wav'); - ScannetOkStorLyd := ReadString('Settings','ScannetOkStorLyd','Sounds\Ok_stor.wav'); - - ScannetOkTilTjekkodeLyd := ReadString('Settings','ScannetOkTilTjekkodeLyd','Sounds\Ok_til_tjekkode.wav'); - - PrinterNavn := ReadString('Settings','PrinterNavn',''); - TjekPrinter := ReadString('Settings','TjekPrinter','1'); - TjekUrls := ReadString('Settings','TjekUrls','2'); if (SkrivLog = '1') then begin @@ -666,7 +582,7 @@ if Scanningtype = 'A' then begin - Automatiskvalg1.Checked := true; + menuAutomatiskvalg1.Checked := true; Scanningtype := '1'; PanelValgA.Color := clGreen; PanelValgA.Font.Color := clWhite; @@ -674,7 +590,7 @@ - if SporgEfterBoghandler = '1' then + if Config.SporgEfterBoghandler = '1' then begin chkSporgEfterKunde.Checked := true; Sprgefterboghandlernummer1.Checked := true; @@ -685,7 +601,7 @@ Sprgefterboghandlernummer1.Checked := false; end; - if ScanTjekkode = '1' then + if Config.ScanTjekkode = '1' then begin chkScanTjekkode.Checked := true; Scanogstjekkoden1.Checked := true; @@ -696,9 +612,9 @@ Scanogstjekkoden1.Checked := false; end; - if ScanTjekkodeAutomatik = '1' then + if Config.ScanTjekkodeAutomatik = '1' then begin - Automatisktjekkodestyring1.Checked := true; + menuAutomatiskTjekkodeStyring.Checked := true; chkScanTjekkode.Enabled := false; Scanogstjekkoden1.Enabled := false; end; @@ -741,7 +657,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) @@ -759,8 +674,24 @@ 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 + menuNatxpressReturDAO1.Enabled := false; + menuNatxpressReturfraKunde1.Enabled := false; + + //Returpakkerfrapakkeshop1.Enabled := false; end; if SpecialVersionSted = 'FD' then @@ -780,8 +711,8 @@ //PanelValg6.Font.Color := clInactiveCaption; // her skal vi også disable de menupunkter FD ikke kan bruge - ReturpakkerfraDAO1.Enabled := false; - Returpakkerfraboghandler1.Enabled := false; + menuNatxpressReturDAO1.Enabled := false; + menuNatxpressReturfraKunde1.Enabled := false; //Returpakkerfrapakkeshop1.Enabled := false; @@ -800,8 +731,8 @@ //PanelValg6.Font.Color := clInactiveCaption; // her skal vi også disable de menupunkter BK ikke kan bruge - ReturpakkerfraDAO1.Enabled := false; - Returpakkerfraboghandler1.Enabled := false; + menuNatxpressReturDAO1.Enabled := false; + menuNatxpressReturfraKunde1.Enabled := false; //Returpakkerfrapakkeshop1.Enabled := false; @@ -817,34 +748,7 @@ if SpecialVersionSted = 'DBK' then begin - //FarveNormal := 'A9F5A9'; // her kan vi evt. overrule ini fil Sted := SpecialVersionSted; - // her skal vi også disable de knapper DBK ikke kan bruge - PanelValg2.Enabled := false; - PanelValg2.Font.Color := clInactiveCaption; - PanelValg3.Enabled := false; - PanelValg3.Font.Color := clInactiveCaption; - PanelValg5.Enabled := false; - PanelValg5.Font.Color := clInactiveCaption; - PanelValg6.Enabled := false; - PanelValg6.Font.Color := clInactiveCaption; - - - // her skal vi også disable de menupunkter DBK ikke kan bruge - ReturpakkerfraDAO1.Enabled := false; - Returpakkerfraboghandler1.Enabled := false; - - Pakkeshoplevering1.Enabled := false; - Returpakkerfrapakkeshop1.Enabled := false; - - if SpecialVersionScanningtype = 'A' then - begin - Scanningtype := '1'; - end - else - begin - Scanningtype := SpecialVersionScanningtype; - end; end; if (SpecialVersionSted = '01') @@ -870,18 +774,18 @@ PanelValg7.Font.Color := clInactiveCaption; // her skal vi også disable de menupunkter Bladhusene (01, 02, 03 og 04) ikke kan bruge - Automatiskvalg1.Enabled := false; + menuAutomatiskvalg1.Enabled := false; - Pakkernormal1.Enabled := false; - ReturpakkerfraDAO1.Enabled := false; - Returpakkerfraboghandler1.Enabled := false; - Budlevering1.Enabled := false; - Pakkeshoplevering1.Enabled := false; - Returpakkerfrapakkeshop1.Enabled := false; + menuNatXpress1.Enabled := false; + menuNatxpressReturDAO1.Enabled := false; + menuNatxpressReturfraKunde1.Enabled := false; + menuDaoDirekte1.Enabled := false; + menuPakkeshop1.Enabled := false; + menuPakkeshopRetur1.Enabled := false; if SpecialVersionScanningtype = 'A' then begin Scanningtype := '4'; - Budlevering1.Enabled := true; + menuDaoDirekte1.Enabled := true; PanelValg4.Font.Color := clWindowText; PanelValg4.Enabled := true; end @@ -890,41 +794,41 @@ Scanningtype := SpecialVersionScanningtype; PanelValgA.Enabled := false; PanelValgA.Font.Color := clInactiveCaption; - AutomatiskValg1.Checked := false; + menuAutomatiskvalg1.Checked := false; PanelValgA.Color := clBtnFace; if Scanningtype = '1' then begin - Pakkernormal1.Enabled := true; + menuNatXpress1.Enabled := true; PanelValg1.Enabled := true; PanelValg1.Font.Color := clWindowText; end; if Scanningtype = '2' then begin - ReturpakkerfraDAO1.Enabled := true; + menuNatxpressReturDAO1.Enabled := true; PanelValg2.Enabled := true; PanelValg2.Font.Color := clWindowText; end; if Scanningtype = '3' then begin - Returpakkerfraboghandler1.Enabled := true; + menuNatxpressReturfraKunde1.Enabled := true; PanelValg3.Enabled := true; PanelValg3.Font.Color := clWindowText; end; if Scanningtype = '4' then begin - Budlevering1.Enabled := true; + menuDaoDirekte1.Enabled := true; PanelValg4.Enabled := true; PanelValg4.Font.Color := clWindowText; end; if Scanningtype = '5' then begin - Pakkeshoplevering1.Enabled := true; + menuPakkeshop1.Enabled := true; PanelValg5.Enabled := true; PanelValg5.Font.Color := clWindowText; end; if Scanningtype = '6' then begin - Returpakkerfrapakkeshop1.Enabled := true; + menuPakkeshopRetur1.Enabled := true; PanelValg6.Enabled := true; PanelValg6.Font.Color := clWindowText; end; @@ -953,12 +857,12 @@ Application.Terminate; end; - if TjekUrls = '1' then // Tjekker urls + if Config.TjekUrls = '1' then // Tjekker urls begin TjekkerUrls(); - if TjekUrls = '-' then // så var der fejl i url - så vi stopper her + if Config.TjekUrls = '-' then // så var der fejl i url - så vi stopper her begin - PlaySound(PWideChar(AlarmLyd)); + PlaySound(PWideChar(Config.AlarmLyd)); MainForm.Color := clRed; RutenummerST.Caption := ''; BoghandlerNavnST.Caption := 'Fejl i urls'; @@ -1005,23 +909,23 @@ if Pakketype = '1' then begin - Storepakker1.Checked := true; + menuStorePakker.Checked := true; radioStorPakke.Checked := true; end else begin - Smpakker1.Checked := true; + menuSmaaPakker.Checked := true; radioLillePakke.Checked := true; end; - if TestFunktionen = '1' then + if Config.TestFunktionen = '1' then begin Testforbindelsen1.Visible := true; Testprinter1.Visible := true; Testlyd1.Visible := true; Testlyd2.Visible := true; end - else if TestFunktionen = '2' then + else if Config.TestFunktionen = '2' then begin Testforbindelsen1.Enabled := false; Testprinter1.Enabled := false; @@ -1036,32 +940,12 @@ Testlyd2.Visible := false; end; - if not FileExists(AlarmLyd) then - begin - AlarmLyd := ''; - end; - if not FileExists(ScannetOkLyd) then - begin - ScannetOkLyd := ''; - end; - - if not FileExists(ScannetOkStorLyd) then - begin - ScannetOkStorLyd := ''; - end; - - - if not FileExists(ScannetOkTilTjekkodeLyd) then - begin - ScannetOkTilTjekkodeLyd := ''; - end; - - LabelPrint := TLabelPrint.Create( self, Config, PrinterNavn ); - LabelPrint.CheckPrintQue('Opstart', PrinterNavn); + LabelPrint := TLabelPrint.Create( self, Config, Config.PrinterNavn ); + LabelPrint.CheckPrintQue('Opstart', Config.PrinterNavn); finally Free; @@ -1070,14 +954,14 @@ // UBD skal p.t. ikke have adgang til flg. funktioner if ( (Sted = '1') or (Sted = '2') or (Sted = '3') or (Sted = '4') ) then begin - ReturpakkerfraDAO1.Visible := false; - Returpakkerfraboghandler1.Visible := false; - Budlevering1.Visible := false; - Storepakker1.Visible := false; - Smpakker1.Visible := false; + menuNatxpressReturDAO1.Visible := false; + menuNatxpressReturfraKunde1.Visible := false; + menuDaoDirekte1.Visible := false; + menuStorePakker.Visible := false; + menuSmaaPakker.Visible := false; Testprinter1.Visible := false; - Pakkeshoplevering1.Visible := false; - Returpakkerfrapakkeshop1.Visible := false; + menuPakkeshop1.Visible := false; + menuPakkeshopRetur1.Visible := false; end; if (BladhusSted > 00) and (BladhusSted < Length(BladhusStedNavn)) then @@ -1089,41 +973,43 @@ // Opbygger PanelManglendePakker information gemScanningtype := Scanningtype; - if PanelValg6.Enabled then - begin - Scanningtype := '6'; - IndlesManglendeScanninger(); - end; - - if PanelValg5.Enabled then - begin - Scanningtype := '5'; - IndlesManglendeScanninger(); - end; - - if PanelValg4.Enabled then - begin - Scanningtype := '4'; - IndlesManglendeScanninger(); - end; - - if PanelValg3.Enabled then - begin - Scanningtype := '3'; - IndlesManglendeScanninger(); - end; - - if PanelValg2.Enabled then - begin - Scanningtype := '2'; - IndlesManglendeScanninger(); - end; + IndlesManglendeScanningerAntal(); - if PanelValg1.Enabled then - begin - Scanningtype := '1'; - IndlesManglendeScanninger(); - end; +// if PanelValg6.Enabled then +// begin +// Scanningtype := '6'; +// IndlesManglendeScanningerAntal(); +// end; +// +// if PanelValg5.Enabled then +// begin +// Scanningtype := '5'; +// IndlesManglendeScanningerAntal(); +// end; +// +// if PanelValg4.Enabled then +// begin +// Scanningtype := '4'; +// IndlesManglendeScanningerAntal(); +// end; +// +// if PanelValg3.Enabled then +// begin +// Scanningtype := '3'; +// IndlesManglendeScanningerAntal(); +// end; +// +// if PanelValg2.Enabled then +// begin +// Scanningtype := '2'; +// IndlesManglendeScanningerAntal(); +// end; +// +// if PanelValg1.Enabled then +// begin +// Scanningtype := '1'; +// IndlesManglendeScanningerAntal(); +// end; Scanningtype := gemScanningtype; @@ -1426,7 +1312,7 @@ if (Length(Stregkode) > 8) then begin // Her skal vi så forespørge pakketype på serveren udfra stregkode feltet - URLStr := Format(UrlFindPakketype,[Stregkode]); + URLStr := Format(Config.UrlFindPakketype,[Stregkode]); try //raise EIdConnClosedGracefully.Create('test'); // KUN TIL TEST WebSvar := IdHTTP1.Get(URLStr); @@ -1481,7 +1367,7 @@ exit; end; - if (Automatiskvalg1.Checked and (Length(Stregkode) > 8) ) then + if (menuAutomatiskvalg1.Checked and (Length(Stregkode) > 8) ) then begin GemStregkode := Stregkode; if Pakketype = 'NatXpress' then @@ -1510,7 +1396,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 @@ -1522,14 +1417,14 @@ end; Stregkode := GemStregkode; end - else if Automatiskvalg1.Checked and (PakkeshopText1.Caption = 'Stregkode') then + else if menuAutomatiskvalg1.Checked and (PakkeshopText1.Caption = 'Stregkode') then begin VisAlarmSkaerm( 'Pakkenummer ikke gyldigt (for kort)' ); exit; end; - if not Automatiskvalg1.Checked then + if not menuAutomatiskvalg1.Checked then begin if ( (Pakkescanningtype <> Scanningtype) and (Scanningtype <> '2') and (Scanningtype <> '3') ) then begin @@ -1540,9 +1435,44 @@ end; end; + // EmballageRepareret skal bare sætte reklamationkoden, + // og så ellers fortsætte med scanning som normalt + if (chkEmballageRepareret.Checked = True) then + begin + URLStr := Format(Config.UrlEmballageRepareret,[Sted,Stregkode]); + WebSvar := IdHTTP1.Get(URLStr); + + chkEmballageRepareret.Checked := False; + end; + + if (chkUdenforSpecifikation.Checked = True) then + begin + URLStr := Format(Config.URLUdenforSpecifikation,[Sted,Stregkode]); + //InputBox( '1', '1', URLStr); + + WebSvar := IdHTTP1.Get(URLStr); + //InputBox( '2', '2', WebSvar ); + + chkUdenforSpecifikation.Checked := False; + LabelPrint.PrintLabel(Stregkode); + + StregkodeST.Caption := ''; + Stregkode := ''; + + RuteNummerST.Caption := ''; + BoghandlerNavnST.Caption := ''; + KommentarST.Caption := 'Retur til leverandør'; + + + + + exit; //leave procedure + end; + + - if (PakkeshopText1.Visible = true) and (PakkeshopText1.Caption = 'Stregkode') and Automatisktjekkodestyring1.Checked then + if (PakkeshopText1.Visible = true) and (PakkeshopText1.Caption = 'Stregkode') and menuAutomatiskTjekkodeStyring.Checked then begin chkScanTjekkode.Checked := false; for i := 0 to length(stregkoderMedTjekkodeArray)-1 do @@ -1555,7 +1485,7 @@ end; end; - if Pakkernormal1.Checked and not Scanogstjekkoden1.Checked then + if menuNatXpress1.Checked and not Scanogstjekkoden1.Checked then begin // Når vi ikke kræver tjekkode er alt ok her BoghandlerStregkode := Stregkode; @@ -1565,7 +1495,7 @@ Stregkode := ''; InitScreen(); end - else if (PakkeshopLevering1.Checked or Pakkernormal1.Checked) and not Scanogstjekkoden1.Checked then + else if (menuPakkeshop1.Checked or menuNatXpress1.Checked) and not Scanogstjekkoden1.Checked then begin // Når vi ikke kræver tjekkode er alt ok her PakkeshopStregkode := Stregkode; @@ -1577,7 +1507,7 @@ Stregkode := ''; InitScreen(); end - else if PakkeshopLevering1.Checked or Pakkernormal1.Checked then + else if menuPakkeshop1.Checked or menuNatXpress1.Checked then if PakkeshopText1.Caption = 'Stregkode' then begin if length(Stregkode) > 5 then @@ -1586,7 +1516,7 @@ BoghandlerStregkode := Stregkode; PakkeshopText1.Caption := 'Tjekkode'; - PlaySound(PWideChar(ScannetOkTilTjekkodeLyd)); + PlaySound(PWideChar(Config.ScannetOkTilTjekkodeLyd)); end else @@ -1603,17 +1533,17 @@ PakkeshopTjekkode := Stregkode; BoghandlerTjekkode := Stregkode; PakkeshopText1.Caption := 'Stregkode'; - if (PakkeshopLevering1.Checked) then - MainForm.Color := TUtils.HexToTColor(FarvePakkeshoplevering); - if (Pakkernormal1.Checked) then - MainForm.Color := TUtils.HexToTColor(FarveNormal); + if (menuPakkeshop1.Checked) then + MainForm.Color := TUtils.HexToTColor(Config.FarvePakkeshoplevering); + if (menuNatXpress1.Checked) then + MainForm.Color := TUtils.HexToTColor(Config.FarveNormal); btnNulstil.Visible := false; end else begin - if (PakkeshopLevering1.Checked) then + if (menuPakkeshop1.Checked) then VisAlarmSkaerm('Du skal scanne en tjekkode til stregkode ' + PakkeshopStregkode); - if (Pakkernormal1.Checked) then + if (menuNatXpress1.Checked) then VisAlarmSkaerm('Du skal scanne en tjekkode til stregkode ' + BoghandlerStregkode); StregKode := ''; @@ -1625,12 +1555,12 @@ InitScreen(); end; - 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 begin - if PakkeshopLevering1.Checked and (PakkeshopStregkode <> '') and (PakkeshopTjekkode <> '') then + if menuPakkeshop1.Checked and (PakkeshopStregkode <> '') and (PakkeshopTjekkode <> '') then StregKode := PakkeshopStregkode; - if Pakkernormal1.Checked and ((BoghandlerStregkode <> '') and (BoghandlerTjekkode <> '') or not Scanogstjekkoden1.Checked) then + if menuNatXpress1.Checked and ((BoghandlerStregkode <> '') and (BoghandlerTjekkode <> '') or not Scanogstjekkoden1.Checked) then StregKode := BoghandlerStregkode; StregkodeST.Caption := StregKode; try @@ -1644,7 +1574,7 @@ exit; end; - if (Pakkernormal1.Checked or Budlevering1.Checked or PakkeshopLevering1.Checked) then + if (menuNatXpress1.Checked or menuDaoDirekte1.Checked or menuPakkeshop1.Checked or menuPakkeshopRetur1.Checked) then begin PrintLabel(RuteNummer, Kommentar, BoghandlerNavn, Koreliste, SmsKode, DBKbane, Leveringssted, PrintNyLabel); pakkeErScannet := pos('PAKKEN ER SCANNET', BoghandlerNavn); @@ -1660,34 +1590,34 @@ tjekkodemangler := pos('Tjekkode mangler', Kommentar); if (pakkeErScannet > 0) or (pakkeForkertSted > 0) or (tjekkodemangler > 0) then begin - PlaySound(PWideChar(AlarmLyd)); + PlaySound(PWideChar(Config.AlarmLyd)); btnNulstil.Visible := true; MainForm.Color := clRed; end; end; - 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 begin MainForm.Color := TUtils.HexToTColor(Farve); - if Storepakker1.Checked then + if menuStorePakker.Checked then begin - PlaySound(PWideChar(ScannetOkStorLyd)); + PlaySound(PWideChar(Config.ScannetOkStorLyd)); end else begin - PlaySound(PWideChar(ScannetOkLyd)); + PlaySound(PWideChar(Config.ScannetOkLyd)); end; btnNulstil.Visible := false; end - else if (Returpakkerfradao1.Checked or Returpakkerfraboghandler1.Checked) then + else if (menuNatxpressReturDAO1.Checked or menuNatxpressReturfraKunde1.Checked) then begin MainForm.Color := TUtils.HexToTColor(Farve); - if Storepakker1.Checked then + if menuStorePakker.Checked then begin - PlaySound(PWideChar(ScannetOkStorLyd)); + PlaySound(PWideChar(Config.ScannetOkStorLyd)); end else begin - PlaySound(PWideChar(ScannetOkLyd)); + PlaySound(PWideChar(Config.ScannetOkLyd)); end; btnNulstil.Visible := false; end @@ -1706,15 +1636,15 @@ if not btnNulstil.Visible then begin - If (Budlevering1.Checked) then + If (menuDaoDirekte1.Checked) then begin - if Storepakker1.Checked then + if menuStorePakker.Checked then begin - PlaySound(PWideChar(ScannetOkStorLyd)); + PlaySound(PWideChar(Config.ScannetOkStorLyd)); end else begin - PlaySound(PWideChar(ScannetOkLyd)); + PlaySound(PWideChar(Config.ScannetOkLyd)); end; InitLillePakke(); end; @@ -1768,9 +1698,9 @@ WebSvar : String; URLStr : String; begin - if UrlSendPrograminfo <> '' then + if Config.UrlSendPrograminfo <> '' then begin - URLStr := Format(UrlSendPrograminfo,[ExtractFileName(ParamStr(0)), Sted, Scanningtype, Infotype, Info]); + URLStr := Format(Config.UrlSendPrograminfo,[ExtractFileName(ParamStr(0)), Sted, Scanningtype, Infotype, Info]); try //raise EIdConnClosedGracefully.Create('test'); // KUN TIL TEST WebSvar := IdHTTP1.Get(URLStr); @@ -1783,7 +1713,7 @@ ShowMessage(logTekst); SkrivScanningLogFil(logTekst); // Vi nulstiller lige url feltet så rutinen ikke kaldes igen i forbindelse med lukning af programmet - UrlSendPrograminfo := ''; + Config.UrlSendPrograminfo := ''; Application.Terminate; end; end; @@ -1802,11 +1732,12 @@ begin - 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 begin for i := ListBox2.items.count-1 downto 0 do if pos(StregKode,ListBox2.items[i]) <> 0 then begin + wrkAntalSenere := 0;//initial Value // Ajourføring af tæller for manglende pakker (scanninger) wrkAntal := StaticTextManglendePakker.Caption; @@ -1951,14 +1882,14 @@ begin Altidprintepakkelabel1.Enabled := false; - Pakkernormal1.Visible := false; - ReturpakkerfraDAO1.Visible := false; - Returpakkerfraboghandler1.Visible := false; + menuNatXpress1.Visible := false; + menuNatxpressReturDAO1.Visible := false; + menuNatxpressReturfraKunde1.Visible := false; Sprgefterboghandlernummer1.Enabled := false; ListBox1.Visible := true; // TestFunktionen := '1'; - if Budlevering1.Checked then + if menuDaoDirekte1.Checked then begin IndlesScanningLogFil(); end; @@ -1977,20 +1908,20 @@ BladhusKontrolfil_server := 'franordjyske/RuteKontrol.txt'; BladhusKontrolfil_lokal := 'RuteKontrol.txt'; DownloadBladhusKontrolfil(); - IndlesManglendeScanninger(); + IndlesManglendeScanningerAntal(); end; 02 : begin; // BK Testprinter1.Visible := true; - Smpakker1.Enabled := true; - Storepakker1.Enabled := true; + menuSmaaPakker.Enabled := true; + menuStorePakker.Enabled := true; radioStorPakke.Enabled := true; radioLillePakke.Enabled := true; BtnDownloadKontrolfil.Enabled := false; // kontrolfil bruges ikke her BtnOpdaterListen.Enabled := true; IdFTP1.Passive := true; IdFTP1.PassiveUseControlHost := true; - IndlesManglendeScanninger(); + IndlesManglendeScanningerAntal(); end; 03 : begin; // FD @@ -2016,12 +1947,12 @@ BladhusKontrolfil_server := 'frafd/RuteKontrol.txt'; BladhusKontrolfil_lokal := 'RuteKontrol.txt'; DownloadBladhusKontrolfil(); - IndlesManglendeScanninger(); + IndlesManglendeScanningerAntal(); end; 04 : begin; // DBK Testprinter1.Visible := true; - Smpakker1.Enabled := true; - Storepakker1.Enabled := true; + menuSmaaPakker.Enabled := true; + menuStorePakker.Enabled := true; radioStorPakke.Enabled := true; radioLillePakke.Enabled := true; BtnDownloadKontrolfil.Enabled := false; // kontrolfil bruges ikke her @@ -2042,7 +1973,7 @@ pakkestorrelse : String; PrintNyLabelInteger : Integer; - PakkeshopLabel: TPakkeshopLabel; + PakkeshopLabel: TLabelData; begin if radioStorPakke.Checked then begin @@ -2054,37 +1985,37 @@ end; - if Pakkernormal1.Checked then + if menuNatXpress1.Checked then begin if (BoghandlerTjekkode = '') then begin BoghandlerTjekkode := '-1'; end; - URLStr := Format(UrlNormal,[Sted, PakkeNr, BoghandlerNummer, BoghandlerTjekkode]); + URLStr := Format(Config.UrlNormal,[Sted, PakkeNr, BoghandlerNummer, BoghandlerTjekkode]); end - else if ReturpakkerfraDAO1.Checked then + else if menuNatxpressReturDAO1.Checked then begin - URLStr := Format(UrlReturDAO,[Sted, PakkeNr, BoghandlerNummer, 'DAO', pakkestorrelse]); + URLStr := Format(Config.UrlReturDAO,[Sted, PakkeNr, BoghandlerNummer, 'DAO', pakkestorrelse]); end - else if Returpakkerfraboghandler1.Checked then + else if menuNatxpressReturfraKunde1.Checked then begin - URLStr := Format(UrlReturBoghandler,[Sted, PakkeNr, BoghandlerNummer, 'Boghandler', pakkestorrelse]); + URLStr := Format(Config.UrlReturBoghandler,[Sted, PakkeNr, BoghandlerNummer, 'Boghandler', pakkestorrelse]); end - else if Budlevering1.Checked then + else if menuDaoDirekte1.Checked then begin - URLStr := Format(UrlBudlevering,[Sted, PakkeNr, 'bud', pakkestorrelse]); + URLStr := Format(Config.UrlBudlevering,[Sted, PakkeNr, 'bud', pakkestorrelse]); end - else if Pakkeshoplevering1.Checked then + else if menuPakkeshop1.Checked then begin - URLStr := Format(UrlPakkeshoplevering,[Sted, PakkeNr, PakkeshopTjekkode]); + URLStr := Format(Config.UrlPakkeshoplevering,[Sted, PakkeNr, PakkeshopTjekkode]); end - else if Returpakkerfrapakkeshop1.Checked then + else if menuPakkeshopRetur1.Checked then begin - URLStr := Format(UrlReturPakkeshop,[Sted, PakkeNr]); + URLStr := Format(Config.UrlReturPakkeshop,[Sted, PakkeNr]); end else if menuIndlevering.Checked then begin - URLStr := Format(UrlIndleveringsPakke,[Sted, PakkeNr]); + URLStr := Format(Config.UrlIndleveringsPakke,[Sted, PakkeNr]); end else begin @@ -2093,7 +2024,7 @@ if chkForstorTilDirekte.Checked then // Denne skal være efter if/else kæden da den overrider de øvrige URL'er begin - URLStr := Format(URLOmdirigerTilPakkeshop,[Sted, PakkeNr]); + URLStr := Format(Config.URLOmdirigerTilPakkeshop,[Sted, PakkeNr]); end; try @@ -2120,7 +2051,7 @@ XMLDocument1.LoadFromXML(WebSvar); try - if Pakkeshoplevering1.Checked or Returpakkerfrapakkeshop1.Checked then + if menuPakkeshop1.Checked or menuPakkeshopRetur1.Checked then begin RuteNummer := XMLDocument1.ChildNodes.FindNode('PakkeKontrol').ChildNodes.FindNode('PakkeshopTurid').Text; Kommentar := XMLDocument1.ChildNodes.FindNode('PakkeKontrol').ChildNodes.FindNode('Stregkodematch').Text; @@ -2128,18 +2059,16 @@ BoghandlerNavn := BoghandlerNavn + ' ' + XMLDocument1.ChildNodes.FindNode('PakkeKontrol').ChildNodes.FindNode('PakkeshopNavn').Text; PrintNyLabel := False; - if Pakkeshoplevering1.Checked then + try + PrintNyLabelInteger := StrToInt(XMLDocument1.ChildNodes.FindNode('PakkeKontrol').ChildNodes.FindNode('PakkeshopPrintPakkeLabel').Text); + except on e:exception do + PrintNyLabelInteger := 0; + end; + if (PrintNyLabelInteger = 1) then begin - try - PrintNyLabelInteger := StrToInt(XMLDocument1.ChildNodes.FindNode('PakkeKontrol').ChildNodes.FindNode('PakkeshopPrintPakkeLabel').Text); - except on e:exception do - PrintNyLabelInteger := 0; - end; - if (PrintNyLabelInteger = 1) then - begin - PrintNyLabel := True; - end; + PrintNyLabel := True; end; + end else if menuIndlevering.Checked or chkForstorTilDirekte.Checked then begin @@ -2151,12 +2080,14 @@ if (Kommentar = 'Ok') then begin PrintNyLabel := True; //Indleveringskode vil ALTID udskrive label - PakkeshopLabel := TPakkeshopLabel.Create( XMLDocument1 ); //Opret struct og parse xml doc + PakkeshopLabel := TLabelData.Create( XMLDocument1 ); //Opret struct og parse xml doc RuteNummer := PakkeshopLabel.Koreliste + ' -> ' + PakkeshopLabel.PakkeshopTurid; Stregkode := PakkeshopLabel.Stregkode; - LabelPrint.PrintPakkeshopLabel( PakkeshopLabel ); - chkForstorTilDirekte.Checked := false; + LabelPrint.PrintLabel(PakkeshopLabel.Stregkode); + +// LabelPrint.PrintFuldPakkeLabel( PakkeshopLabel ); +// chkForstorTilDirekte.Checked := false; end; @@ -2169,7 +2100,7 @@ Kommentar := XMLDocument1.ChildNodes.FindNode('BogpakkeKontrol').ChildNodes.FindNode('Kommentar').Text; BoghandlerNavn := XMLDocument1.ChildNodes.FindNode('BogpakkeKontrol').ChildNodes.FindNode('BoghandlerNavn').Text; Leveringssted := XMLDocument1.ChildNodes.FindNode('BogpakkeKontrol').ChildNodes.FindNode('Leveringssted').Text; - if Budlevering1.Checked then + if menuDaoDirekte1.Checked then begin try SmsKode := XMLDocument1.ChildNodes.FindNode('BogpakkeKontrol').ChildNodes.FindNode('SmsKode').Text; @@ -2200,21 +2131,14 @@ begin if (Leveringssted <> BladhusStedKode[BladhusSted]) and (BladhusStedKode[BladhusSted] <> 'DBK') then begin - Kommentar := Kommentar + ' Pakke burde være hos DAO Distribution'; - PrintNyLabel := False; + Kommentar := Kommentar + ' Pakke burde være hos ' + Leveringssted; + //PrintNyLabel := False; //ved fuld-daekning / X-ruter skal vi altid skrive label alligevel end; end - else if (Budlevering1.Checked) and (Leveringssted <> Sted) then + else if (menuDaoDirekte1.Checked) and (Leveringssted <> Sted) And (Leveringssted <> '') then begin - if (Leveringssted = 'E') and (Sted = 'DBK') then - begin - // Det er ok at DBK scanner pakker til E (Schenker) - end - else - begin - Kommentar := Kommentar + ' Pakke burde være hos DAO Distribution'; - PrintNyLabel := False; - end; + Kommentar := Kommentar + ' Pakke burde være hos ' + Leveringssted; + //PrintNyLabel := False; //ved fuld-daekning / X-ruter skal vi altid skrive label alligevel end; except on e:exception do raise exception.CreateFmt('Fejl i XML-format: %s',[e.Message]); @@ -2233,7 +2157,7 @@ //Label1.Caption := Kommentar; // bruges hvis der skal vises linieskift - det kan man ikke i en staticText BoghandlerNavnST.Caption := StringReplace(BoghandlerNavn, ' & ', ' && ', [rfReplaceAll, rfIgnoreCase]); List1msg := TimeToStr(now) + '; '; - if Pakkeshoplevering1.Checked then + if menuPakkeshop1.Checked then List1msg := List1msg + PakkeshopStregkode + ' ' + PakkeshopTjekkode + '; ' + KommentarST.Caption + '; '; List1Pakkestorrelse := ''; if radioStorPakke.Checked then @@ -2245,21 +2169,21 @@ List1Pakkestorrelse := 'Lille pakke'; end; List1msg := List1msg + BoghandlerNavn + '; '; - if ReturpakkerfraDAO1.Checked then + if menuNatxpressReturDAO1.Checked then begin List1msg := List1msg + RightStr(Kommentar, Length(Kommentar)-8); end; - if Returpakkerfraboghandler1.Checked then + if menuNatxpressReturfraKunde1.Checked then begin List1msg := List1msg + RightStr(Kommentar, Length(Kommentar)-16); end; - if ReturpakkerfraDAO1.Checked or Returpakkerfraboghandler1.Checked then + if menuNatxpressReturDAO1.Checked or menuNatxpressReturfraKunde1.Checked then List1msg := List1msg + '; ' + List1Pakkestorrelse; if length(BoghNr) > 0 then begin List1Msg := List1Msg + '; Indtastet ' + BoghNr; end; - if Budlevering1.Checked then + if menuDaoDirekte1.Checked then begin List1msg := TimeToStr(now) + '; ' + Kommentar + '; ' + BoghandlerNavn; if (radioStorPakke.Checked) then @@ -2271,11 +2195,11 @@ List1msg := List1msg + '; Lille pakke'; end; end; - if Returpakkerfrapakkeshop1.Checked then + if menuPakkeshopRetur1.Checked then begin List1msg := List1msg + Stregkode + ' ' + RightStr(Kommentar, Length(Kommentar)-6); end; - if Pakkernormal1.Checked then + if menuNatXpress1.Checked then begin if (Kommentar = '***** Kommentar *****') // fra test printer funktionen or (BoghandlerNavn = 'Forbindelse ok') // fra test forbindelse funktionen @@ -2315,7 +2239,14 @@ kontrolKoreliste : string; nytRuteNummer, nyFarve : String; begin - if Budlevering1.Checked then +// if (PrintNyLabel = True OR chkAltidPrintLabel.Checked = True) then +// begin +// LabelPrint.PrintLabel( Stregkode ); +// end; +// +// exit; + + if menuDaoDirekte1.Checked then RuteNummerST.Color := TUtils.HexToTColor(Farve); pakkeErScannet := pos('PAKKEN ER SCANNET', BoghandlerNavn); @@ -2353,13 +2284,13 @@ end; end else - if Budlevering1.Checked then + if menuDaoDirekte1.Checked then begin if (BoghandlerNavn = 'Ukendt pakke') then begin PrintNyLabel := false; - PlaySound(PWideChar(AlarmLyd)); + PlaySound(PWideChar(Config.AlarmLyd)); MainForm.Color := clRed; btnNulstil.Visible := true; @@ -2379,14 +2310,14 @@ logTekst := RightStr(List1Msg, Length(List1Msg)-10); SkrivScanningLogFil(logTekst); - if (PrinterNavn = 'Ingen') then - begin - PrintNyLabel := false; - end; +// if (Config.PrinterNavn = 'Ingen') then +// begin +// PrintNyLabel := false; +// end; if (PrintNyLabel = false) then // Hvis vi ikke printer label skal vi vise en 'rød skærm' alarm begin - PlaySound(PWideChar(AlarmLyd)); + PlaySound(PWideChar(Config.AlarmLyd)); MainForm.Color := clRed; btnNulstil.Visible := true; end; @@ -2412,7 +2343,7 @@ if (PrintNyLabel = false) then // Hvis vi ikke printer label skal vi vise en 'rød skærm' alarm begin - PlaySound(PWideChar(AlarmLyd)); + PlaySound(PWideChar(Config.AlarmLyd)); MainForm.Color := clRed; btnNulstil.Visible := true; end; @@ -2422,7 +2353,7 @@ end; - if Budlevering1.Checked then + if menuDaoDirekte1.Checked then begin case BladhusSted of 00 : begin; @@ -2434,7 +2365,8 @@ if PrintNyLabel or (RuteNummer = 'Rutenr') then // 20150304: slut begin - LabelPrint.SendTilPrinter(kontrolKoreliste, RuteNummer, Kommentar, BoghandlerNavn, Koreliste, SmsKode, DBKbane, Leveringssted, PrintNyLabel, BoghandlerNummer); + //LabelPrint.SendTilPrinter(kontrolKoreliste, RuteNummer, Kommentar, BoghandlerNavn, Koreliste, SmsKode, DBKbane, Leveringssted, PrintNyLabel, BoghandlerNummer); + LabelPrint.PrintLabel( Stregkode ); end; end; 01 : begin; @@ -2442,13 +2374,15 @@ // Ovenstående test er lidt speciel fordi der i programmet nogle steder er byttet rundt på rute og køreliste // Meningen er at der kun skal printes hvis der er forskel i kørelisterne eller ruterne - eller vi kommer fra test funktionen (Rutenr = 'Rutenr') begin - LabelPrint.SendTilPrinter(kontrolKoreliste, RuteNummer, Kommentar, BoghandlerNavn, Koreliste, SmsKode, DBKbane, Leveringssted, PrintNyLabel, BoghandlerNummer); + //LabelPrint.SendTilPrinter(kontrolKoreliste, RuteNummer, Kommentar, BoghandlerNavn, Koreliste, SmsKode, DBKbane, Leveringssted, PrintNyLabel, BoghandlerNummer); + LabelPrint.PrintLabel( Stregkode ); end; end; 02 : begin; if PrintNyLabel or (RuteNummer = 'Rutenr') then // Hvis RuteNummer = 'Rutenr' er vi igang med en printer test begin - LabelPrint.SendTilPrinter(kontrolKoreliste, RuteNummer, Kommentar, BoghandlerNavn, Koreliste, SmsKode, DBKbane, Leveringssted, PrintNyLabel, BoghandlerNummer); + //LabelPrint.SendTilPrinter(kontrolKoreliste, RuteNummer, Kommentar, BoghandlerNavn, Koreliste, SmsKode, DBKbane, Leveringssted, PrintNyLabel, BoghandlerNummer); + LabelPrint.PrintLabel( Stregkode ); end; end; 03 : begin; @@ -2456,32 +2390,32 @@ // Ovenstående test er lidt speciel fordi der i programmet nogle steder er byttet rundt på rute og køreliste // Meningen er at der kun skal printes hvis der er forskel i kørelisterne eller ruterne - eller vi kommer fra test funktionen (Rutenr = 'Rutenr') begin - LabelPrint.SendTilPrinter(kontrolKoreliste, RuteNummer, Kommentar, BoghandlerNavn, Koreliste, SmsKode, DBKbane, Leveringssted, PrintNyLabel, BoghandlerNummer); + //LabelPrint.SendTilPrinter(kontrolKoreliste, RuteNummer, Kommentar, BoghandlerNavn, Koreliste, SmsKode, DBKbane, Leveringssted, PrintNyLabel, BoghandlerNummer); + LabelPrint.PrintLabel( Stregkode ); end; end; 04 : begin; if PrintNyLabel or (RuteNummer = 'Rutenr') then // Hvis RuteNummer = 'Rutenr' er vi igang med en printer test begin - LabelPrint.SendTilPrinter(kontrolKoreliste, RuteNummer, Kommentar, BoghandlerNavn, Koreliste, SmsKode, DBKbane, Leveringssted, PrintNyLabel, BoghandlerNummer); + //LabelPrint.SendTilPrinter(kontrolKoreliste, RuteNummer, Kommentar, BoghandlerNavn, Koreliste, SmsKode, DBKbane, Leveringssted, PrintNyLabel, BoghandlerNummer); + LabelPrint.PrintLabel( Stregkode ); end; end; - else - ShowMessage('Ukendt Bladhus sted: ' + IntToStr(BladhusSted)); end; end; // Hvis det er normal bogpakke modtagelse til UBD skal vi p.t. ikke printe - men stopper her - 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 begin exit; end; - 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 begin end else begin - if ( (PrinterNavn <> 'Ingen') and (PrintNyLabel or chkAltidPrintLabel.Checked) and (RuteNummer <> 'Ukendt') or (RuteNummer = 'Rutenr')) then + if ( (Config.PrinterNavn <> 'Ingen') and (PrintNyLabel or chkAltidPrintLabel.Checked) and (RuteNummer <> 'Ukendt') or (RuteNummer = 'Rutenr')) then begin logTekst := 'Printer label type '; if (chkAltidPrintLabel.Checked) then @@ -2499,8 +2433,18 @@ logTekst := logTekst + ' for '+BoghandlerNavn; SkrivScanningLogFil(logTekst); - LabelPrint.PrintDaodirekteLabel( RuteNummer, Kommentar, BoghandlerNavn) ; - + //LabelPrint.PrintDaodirekteLabel( RuteNummer, Kommentar, BoghandlerNavn) ; + LabelPrint.PrintLabel( Stregkode ); + + end; + end; + + // tilføjet 20161020 + if (menuPakkeshop1.Checked OR menuPakkeshopRetur1.Checked) then + begin + if (PrintNyLabel = True OR chkAltidPrintLabel.Checked = True) then + begin + LabelPrint.PrintLabel( Stregkode ); end; end; @@ -2510,13 +2454,13 @@ procedure TMainForm.radioStorPakkeClick(Sender: TObject); begin - Storepakker1.Checked := true; + menuStorePakker.Checked := true; radioStorPakke.Checked := true; end; procedure TMainForm.radioLillePakkeClick(Sender: TObject); begin - Smpakker1.Checked := true; + menuSmaaPakker.Checked := true; radioLillePakke.Checked := true; end; @@ -2534,6 +2478,22 @@ end; +procedure TMainForm.chkUdenforSpecifikationClick(Sender: TObject); +begin + if (chkUdenforSpecifikation.Checked = true) then + begin + chkEmballageRepareret.Checked := false; + end; +end; + +procedure TMainForm.chkEmballageRepareretClick(Sender: TObject); +begin + if (chkEmballageRepareret.Checked = true) then + begin + chkUdenforSpecifikation.Checked := false; + end; +end; + procedure TMainForm.chkAltidPrintLabelClick(Sender: TObject); begin if chkAltidPrintLabel.Checked then @@ -2547,6 +2507,8 @@ end; + + procedure TMainForm.chkScanTjekkodeClick(Sender: TObject); begin if chkScanTjekkode.Checked then @@ -2559,7 +2521,7 @@ end; end; -procedure TMainForm.Pakkeshoplevering1Click(Sender: TObject); +procedure TMainForm.menuPakkeshop1Click(Sender: TObject); begin Scanningtype := '5'; InitPakkeshoplevering(); @@ -2568,7 +2530,7 @@ procedure TMainForm.NulstilAutomatiskValg(); begin - Automatiskvalg1.Checked := false; + menuAutomatiskvalg1.Checked := false; PanelValgA.Color := clBtnFace; PanelValgA.Font.Color := clWindowText; @@ -2580,7 +2542,7 @@ // her skal vi også disable knappen for 01, 02, 03 og 04 (NS, BK, FD og DBK) PanelValgA.Enabled := false; PanelValgA.Font.Color := clInactiveCaption; - Automatiskvalg1.Enabled := false; + menuAutomatiskvalg1.Enabled := false; end; // 20150317: slut end; @@ -2606,83 +2568,83 @@ // Tjekker UrlNormal if PanelValg1.Enabled = true then begin - TjekkerEnkeltUrl('UrlNormal', UrlNormal, urlFejl); + TjekkerEnkeltUrl('UrlNormal', Config.UrlNormal, urlFejl); end; // Tjekker UrlReturDAO if PanelValg2.Enabled = true then begin - TjekkerEnkeltUrl('UrlReturDAO', UrlReturDAO, urlFejl); + TjekkerEnkeltUrl('UrlReturDAO', Config.UrlReturDAO, urlFejl); end; // Tjekker UrlReturBoghandler if PanelValg3.Enabled = true then begin - TjekkerEnkeltUrl('UrlReturBoghandler', UrlReturBoghandler, urlFejl); + TjekkerEnkeltUrl('UrlReturBoghandler', Config.UrlReturBoghandler, urlFejl); end; // Tjekker UrlBudlevering if PanelValg4.Enabled = true then begin - TjekkerEnkeltUrl('UrlBudlevering', UrlBudlevering, urlFejl); + TjekkerEnkeltUrl('UrlBudlevering', Config.UrlBudlevering, urlFejl); end; // Tjekker UrlPakkeshoplevering if PanelValg5.Enabled = true then begin - TjekkerEnkeltUrl('UrlPakkeshoplevering', UrlPakkeshoplevering, urlFejl); + TjekkerEnkeltUrl('UrlPakkeshoplevering', Config.UrlPakkeshoplevering, urlFejl); end; // Tjekker UrlReturPakkeshop if PanelValg6.Enabled = true then begin - TjekkerEnkeltUrl('UrlReturPakkeshop', UrlReturPakkeshop, urlFejl); + TjekkerEnkeltUrl('UrlReturPakkeshop', Config.UrlReturPakkeshop, urlFejl); end; // Tjekker UrlManglendeScanninger if (PanelValg1.Enabled = true) or (PanelValg4.Enabled = true) then begin - TjekkerEnkeltUrl('UrlManglendeScanninger', UrlManglendeScanninger, urlFejl); + TjekkerEnkeltUrl('UrlManglendeScanninger', Config.UrlManglendeScanninger, urlFejl); end; // Tjekker UrlPakkeshopManglendeScanninger if PanelValg5.Enabled = true then begin - TjekkerEnkeltUrl('UrlPakkeshopManglendeScanninger', UrlPakkeshopManglendeScanninger, urlFejl); + TjekkerEnkeltUrl('UrlPakkeshopManglendeScanninger', Config.UrlPakkeshopManglendeScanninger, urlFejl); end; // Tjekker UrlPakkeshopManglendeReturScanninger if PanelValg6.Enabled = true then begin - TjekkerEnkeltUrl('UrlPakkeshopManglendeReturScanninger', UrlPakkeshopManglendeReturScanninger, urlFejl); + TjekkerEnkeltUrl('UrlPakkeshopManglendeReturScanninger', Config.UrlPakkeshopManglendeReturScanninger, urlFejl); end; // Tjekker UrlIndleveringsPakke og UrlIndleveringsPakkeManglendeScanninger if PanelValg7.Enabled = true then begin - TjekkerEnkeltUrl('UrlIndleveringsPakke', UrlIndleveringsPakke, urlFejl); - TjekkerEnkeltUrl('UrlIndleveringsPakkeManglendeScanninger', UrlIndleveringsPakkeManglendeScanninger, urlFejl); + TjekkerEnkeltUrl('UrlIndleveringsPakke', Config.UrlIndleveringsPakke, urlFejl); + TjekkerEnkeltUrl('UrlIndleveringsPakkeManglendeScanninger', Config.UrlIndleveringsPakkeManglendeScanninger, urlFejl); end; // Tjekker UrlEKLoverforsel if PanelValg1.Enabled = true then begin - TjekkerEnkeltUrl('UrlEKLoverforsel', UrlEKLoverforsel, urlFejl); + TjekkerEnkeltUrl('UrlEKLoverforsel', Config.UrlEKLoverforsel, urlFejl); end; // Tjekker UrlEKLoverforselPakkeshop if PanelValg5.Enabled = true then begin - TjekkerEnkeltUrl('UrlEKLoverforselPakkeshop', UrlEKLoverforselPakkeshop, urlFejl); + TjekkerEnkeltUrl('UrlEKLoverforselPakkeshop', Config.UrlEKLoverforselPakkeshop, urlFejl); end; // Tjekker UrlFindPakketype - TjekkerEnkeltUrl('UrlFindPakketype', UrlFindPakketype, urlFejl); + TjekkerEnkeltUrl('UrlFindPakketype', Config.UrlFindPakketype, urlFejl); // Tjekker UrlSendPrograminfo - TjekkerEnkeltUrl('UrlSendPrograminfo', UrlSendPrograminfo, urlFejl); + TjekkerEnkeltUrl('UrlSendPrograminfo', Config.UrlSendPrograminfo, urlFejl); @@ -2691,7 +2653,7 @@ SkrivScanningLogFil(logTekst); Except - TjekUrls := '-'; // markerer at der var fejl + Config.TjekUrls := '-'; // markerer at der var fejl end; end; @@ -2711,17 +2673,17 @@ inc(urlFejl); // Optæller antal fejl logTekst := UrlNavn + ' svarer ikke: ' + Url; ListBox1.Items.Insert(0,TimeToStr(now) + ': ' + logTekst); - if TjekUrls = '1' then + if Config.TjekUrls = '1' then begin logTekst := logTekst + crlf + crlf + 'Programmet afsluttes... '; end; SkrivScanningLogFil(logTekst); - if TjekUrls = '1' then + if Config.TjekUrls = '1' then begin ShowMessage(logTekst); - UrlSendPrograminfo := ''; // Her sletter vi lige url, så der ikke forsøges at sende besked ved program slut + Config.UrlSendPrograminfo := ''; // Her sletter vi lige url, så der ikke forsøges at sende besked ved program slut Application.Terminate; raise Exception.Create('UrlFejl'); @@ -2802,7 +2764,7 @@ if BoghandlerNavnST.Caption = 'Fejl i forbindelse til server' then begin ShowMessage('Programmet afbrydes...'); - UrlSendPrograminfo := ''; // Her sletter vi lige url, så der ikke forsøges at sende besked ved program slut + Config.UrlSendPrograminfo := ''; // Her sletter vi lige url, så der ikke forsøges at sende besked ved program slut Application.Terminate; exit; end; @@ -2813,7 +2775,7 @@ begin MainForm.Color := TUtils.HexToTColor(Farve); end; - if (Budlevering1.Checked) then + if (menuDaoDirekte1.Checked) then begin InitLillePakke(); end; @@ -2877,7 +2839,7 @@ begin // Skal ikke toggle men bare sætte funktionen on // Fravælges ved at vælge en scanningstype - AutomatiskValg1.Checked := true; + menuAutomatiskvalg1.Checked := true; PanelValgA.Color := clGreen; PanelValgA.Font.Color := clWhite; @@ -2885,7 +2847,7 @@ end; -procedure TMainForm.Pakkernormal1Click(Sender: TObject); +procedure TMainForm.menuNatXpress1Click(Sender: TObject); begin Scanningtype := '1'; NulstilAutomatiskValg(); @@ -2904,12 +2866,12 @@ Leveringssted : String; orgTjekUrls : String; begin - orgTjekUrls := TjekUrls; - if (TjekUrls = '1') or (TjekUrls = '2') then + orgTjekUrls := Config.TjekUrls; + if (Config.TjekUrls = '1') or (Config.TjekUrls = '2') then begin TjekkerUrls(); end; - if TjekUrls = '-' then + if Config.TjekUrls = '-' then begin //ShowMessage('Der var fejl i een eller flere urls - se logvinduet'); RuteNummer := ''; @@ -2918,7 +2880,7 @@ Koreliste := ''; UpdateScreen(RuteNummer, Kommentar, BoghandlerNavn, Koreliste, ''); // Her kommer en alarm og rød skærm - PlaySound(PWideChar(AlarmLyd)); + PlaySound(PWideChar(Config.AlarmLyd)); MainForm.Color := clRed; btnNulstil.Visible := true; end @@ -2931,10 +2893,12 @@ SmsKode := '999999'; DBKbane := '999'; Leveringssted := 'XXX'; + + PrintLabel(RuteNummer, Kommentar, BoghandlerNavn, Koreliste, SmsKode, DBKbane, Leveringssted, Falsk); FocusControl(StregkodeST); end; - TjekUrls := orgTjekUrls; + Config.TjekUrls := orgTjekUrls; end; @@ -2944,42 +2908,46 @@ Kommentar : String; BoghandlerNavn : String; Koreliste : String; - Falsk : Boolean; - SmsKode : String; - DBKbane : String; - Leveringssted : String; +// Falsk : Boolean; +// SmsKode : String; +// DBKbane : String; +// Leveringssted : String; begin RuteNummer := 'Rutenr'; Kommentar := '***** Kommentar *****'; BoghandlerNavn := 'Modtagernavn'; - Falsk := False; +// Falsk := False; if (LabelPrint.GetPrinterCount() = 0) then begin ShowMessage('Der er ikke installeret en printer på denne PC.'); end - else if PrinterNavn = 'Ingen' then - begin - ShowMessage('Der er fravalgt printer i dette program.'); - end +// else if Config.PrinterNavn = 'Ingen' then //Det giver ikke længere mening at kunne fravælge printer +// begin +// ShowMessage('Der er fravalgt printer i dette program.'); +// end else begin UpdateScreen(RuteNummer, Kommentar, BoghandlerNavn, Koreliste, ''); - SmsKode := '999999'; - DBKbane := '999'; - Leveringssted := 'XXX'; - PrintLabel(RuteNummer, Kommentar, BoghandlerNavn, Koreliste, SmsKode, DBKbane, Leveringssted, Falsk); - LabelPrint.CheckPrintQue('Test', PrinterNavn); +// SmsKode := '999999'; +// DBKbane := '999'; +// Leveringssted := 'XXX'; +// PrintLabel(RuteNummer, Kommentar, BoghandlerNavn, Koreliste, SmsKode, DBKbane, Leveringssted, Falsk); + + LabelPrint.PrintTestLabel(); + + LabelPrint.CheckPrintQue('Test', Config.PrinterNavn); + end; FocusControl(StregkodeST); end; procedure TMainForm.Timer1Timer(Sender: TObject); begin - if (TjekPrinter = '1') then + if (Config.TjekPrinter = '1') then begin - LabelPrint.CheckPrintQue('Timer', PrinterNavn); + LabelPrint.CheckPrintQue('Timer', Config.PrinterNavn); end else begin @@ -3033,13 +3001,14 @@ tekst := tekst+crlf+crlf; tekst := tekst+crlf+crlf+' ********** DETTE ER KUN EN TEST VERSION **********'; tekst := tekst+crlf+crlf; - tekst := tekst+crlf+crlf+'Url: '+url; + tekst := tekst+crlf+crlf+'Url: ' + Url; end; MessageBox(Handle, PWideChar(tekst), 'Information', MB_OK); end; + procedure TMainForm.ListBox1DrawItem(Control: TWinControl; Index: Integer; Rect: TRect; State: TOwnerDrawState); var @@ -3154,14 +3123,14 @@ end; -procedure TMainForm.ReturpakkerfraDAO1Click(Sender: TObject); +procedure TMainForm.menuNatxpressReturDAO1Click(Sender: TObject); begin Scanningtype := '2'; NulstilAutomatiskValg(); InitReturFraDao(); end; -procedure TMainForm.Returpakkerfrapakkeshop1Click(Sender: TObject); +procedure TMainForm.menuPakkeshopRetur1Click(Sender: TObject); begin Scanningtype := '6'; InitReturFraPakkeshop(); @@ -3170,10 +3139,10 @@ procedure TMainForm.InitNatxpresslevering(); begin - AutomatiskTjekkodeStyring1.Enabled := true; + menuAutomatiskTjekkodeStyring.Enabled := true; btnNulstil.Visible := false; - Pakkernormal1.Checked := true; - InitForm(FarveNormal,TitelNormal,UrlNormal); + menuNatXpress1.Checked := true; + InitForm(Config.FarveNormal,Config.TitelNormal,Config.UrlNormal); PanelValg1.Color := clGreen; PanelValg1.Font.Color := clWhite; @@ -3184,8 +3153,8 @@ Sprgefterboghandlernummer1.Checked := false; chkSporgEfterKunde.Checked := false; Sprgefterboghandlernummer1.Enabled := true; - Smpakker1.Enabled := false; - Storepakker1.Enabled := false; + menuSmaaPakker.Enabled := false; + menuStorePakker.Enabled := false; radioStorPakke.Enabled := false; radioLillePakke.Enabled := false; ListBox1.Visible := true; @@ -3200,16 +3169,16 @@ if BladhusSted = 0 then begin IndlesScanningLogFil(); - IndlesManglendeScanninger(); + IndlesManglendeScanningerAntal(); end; end; procedure TMainForm.InitReturFraDao(); begin - AutomatiskTjekkodeStyring1.Enabled := false; - ReturpakkerfraDAO1.Checked := true; + menuAutomatiskTjekkodeStyring.Enabled := false; + menuNatxpressReturDAO1.Checked := true; btnNulstil.Visible := false; - InitForm(FarveReturDAO,TitelReturDAO,UrlReturDAO); + InitForm(Config.FarveReturDAO, Config.TitelReturDAO, Config.UrlReturDAO); PanelValg2.Color := clGreen; PanelValg2.Font.Color := clWhite; @@ -3220,8 +3189,8 @@ Sprgefterboghandlernummer1.Checked := false; chkSporgEfterKunde.Checked := false; Sprgefterboghandlernummer1.Enabled := false; - Smpakker1.Enabled := true; - Storepakker1.Enabled := true; + menuSmaaPakker.Enabled := true; + menuStorePakker.Enabled := true; radioStorPakke.Enabled := true; radioLillePakke.Enabled := true; ListBox1.Visible := true; @@ -3237,10 +3206,10 @@ procedure TMainForm.InitReturFraKunde(); begin - AutomatiskTjekkodeStyring1.Enabled := false; - Returpakkerfraboghandler1.Checked := true; + menuAutomatiskTjekkodeStyring.Enabled := false; + menuNatxpressReturfraKunde1.Checked := true; btnNulstil.Visible := false; - InitForm(FarveReturBoghandler,TitelReturBoghandler,UrlReturBoghandler); + InitForm(Config.FarveReturBoghandler, Config.TitelReturBoghandler, Config.UrlReturBoghandler); PanelValg3.Color := clGreen; PanelValg3.Font.Color := clWhite; @@ -3250,8 +3219,8 @@ Sprgefterboghandlernummer1.Checked := false; chkSporgEfterKunde.Checked := false; Sprgefterboghandlernummer1.Enabled := false; - Smpakker1.Enabled := true; - Storepakker1.Enabled := true; + menuSmaaPakker.Enabled := true; + menuStorePakker.Enabled := true; radioStorPakke.Enabled := true; radioLillePakke.Enabled := true; ListBox1.Visible := true; @@ -3267,10 +3236,10 @@ procedure TMainForm.InitDirektelevering(); begin - AutomatiskTjekkodeStyring1.Enabled := false; - Budlevering1.Checked := true; + menuAutomatiskTjekkodeStyring.Enabled := false; + menuDaoDirekte1.Checked := true; btnNulstil.Visible := false; - InitForm(FarveBudlevering,TitelBudlevering,UrlBudlevering); + InitForm(Config.FarveBudlevering, Config.TitelBudlevering, Config.UrlBudlevering); PanelValg4.Color := clGreen; PanelValg4.Font.Color := clWhite; @@ -3281,8 +3250,8 @@ Sprgefterboghandlernummer1.Checked := false; chkSporgEfterKunde.Checked := false; Sprgefterboghandlernummer1.Enabled := false; - Smpakker1.Enabled := true; - Storepakker1.Enabled := true; + menuSmaaPakker.Enabled := true; + menuStorePakker.Enabled := true; radioStorPakke.Enabled := true; radioLillePakke.Enabled := true; ListBox1.Visible := true; @@ -3300,17 +3269,17 @@ if (BladhusSted = 0) or (BladhusSted = 2) or (BladhusSted = 3) then begin IndlesScanningLogFil(); - IndlesManglendeScanninger(); + IndlesManglendeScanningerAntal(); end; end; procedure TMainForm.InitPakkeshoplevering(); begin - AutomatiskTjekkodeStyring1.Enabled := true; - Pakkeshoplevering1.Checked := true; + menuAutomatiskTjekkodeStyring.Enabled := true; + menuPakkeshop1.Checked := true; btnNulstil.Visible := false; - InitForm(FarvePakkeshoplevering,TitelPakkeshoplevering,UrlPakkeshoplevering); + InitForm(Config.FarvePakkeshoplevering, Config.TitelPakkeshoplevering, Config.UrlPakkeshoplevering); PanelValg5.Color := clGreen; PanelValg5.Font.Color := clWhite; @@ -3321,8 +3290,8 @@ Sprgefterboghandlernummer1.Checked := false; chkSporgEfterKunde.Checked := false; Sprgefterboghandlernummer1.Enabled := false; - Smpakker1.Enabled := false; - Storepakker1.Enabled := false; + menuSmaaPakker.Enabled := false; + menuStorePakker.Enabled := false; radioStorPakke.Enabled := false; radioLillePakke.Enabled := false; ListBox1.Visible := true; @@ -3339,7 +3308,7 @@ IndlesScanningLogFil(); if BladhusSted = 0 then begin - IndlesManglendeScanninger(); + IndlesManglendeScanningerAntal(); end; IdFTP1.Passive := true; IdFTP1.PassiveUseControlHost := true; @@ -3347,10 +3316,10 @@ procedure TMainForm.InitReturFraPakkeshop(); begin - AutomatiskTjekkodeStyring1.Enabled := false; - Returpakkerfrapakkeshop1.Checked := true; + menuAutomatiskTjekkodeStyring.Enabled := false; + menuPakkeshopRetur1.Checked := true; btnNulstil.Visible := false; - InitForm(FarveReturPakkeshop,TitelReturPakkeshop,UrlReturPakkeshop); + InitForm(Config.FarveReturPakkeshop, Config.TitelReturPakkeshop, Config.UrlReturPakkeshop); PanelValg6.Color := clGreen; PanelValg6.Font.Color := clWhite; @@ -3361,8 +3330,8 @@ Sprgefterboghandlernummer1.Checked := false; chkSporgEfterKunde.Checked := false; Sprgefterboghandlernummer1.Enabled := false; - Smpakker1.Enabled := false; - Storepakker1.Enabled := false; + menuSmaaPakker.Enabled := false; + menuStorePakker.Enabled := false; radioStorPakke.Enabled := false; radioLillePakke.Enabled := false; ListBox1.Visible := true; @@ -3379,13 +3348,13 @@ IndlesScanningLogFil(); if BladhusSted = 0 then begin - IndlesManglendeScanninger(); + IndlesManglendeScanningerAntal(); end; IdFTP1.Passive := true; IdFTP1.PassiveUseControlHost := true; end; -procedure TMainForm.Returpakkerfraboghandler1Click(Sender: TObject); +procedure TMainForm.menuNatxpressReturfraKunde1Click(Sender: TObject); begin Scanningtype := '3'; NulstilAutomatiskValg(); @@ -3395,10 +3364,10 @@ procedure TMainForm.InitIndleveringskode(); begin menuIndlevering.Checked := true; - AutomatiskTjekkodeStyring1.Enabled := false; + menuAutomatiskTjekkodeStyring.Enabled := false; btnNulstil.Visible := false; - InitForm(FarveIndlevering, TitelIndlevering, UrlReturPakkeshop); + InitForm(Config.FarveIndlevering, Config.TitelIndlevering, Config.UrlReturPakkeshop); PanelValg7.Color := clGreen; PanelValg7.Font.Color := clWhite; @@ -3412,8 +3381,8 @@ - Smpakker1.Enabled := false; - Storepakker1.Enabled := false; + menuSmaaPakker.Enabled := false; + menuStorePakker.Enabled := false; radioStorPakke.Enabled := false; radioLillePakke.Enabled := false; ListBox1.Visible := true; @@ -3431,19 +3400,19 @@ IndlesScanningLogFil(); if BladhusSted = 0 then begin - IndlesManglendeScanninger(); + IndlesManglendeScanningerAntal(); end; IdFTP1.Passive := true; IdFTP1.PassiveUseControlHost := true; end; -procedure TMainForm.Storepakker1Click(Sender: TObject); +procedure TMainForm.menuStorePakkerClick(Sender: TObject); begin InitStorPakke(); end; -procedure TMainForm.Smpakker1Click(Sender: TObject); +procedure TMainForm.menuSmaaPakkerClick(Sender: TObject); begin InitLillePakke(); end; @@ -3451,14 +3420,14 @@ procedure TMainForm.InitLillePakke(); begin radioLillePakke.Checked := true; - Smpakker1.Checked := true; + menuSmaaPakker.Checked := true; // Stregkode := ''; end; procedure TMainForm.InitStorPakke(); begin radioStorPakke.Checked := true; - Storepakker1.Checked := true; + menuStorePakker.Checked := true; // 20150310: start // Stregkode := ''; // 20150310: slut @@ -3477,9 +3446,9 @@ procedure TMainForm.Testlyd1Click(Sender: TObject); begin - if AlarmLyd <> '' then + if Config.AlarmLyd <> '' then begin - PlaySound(PWideChar(AlarmLyd)); + PlaySound(PWideChar(Config.AlarmLyd)); end else begin @@ -3491,9 +3460,9 @@ begin if (PakkeshopText1.Caption = 'Tjekkode') then begin - if ScannetOkTilTjekkodeLyd <> '' then + if Config.ScannetOkTilTjekkodeLyd <> '' then begin - PlaySound(PWideChar(ScannetOkTilTjekkodeLyd)); + PlaySound(PWideChar(Config.ScannetOkTilTjekkodeLyd)); end else begin @@ -3502,19 +3471,19 @@ exit; end; - if Smpakker1.Checked then - if ScannetOkLyd <> '' then + if menuSmaaPakker.Checked then + if Config.ScannetOkLyd <> '' then begin - PlaySound(PWideChar(ScannetOkLyd)); + PlaySound(PWideChar(Config.ScannetOkLyd)); end else begin MessageBox(Handle, PWideChar('Lyd fil ikke fundet (ScannetOkLyd)'), 'Information', MB_OK); end; - if Storepakker1.Checked then - if ScannetOkStorLyd <> '' then + if menuStorePakker.Checked then + if Config.ScannetOkStorLyd <> '' then begin - PlaySound(PWideChar(ScannetOkStorLyd)); + PlaySound(PWideChar(Config.ScannetOkStorLyd)); end else begin @@ -3523,7 +3492,7 @@ end; -procedure TMainForm.Budlevering1Click(Sender: TObject); +procedure TMainForm.menuDaoDirekte1Click(Sender: TObject); begin Scanningtype := '4'; NulstilAutomatiskValg(); @@ -3551,11 +3520,11 @@ logTekst := 'Overfører de scannede pakker til EKL'; SkrivScanningLogFil(logTekst); StedKode := Sted; - URLStr := Format(UrlEKLoverforsel,[StedKode,Sted]); + URLStr := Format(Config.UrlEKLoverforsel,[StedKode,Sted]); if PanelValg5.Color = clGreen then begin - URLStr := Format(UrlEKLoverforselPakkeshop,[StedKode,Sted]); + URLStr := Format(Config.UrlEKLoverforselPakkeshop,[StedKode,Sted]); end; @@ -3615,7 +3584,7 @@ // Hvis der var fejl i overførslen skal dette fejlmeldes her if status = 'Fejl' then begin // Her skal komme en alarm og rød skærm - PlaySound(PWideChar(AlarmLyd)); + PlaySound(PWideChar(Config.AlarmLyd)); MainForm.Color := clRed; RutenummerST.Caption := 'EKL overførsel'; BoghandlerNavnST.Caption := 'Fejl:'; @@ -4145,7 +4114,7 @@ crlf = Chr(13) + Chr(10) ; // Carriage return & Linefeed begin - IndlesManglendeScanninger(); + IndlesManglendeScanningerListe(); ListBox1.SetFocus; // for at flytte fokus væk fra download knappen så denne ikke aktiveres ved scanning / indtastning af stregkode end; @@ -4159,8 +4128,118 @@ end; +procedure TMainForm.IndlesManglendeScanningerAntal(); +var + Node: IXMLNode; + + URLStr : String; + StedKode : String; + WebSvar : String; + + i : Integer; + + PakkeType : String; + TotalAntal : String; + AntalProdDato : String; + + CurrentPanel : TPanel; + +begin + ListBox2.Clear(); + + if (BladhusSted > 00) and (BladhusSted < Length(BladhusStedNavn)) then + begin + StedKode := BladhusStedKode[BladhusSted]; + end + else + begin + StedKode := Sted; + end; + + URLStr := Format(Config.UrlHentPakkeAntal, [StedKode]); + + + try + WebSvar := IdHTTP1.Get(URLStr); + except + on e:EIdConnClosedGracefully do + begin + // Her skal vi ikke gøre noget - men vi skal forespørge igen + WebSvar := IdHTTP1.Get(URLStr); + end; + on e:exception do + begin + ListBox1.Items.Insert(0,TimeToStr(now) + ': ' + 'Fejl i web forespørgsel: '+e.Message); + logTekst := 'Fejl i web forespørgsel: '+e.Message; + SkrivScanningLogFil(logTekst); + raise exception.CreateFmt('Fejl i web forespørgsel: %s',[e.Message]); + end; + end; + + + + try + + XMLDocument1.LoadFromXML(WebSvar); + + for i:= 0 to XMLDocument1.DocumentElement.ChildNodes.Count - 1 do begin + Node:= XMLDocument1.DocumentElement.ChildNodes[I]; + + PakkeType := Node.ChildValues['PakkeType']; + TotalAntal := Node.ChildValues['TotalAntal']; + AntalProdDato := Node.ChildValues['AntalProdDato']; + + + CurrentPanel := nil; + + if (PakkeType = 'natxpress') then + begin + CurrentPanel := PanelManglendePakker1; + end; + + if (PakkeType = 'daodirekte') then + begin + CurrentPanel := PanelManglendePakker4; + end; + + if (PakkeType = 'pakkeshop') then + begin + CurrentPanel := PanelManglendePakker5; + end; + + if (CurrentPanel <> nil) then + begin + CurrentPanel.Caption := TotalAntal; + if ( StrToInt(TotalAntal) > 0) then + begin + CurrentPanel.Visible := true; + end + else + begin + CurrentPanel.Visible := false; + end; + end; + + + end; + + + except on e:exception do + begin + ListBox1.Items.Insert(0,TimeToStr(now) + ': ' + 'Fejl i XML-format: '+e.Message); + logTekst := 'Fejl i XML-format: '+e.Message; + SkrivScanningLogFil(logTekst); + raise exception.CreateFmt('Fejl i XML-format: %s',[e.Message]); + end; + end; + + + + ListBox1.Items.Insert(0,'Pakkeantal indlæst - klar til scanning'); + +end; -procedure TMainForm.IndlesManglendeScanninger(); +procedure TMainForm.IndlesManglendeScanningerListe(); var WebSvar : String; URLStr : String; @@ -4169,11 +4248,12 @@ I: Integer; stregkode, modtagernavn, modtageradresse, kommentar : string; pakketype, tjekkodestatus : String; - pakketypeix, antalLiniefelter, antalFelterFundet, linienr : Integer; + antalLiniefelter, antalFelterFundet, linienr : Integer; //pakketyper : TStrings; pakketyper : TDictionary; tmpAntal : Integer; + time, timeSamlet : TTimingHelper; antlin : Integer; @@ -4209,23 +4289,23 @@ if (Scanningtype = '7') then begin - URLStr := Format(UrlIndleveringsPakkeManglendeScanninger, [StedKode]); + URLStr := Format(Config.UrlIndleveringsPakkeManglendeScanninger, [StedKode]); end else if (Scanningtype = '6') then begin - URLStr := Format(UrlPakkeshopManglendeReturScanninger, [StedKode]); + URLStr := Format(Config.UrlPakkeshopManglendeReturScanninger, [StedKode]); end else if (Scanningtype = '5') then begin - URLStr := Format(UrlPakkeshopManglendeScanninger, [StedKode]); + URLStr := Format(Config.UrlPakkeshopManglendeScanninger, [StedKode]); end else if (Scanningtype = '1') then begin - URLStr := Format(UrlManglendeScanninger,[StedKode,'B2']); + URLStr := Format(Config.UrlManglendeScanninger,[StedKode,'B2']); end else if (Scanningtype = '4') then begin - URLStr := Format(UrlManglendeScanninger,[StedKode,'A2']); // Budleveringer + URLStr := Format(Config.UrlManglendeScanninger,[StedKode,'A2']); // Budleveringer end else begin @@ -4233,6 +4313,9 @@ end; // 20150310: slut + time := TTimingHelper.create(); //DEBUG + timeSamlet := TTimingHelper.create(); //DEBUG + try //raise EIdConnClosedGracefully.Create('test'); // KUN TIL TEST // URLStr := string(Utf8Encode(URLStr)); @@ -4242,6 +4325,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 @@ -4252,8 +4338,16 @@ end; end; try + time.stop('HTTP Load'); //DEBUG + XMLDocument1.LoadFromXML(WebSvar); + time.stop('XML Load'); //DEBUG + + + + + antlin := 0; antlinIdag := 0; @@ -4296,6 +4390,7 @@ SetLength(stregkoderMedTjekkodeArray, 0); // reset fra tidligere brug SetLength(stregkoderMedTjekkodeArray, antlin); // sæt antal elementer i array + time.stop('Antal Linier');//DEBUG Application.Processmessages; //Ugly Hack to improve User Experience when switching modes @@ -4307,6 +4402,7 @@ logTekst := logTekst + '.'; SkrivScanningLogFil(logTekst); + time.stop('Antal Linier2');//DEBUG for I:= 0 to XMLDocument1.DocumentElement.ChildNodes.Count - 1 do begin @@ -4367,7 +4463,7 @@ if antalFelterFundet = antalLiniefelter then begin if (ScanningType = '1') then - ListBox2.Items.Add(pakketype+'; '+stregkode+'; '+modtagernavn+'; '+modtageradresse+'; '+kommentar+'; '+tjekkodestatus) + ListBox2.Items.Add(pakketype+'; '+stregkode+'; '+modtagernavn+'; '+modtageradresse+'; '+kommentar+'; '+tjekkodestatus) else if (ScanningType = '4') then ListBox2.Items.Add(pakketype+'; '+stregkode+'; '+modtagernavn+'; '+modtageradresse+'; '+kommentar) else if (ScanningType = '5') then @@ -4381,6 +4477,9 @@ end; + time.stop('Fyld Listbox2');//DEBUG + + Application.Processmessages; //Ugly Hack to improve User Experience when switching modes @@ -4500,6 +4599,10 @@ end; end; + time.stop('Done');//DEBUG + timeSamlet.stop('SamletTid');//DEBUG + + end; procedure TMainForm.IndlesScanningLogFil(); @@ -4675,7 +4778,7 @@ ListBox1.Items.Insert(0,TimeToStr(now) + ': ' +'Fandt ingen linier til '+imorgenYmd+'.'); logTekst := 'Fandt ingen linier til '+imorgenYmd+'.'; SkrivScanningLogFil(logTekst); - PlaySound(PWideChar(AlarmLyd)); + PlaySound(PWideChar(Config.AlarmLyd)); end; end; end @@ -4684,7 +4787,7 @@ ListBox1.Items.Insert(0,TimeToStr(now) + ': ' + 'Ruteskift fil '+filnavn+' findes ikke.'); logTekst := 'Ruteskift fil '+filnavn+' findes ikke.'; SkrivScanningLogFil(logTekst); - PlaySound(PWideChar(AlarmLyd)); + PlaySound(PWideChar(Config.AlarmLyd)); end; end; @@ -4755,7 +4858,7 @@ ListBox1.Items.Insert(0,TimeToStr(now) + ': ' +'Fandt ingen linier til '+imorgenYmd+'.'); logTekst := 'Fandt ingen linier til '+imorgenYmd+'.'; SkrivScanningLogFil(logTekst); - PlaySound(PWideChar(AlarmLyd)); + PlaySound(PWideChar(Config.AlarmLyd)); end; end; end @@ -4764,7 +4867,7 @@ ListBox1.Items.Insert(0,TimeToStr(now) + ': ' + 'Kontrol fil '+filnavn+' findes ikke.'); logTekst := 'Kontrol fil '+filnavn+' findes ikke.'; SkrivScanningLogFil(logTekst); - PlaySound(PWideChar(AlarmLyd)); + PlaySound(PWideChar(Config.AlarmLyd)); end; end; @@ -4822,7 +4925,7 @@ begin //ShowMessage('Ændring ikke tilladt'); // Her skal komme en 'rød skærm' alarm - PlaySound(PWideChar(AlarmLyd)); + PlaySound(PWideChar(Config.AlarmLyd)); MainForm.Color := clRed; @@ -4911,6 +5014,11 @@ end; +//Nedarvet fra IParentForm +procedure TMainForm.Msg( msg : string); +begin + ShowMessage(msg); +end; //Nedarvet fra IParentForm procedure TMainForm.LogMessage( msg : string); @@ -4945,5 +5053,12 @@ Result := self; end; +//Nedarvet fra IParentForm +function TMainForm.GetXMLDocument() : TXMLDocument; +begin + Result := XMLDocument1 +end; + + end.