--- dao/DelphiScanner/Main.pas 2015/08/23 13:09:14 2656 +++ dao/DelphiScanner/Main.pas 2015/08/23 15:06:19 2662 @@ -8,7 +8,9 @@ IdTCPClient, IdHTTP, xmldom, XMLIntf, msxmldom, XMLDoc, IniFiles, AppEvnts, Menus, ExtCtrls, ComCtrls, StrUtils, MMSystem, DateUtils, IdExplicitTLSClientServerBase, IdFTP, pngimage, GIFImg, IdException, - Winspool, Registry, ShellApi, ClipBrd, Buttons, wininet + Winspool, Registry, ShellApi, ClipBrd, Buttons, wininet, + UITypes + ; type @@ -258,6 +260,7 @@ procedure IndlesScanningLogFil(); procedure SkrivScanningLogFil(var tekst : string); function TjekKoreliste(var RuteNummer, Koreliste : string) : string; + procedure VisAlarmSkaerm(strMessage: string); public { Public declarations } @@ -534,10 +537,7 @@ crlf = Chr(13) + Chr(10) ; // Carriage return & Linefeed var printerInd : integer; - i : Integer; -// 20150310: start gemScanningtype : String; -// 20150310: slut begin // Initierer nogle variabler @@ -1152,7 +1152,6 @@ BoghandlerNavn : String; Koreliste : String; PrintNyLabel : Boolean; - List1msg : String; pakkeErScannet : Integer; pakkeForkertSted : Integer; tjekkodeMangler : Integer; @@ -1208,14 +1207,8 @@ begin if (Length(Trim(Stregkode)) = 0) then begin - PlaySound(PWideChar(AlarmLyd)); - List1msg := 'Der skal scannes en stregkode...'; - ListBox1.Items.Insert(0,List1Msg); - MainForm.Color := clRed; - RuteNummerST.Caption := ''; - BoghandlerNavnST.Caption := ''; - KommentarST.Caption := List1msg; - PakkeshopNulstil.Visible := true; + VisAlarmSkaerm( 'Der skal scannes en stregkode...' ); + exit; end; @@ -1227,14 +1220,8 @@ if PakkeshopNulstil.Visible then begin - PlaySound(PWideChar(AlarmLyd)); - List1msg := 'HUSK at klikke Nulstil før ny scanning...'; + VisAlarmSkaerm( 'HUSK at klikke Nulstil før ny scanning...' ); - ListBox1.Items.Insert(0,List1Msg); - MainForm.Color := clRed; - KommentarST.Caption := List1msg; - Stregkode := ''; - StregkodeST.Caption := StregKode; exit; end; @@ -1246,16 +1233,7 @@ end else begin - //ShowMessage('Ændring ikke tilladt'); - // Her skal komme en 'rød skærm' alarm - PlaySound(PWideChar(AlarmLyd)); - List1msg := Stregkode + ' kan ikke vælges på dette scanningsted'; - ListBox1.Items.Insert(0,List1Msg); - MainForm.Color := clRed; - RuteNummerST.Caption := ''; - BoghandlerNavnST.Caption := ''; - KommentarST.Caption := List1msg; - PakkeshopNulstil.Visible := true; + VisAlarmSkaerm( Stregkode + ' kan ikke vælges på dette scanningsted' ); end; Stregkode := ''; StregkodeST.Caption := StregKode; @@ -1270,17 +1248,7 @@ end else begin - //ShowMessage('Ændring ikke tilladt'); - // Her skal komme en 'rød skærm' alarm - PlaySound(PWideChar(AlarmLyd)); - List1msg := Stregkode + ' kan ikke vælges på dette scanningsted'; - ListBox1.Items.Insert(0,List1Msg); - MainForm.Color := clRed; - RuteNummerST.Caption := ''; - BoghandlerNavnST.Caption := ''; - - KommentarST.Caption := List1msg; - PakkeshopNulstil.Visible := true; + VisAlarmSkaerm( Stregkode + ' kan ikke vælges på dette scanningsted' ); end; Stregkode := ''; StregkodeST.Caption := StregKode; @@ -1302,16 +1270,7 @@ end else begin - //ShowMessage('Ændring ikke tilladt'); - // Her skal komme en 'rød skærm' alarm - PlaySound(PWideChar(AlarmLyd)); - List1msg := Stregkode + ' kan ikke vælges på dette scanningsted'; - ListBox1.Items.Insert(0,List1Msg); - MainForm.Color := clRed; - RuteNummerST.Caption := ''; - BoghandlerNavnST.Caption := ''; - KommentarST.Caption := List1msg; - PakkeshopNulstil.Visible := true; + VisAlarmSkaerm( Stregkode + ' kan ikke vælges på dette scanningsted' ); end; Stregkode := ''; StregkodeST.Caption := StregKode; @@ -1333,16 +1292,7 @@ end else begin - //ShowMessage('Ændring ikke tilladt'); - // Her skal komme en 'rød skærm' alarm - PlaySound(PWideChar(AlarmLyd)); - List1msg := Stregkode + ' kan ikke vælges på dette scanningsted'; - ListBox1.Items.Insert(0,List1Msg); - MainForm.Color := clRed; - RuteNummerST.Caption := ''; - BoghandlerNavnST.Caption := ''; - KommentarST.Caption := List1msg; - PakkeshopNulstil.Visible := true; + VisAlarmSkaerm( Stregkode + ' kan ikke vælges på dette scanningsted' ); end; Stregkode := ''; StregkodeST.Caption := StregKode; @@ -1357,16 +1307,7 @@ end else begin - //ShowMessage('Ændring ikke tilladt'); - // Her skal komme en 'rød skærm' alarm - PlaySound(PWideChar(AlarmLyd)); - List1msg := Stregkode + ' kan ikke vælges på dette scanningsted'; - ListBox1.Items.Insert(0,List1Msg); - MainForm.Color := clRed; - RuteNummerST.Caption := ''; - BoghandlerNavnST.Caption := ''; - KommentarST.Caption := List1msg; - PakkeshopNulstil.Visible := true; + VisAlarmSkaerm(Stregkode + ' kan ikke vælges på dette scanningsted'); end; Stregkode := ''; StregkodeST.Caption := StregKode; @@ -1382,18 +1323,7 @@ end else begin - //ShowMessage('Ændring ikke tilladt'); - // Her skal komme en 'rød skærm' alarm - PlaySound(PWideChar(AlarmLyd)); - List1msg := Stregkode + ' kan ikke vælges på dette scanningsted'; - ListBox1.Items.Insert(0,List1Msg); - MainForm.Color := clRed; - - RuteNummerST.Caption := ''; - BoghandlerNavnST.Caption := ''; - - KommentarST.Caption := List1msg; - PakkeshopNulstil.Visible := true; + VisAlarmSkaerm(Stregkode + ' kan ikke vælges på dette scanningsted'); end; Stregkode := ''; StregkodeST.Caption := StregKode; @@ -1408,18 +1338,7 @@ end else begin - //ShowMessage('Ændring ikke tilladt'); - // Her skal komme en 'rød skærm' alarm - PlaySound(PWideChar(AlarmLyd)); - List1msg := Stregkode + ' kan ikke vælges på dette scanningsted'; - ListBox1.Items.Insert(0,List1Msg); - MainForm.Color := clRed; - - RuteNummerST.Caption := ''; - BoghandlerNavnST.Caption := ''; - - KommentarST.Caption := List1msg; - PakkeshopNulstil.Visible := true; + VisAlarmSkaerm( Stregkode + ' kan ikke vælges på dette scanningsted' ); end; Stregkode := ''; StregkodeST.Caption := StregKode; @@ -1434,18 +1353,7 @@ end else begin - //ShowMessage('Ændring ikke tilladt'); - // Her skal komme en 'rød skærm' alarm - PlaySound(PWideChar(AlarmLyd)); - List1msg := Stregkode + ' kan ikke vælges på dette scanningsted'; - ListBox1.Items.Insert(0,List1Msg); - MainForm.Color := clRed; - - RuteNummerST.Caption := ''; - BoghandlerNavnST.Caption := ''; - - KommentarST.Caption := List1msg; - PakkeshopNulstil.Visible := true; + VisAlarmSkaerm( Stregkode + ' kan ikke vælges på dette scanningsted' ); end; Stregkode := ''; StregkodeST.Caption := StregKode; @@ -1460,18 +1368,7 @@ end else begin - //ShowMessage('Ændring ikke tilladt'); - // Her skal komme en 'rød skærm' alarm - PlaySound(PWideChar(AlarmLyd)); - List1msg := Stregkode + ' kan ikke vælges på dette scanningsted'; - ListBox1.Items.Insert(0,List1Msg); - MainForm.Color := clRed; - - RuteNummerST.Caption := ''; - BoghandlerNavnST.Caption := ''; - - KommentarST.Caption := List1msg; - PakkeshopNulstil.Visible := true; + VisAlarmSkaerm( Stregkode + ' kan ikke vælges på dette scanningsted' ); end; Stregkode := ''; StregkodeST.Caption := StregKode; @@ -1486,18 +1383,7 @@ end else begin - //ShowMessage('Ændring ikke tilladt'); - // Her skal komme en 'rød skærm' alarm - PlaySound(PWideChar(AlarmLyd)); - List1msg := Stregkode + ' kan ikke vælges på dette scanningsted'; - ListBox1.Items.Insert(0,List1Msg); - MainForm.Color := clRed; - - RuteNummerST.Caption := ''; - BoghandlerNavnST.Caption := ''; - - KommentarST.Caption := List1msg; - PakkeshopNulstil.Visible := true; + VisAlarmSkaerm( Stregkode + ' kan ikke vælges på dette scanningsted' ); end; Stregkode := ''; StregkodeST.Caption := StregKode; @@ -1512,18 +1398,7 @@ end else begin - //ShowMessage('Ændring ikke tilladt'); - // Her skal komme en 'rød skærm' alarm - PlaySound(PWideChar(AlarmLyd)); - List1msg := Stregkode + ' kan ikke vælges på dette scanningsted'; - ListBox1.Items.Insert(0,List1Msg); - MainForm.Color := clRed; - - RuteNummerST.Caption := ''; - BoghandlerNavnST.Caption := ''; - - KommentarST.Caption := List1msg; - PakkeshopNulstil.Visible := true; + VisAlarmSkaerm( Stregkode + ' kan ikke vælges på dette scanningsted' ); end; Stregkode := ''; StregkodeST.Caption := StregKode; @@ -1584,19 +1459,7 @@ or (Pakkescanningtype = '5') and (PanelValg5.Enabled = false) or (Pakkescanningtype = '6') and (PanelValg6.Enabled = false) ) then begin // Her skal komme en alarm og rød skærm - PlaySound(PWideChar(AlarmLyd)); - List1msg := 'Pakketype ' + Pakketype + ' kan ikke scannes på dette scanningsted'; - ListBox1.Items.Insert(0,List1Msg); - MainForm.Color := clRed; - - RuteNummerST.Caption := ''; - BoghandlerNavnST.Caption := ''; - - KommentarST.Caption := List1msg; - PakkeshopNulstil.Visible := true; - - StregKode := ''; - StregkodeST.Caption := StregKode; + VisAlarmSkaerm( Stregkode + ' kan ikke vælges på dette scanningsted' ); exit; end; @@ -1633,20 +1496,9 @@ // Retur kan ikke scannes med 'Automatisk valg' else - begin // Her skal komme en alarm og rød skærm - PlaySound(PWideChar(AlarmLyd)); - List1msg := 'Pakken kan ikke scannes med automatisk valg'; - ListBox1.Items.Insert(0,List1Msg); - MainForm.Color := clRed; - - RuteNummerST.Caption := ''; - BoghandlerNavnST.Caption := ''; - - KommentarST.Caption := List1msg; - PakkeshopNulstil.Visible := true; - - StregKode := ''; - StregkodeST.Caption := StregKode; + begin + // Her skal komme en alarm og rød skærm + VisAlarmSkaerm( Stregkode + ' kan ikke vælges på dette scanningsted' ); exit; end; @@ -1654,19 +1506,7 @@ end else if Automatiskvalg1.Checked and (PakkeshopText1.Caption = 'Stregkode') then begin - PlaySound(PWideChar(AlarmLyd)); - List1msg := 'Pakkenummer ikke gyldigt (for kort)'; - ListBox1.Items.Insert(0,List1Msg); - MainForm.Color := clRed; - - RuteNummerST.Caption := ''; - BoghandlerNavnST.Caption := ''; - - KommentarST.Caption := List1msg; - PakkeshopNulstil.Visible := true; - - StregKode := ''; - StregkodeST.Caption := StregKode; + VisAlarmSkaerm( 'Pakkenummer ikke gyldigt (for kort)' ); exit; end; @@ -1675,18 +1515,9 @@ begin if ( (Pakkescanningtype <> Scanningtype) and (Scanningtype <> '2') and (Scanningtype <> '3') ) then begin - PlaySound(PWideChar(AlarmLyd)); - List1msg := 'Pakke findes som pakketype: ' + Pakketype; - ListBox1.Items.Insert(0,List1Msg); - MainForm.Color := clRed; - RuteNummerST.Caption := ''; - BoghandlerNavnST.Caption := ''; + VisAlarmSkaerm( 'Pakke findes som pakketype: ' + Pakketype ); - KommentarST.Caption := List1msg; - PakkeshopNulstil.Visible := true; - StregKode := ''; - StregkodeST.Caption := StregKode; exit; end; end; @@ -1736,19 +1567,13 @@ PakkeshopStregkode := Stregkode; BoghandlerStregkode := Stregkode; PakkeshopText1.Caption := 'Tjekkode'; -// 20150317: start + PlaySound(PWideChar(ScannetOkTilTjekkodeLyd)); -// 20150317: slut + end else begin - List1msg := 'Du skal scanne en stregkode'; - ListBox1.Items.Insert(0,List1Msg); - //logTekst := RightStr(List1Msg, Length(List1Msg)-10); - //SkrivScanningLogFil(logTekst); - PlaySound(PWideChar(AlarmLyd)); - PakkeshopNulstil.Visible := true; - MainForm.Color := clRed; + VisAlarmSkaerm( 'Du skal scanne en stregkode' ); end; Stregkode := ''; InitScreen(); @@ -1769,20 +1594,13 @@ else begin if (PakkeshopLevering1.Checked) then - List1msg := 'Du skal scanne en tjekkode til stregkode ' + PakkeshopStregkode; + VisAlarmSkaerm('Du skal scanne en tjekkode til stregkode ' + PakkeshopStregkode); if (Pakkernormal1.Checked) then - List1msg := 'Du skal scanne en tjekkode til stregkode ' + BoghandlerStregkode; - KommentarST.Caption := List1msg; - ListBox1.Items.Insert(0,List1Msg); - //logTekst := RightStr(List1Msg, Length(List1Msg)-10); - //SkrivScanningLogFil(logTekst); - PlaySound(PWideChar(AlarmLyd)); - PakkeshopNulstil.Visible := true; - MainForm.Color := clRed; -// 20150323: start + VisAlarmSkaerm('Du skal scanne en tjekkode til stregkode ' + BoghandlerStregkode); + StregKode := ''; StregkodeST.Caption := StregKode; -// 20150323: slut + exit; end; Stregkode := ''; @@ -1803,12 +1621,8 @@ // Hvis der var sql fejl i opdateringen skal dette fejlmeldes her if Rutenummer = 'sql fejl' then begin // Her skal komme en alarm og rød skærm - PlaySound(PWideChar(AlarmLyd)); - //List1msg := 'SQL fejl: ' + Kommentar; - //ListBox1.Items.Insert(0,List1Msg); - MainForm.Color := clRed; - //KommentarST.Caption := List1msg; - PakkeshopNulstil.Visible := true; + VisAlarmSkaerm( 'SQL fejl: ' + Kommentar ); + exit; end; if (Pakkernormal1.Checked or Budlevering1.Checked or PakkeshopLevering1.Checked) then @@ -1860,26 +1674,18 @@ end else if Copy(Kommentar,1,8) = 'OPRETTET' then begin - List1msg := 'Pakke ' + PakkeshopStregkode + ' skal gemmes på lager indtil data modtages'; - ListBox1.Items.Insert(0,List1Msg); - MainForm.Color := clRed; - PlaySound(PWideChar(AlarmLyd)); - PakkeshopNulstil.Visible := true; + VisAlarmSkaerm( 'Pakke ' + PakkeshopStregkode + ' skal gemmes på lager indtil data modtages' ); end else if Kommentar = StregKode then // budlevering til 'Ukendt tur' begin end else begin - MainForm.Color := clRed; - PlaySound(PWideChar(AlarmLyd)); - PakkeshopNulstil.Visible := true; + VisAlarmSkaerm(''); end; if not PakkeshopNulstil.Visible then begin -// 20150310: start -// SletStregkodelinieFraListboks2(StregKode); -// 20150310: slut + If (Budlevering1.Checked) then begin if Storepakker1.Checked then @@ -1893,9 +1699,9 @@ InitLillePakke(); end; end; -// 20150310: start + SletStregkodelinieFraListboks2(StregKode); -// 20150310: slut + PakkeshopStregkode := ''; PakkeshopTjekkode := ''; BoghandlerStregkode := ''; @@ -2115,8 +1921,6 @@ end; procedure TMainForm.InitBladhus(); -var - LogFilnavn : string; begin Altidprintepakkelabel1.Enabled := false; @@ -2605,7 +2409,7 @@ end; end; 01 : begin; - if PrintNyLabel and ( (kontrolKoreliste <> '') and (kontrolKoreliste <> RuteNummer) ) or (RuteNummer = 'Rutenr') then + if PrintNyLabel or ( (kontrolKoreliste <> '') and (kontrolKoreliste <> RuteNummer) ) or (RuteNummer = 'Rutenr') then // 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 @@ -2619,7 +2423,7 @@ end; end; 03 : begin; - if PrintNyLabel and ( (kontrolKoreliste <> '') and (kontrolKoreliste <> RuteNummer) ) or (RuteNummer = 'Rutenr') then + if PrintNyLabel or ( (kontrolKoreliste <> '') and (kontrolKoreliste <> RuteNummer) ) or (RuteNummer = 'Rutenr') then // 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 @@ -3400,7 +3204,6 @@ BoghandlerNavn : String; Koreliste : String; Falsk : Boolean; - Sand : Boolean; SmsKode : String; DBKbane : String; Leveringssted : String; @@ -3427,7 +3230,7 @@ else begin Falsk := False; - Sand := True; + HentPakkeInfoFraServer(Sted,'111111111100000', RuteNummer, Kommentar, BoghandlerNavn, Koreliste, SmsKode, DBKbane, Leveringssted, Falsk, ''); UpdateScreen(RuteNummer, Kommentar, BoghandlerNavn, Koreliste, ''); SmsKode := '999999'; @@ -3447,7 +3250,6 @@ BoghandlerNavn : String; Koreliste : String; Falsk : Boolean; - Sand : Boolean; SmsKode : String; DBKbane : String; Leveringssted : String; @@ -3456,7 +3258,7 @@ Kommentar := '***** Kommentar *****'; BoghandlerNavn := 'Modtagernavn'; Falsk := False; - Sand := True; + if (Printer.Printers.Count = 0) then begin @@ -4014,13 +3816,13 @@ // Hvorfor virker ovenstående ikke ??? S := ''; - Str(iVer[1],Result); + Str(iVer[1], Result); S := S+Result+'.'; - Str(iVer[2],Result); + Str(iVer[2], Result); S := S+Result+'.'; - Str(iVer[3],Result); + Str(iVer[3], Result); S := S+Result+'.'; - Str(iVer[4],Result); + Str(iVer[4], Result); S := S+Result+''; Result := S; end; @@ -4854,7 +4656,6 @@ antlinIdag := 0; antlinSenere := 0; - antalFelterFundet := 0; for I:= 0 to XMLDocument1.DocumentElement.ChildNodes.Count - 1 do begin Node:= XMLDocument1.DocumentElement.ChildNodes[I]; if Node.NodeType = ntElement then begin @@ -5124,8 +4925,6 @@ procedure TMainForm.SkrivScanningLogFil(var tekst : string); var SomeTxtFile : TextFile; - buffer : string; - S: string; idag, imorgen : TDateTime; imorgenYmd : string; logFilnavn : string; @@ -5393,6 +5192,26 @@ result := svar; end; +procedure TMainForm.VisAlarmSkaerm(strMessage: string); +begin + //ShowMessage('Ændring ikke tilladt'); + // Her skal komme en 'rød skærm' alarm + PlaySound(PWideChar(AlarmLyd)); + MainForm.Color := clRed; + + + RuteNummerST.Caption := ''; + BoghandlerNavnST.Caption := ''; + PakkeshopNulstil.Visible := true; + + if (strMessage <> '') then + begin + ListBox1.Items.Insert(0, strMessage); + KommentarST.Caption := strMessage; + end; + +end; + function TMainForm.getProddato() : TDate; var idag, imorgen : TDateTime;