/[projects]/dao/DelphiScanner/Main.pas
ViewVC logotype

Diff of /dao/DelphiScanner/Main.pas

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 2682 by torben, Wed Aug 26 19:52:38 2015 UTC revision 2692 by torben, Thu Sep 3 14:24:23 2015 UTC
# Line 8  uses Line 8  uses
8    IdTCPClient, IdHTTP, xmldom, XMLIntf, msxmldom, XMLDoc, IniFiles, AppEvnts,    IdTCPClient, IdHTTP, xmldom, XMLIntf, msxmldom, XMLDoc, IniFiles, AppEvnts,
9    Menus, ExtCtrls, ComCtrls, StrUtils, MMSystem, DateUtils,    Menus, ExtCtrls, ComCtrls, StrUtils, MMSystem, DateUtils,
10    IdExplicitTLSClientServerBase, IdFTP, pngimage, GIFImg, IdException,    IdExplicitTLSClientServerBase, IdFTP, pngimage, GIFImg, IdException,
11    Winspool, Registry, ShellApi, ClipBrd, Buttons, wininet,    Winspool, ShellApi, ClipBrd, Buttons, wininet,
12    UITypes,    UITypes,
13    PakkeshopLabels,    PakkeshopLabels,
14    StBarC,    StBarC,
# Line 52  type Line 52  type
52      Testlyd1: TMenuItem;      Testlyd1: TMenuItem;
53      ListBox1: TListBox;      ListBox1: TListBox;
54      Budlevering1: TMenuItem;      Budlevering1: TMenuItem;
55      DownloadButton01: TButton;      BtnDownloadKontrolfil: TButton;
56      IdFTP1: TIdFTP;      IdFTP1: TIdFTP;
57      Image1: TImage;      Image1: TImage;
58      ListBox2: TListBox;      ListBox2: TListBox;
# Line 101  type Line 101  type
101    function retRutenummer(rutenummer : String) : String;    function retRutenummer(rutenummer : String) : String;
102    function GetCurrentPrinterHandle() : THandle;    function GetCurrentPrinterHandle() : THandle;
103    function SavePChar(p: PChar): PChar;    function SavePChar(p: PChar): PChar;
104    function AdobeReaderExists(): Boolean;  
105    function FileTime2DateTime(FileTime: TFileTime): TDateTime;    function FileTime2DateTime(FileTime: TFileTime): TDateTime;
106    function CheckUrl(url:string):boolean;    function CheckUrl(url:string):boolean;
107    
# Line 134  type Line 134  type
134    procedure Button1Click(Sender: TObject);    procedure Button1Click(Sender: TObject);
135    procedure ListBox1DrawItem(Control: TWinControl; Index: Integer; Rect: TRect; State: TOwnerDrawState);    procedure ListBox1DrawItem(Control: TWinControl; Index: Integer; Rect: TRect; State: TOwnerDrawState);
136    procedure Budlevering1Click(Sender: TObject);    procedure Budlevering1Click(Sender: TObject);
137    procedure DownloadButton01Click(Sender: TObject);    procedure BtnDownloadKontrolfilClick(Sender: TObject);
138    procedure OpdaterListenButton01Click(Sender: TObject);    procedure OpdaterListenButton01Click(Sender: TObject);
139    procedure DownloadBladhusRuteskiftfil();    procedure DownloadBladhusRuteskiftfil();
140    procedure DownloadBladhusKontrolfil();    procedure DownloadBladhusKontrolfil();
# Line 193  type Line 193  type
193      SkrivLog : String;      SkrivLog : String;
194      Sted : String;      Sted : String;
195      StedNavn : String;      StedNavn : String;
196      Url, UrlNormal, UrlReturDAO, UrlReturBoghandler, UrlBudlevering, UrlManglendeScanninger, UrlPakkeshoplevering, UrlReturPakkeshop, UrlPakkeshopManglendeScanninger, UrlPakkeshopManglendeReturScanninger,UrlIndleveringsPakke,UrlEKLoverforsel : String;      Url, UrlNormal, UrlReturDAO, UrlReturBoghandler, UrlBudlevering, UrlManglendeScanninger, UrlPakkeshoplevering, UrlReturPakkeshop, UrlPakkeshopManglendeScanninger, UrlPakkeshopManglendeReturScanninger,UrlIndleveringsPakke,UrlIndleveringsPakkeManglendeScanninger,UrlEKLoverforsel : String;
197  // 29150330: start  // 29150330: start
198      UrlEKLoverforselPakkeshop : String;      UrlEKLoverforselPakkeshop : String;
199  // 20150330: slut  // 20150330: slut
# Line 207  type Line 207  type
207      AlarmLyd : String;      AlarmLyd : String;
208      ScannetOkLyd : String;      ScannetOkLyd : String;
209      ScannetOkStorLyd : String;      ScannetOkStorLyd : String;
210  // 20150317: start  
211      ScannetOkTilTjekkodeLyd : String;      ScannetOkTilTjekkodeLyd : String;
212  // 20150317: slut  
213      PrinterNavn : String;      PrinterNavn : String;
214      TjekPrinter : String;      TjekPrinter : String;
215      XPosRute : integer;      XPosRute : integer;
# Line 498  end; Line 498  end;
498    
499  procedure TMainForm.Automatiskvalg1Click(Sender: TObject);  procedure TMainForm.Automatiskvalg1Click(Sender: TObject);
500  begin  begin
 // 20150317: start  
 (*  
   if Automatiskvalg1.Checked then  
   begin  
      AutomatiskValg1.Checked := true;  
      PanelValgA.Color := clGreen;  
      PanelValgA.Font.Color := clWhite;  
   end  
   else  
   begin  
      AutomatiskValg1.Checked := false;  
      PanelValgA.Color := clBtnFace;  
      PanelValgA.Font.Color := clWindowText;  
   end;  
 *)  
501  // Skal ikke toggle men bare sætte funktionen on  // Skal ikke toggle men bare sætte funktionen on
502  // Fravælges ved at vælge en scanningstype  // Fravælges ved at vælge en scanningstype
503       AutomatiskValg1.Checked := true;       AutomatiskValg1.Checked := true;
504       PanelValgA.Color := clGreen;       PanelValgA.Color := clGreen;
505       PanelValgA.Font.Color := clWhite;       PanelValgA.Font.Color := clWhite;
 // 20150317: slut  
506  end;  end;
507    
508  procedure TMainForm.FormCreate(Sender: TObject);  procedure TMainForm.FormCreate(Sender: TObject);
# Line 578  begin Line 562  begin
562      UrlPakkeshopManglendeScanninger := ReadString('Settings','UrlPakkeshopManglendeScanninger','http://omdeling.info/webservices/pakkeshop/pakkemanglendescanninger.php?sted=%s');      UrlPakkeshopManglendeScanninger := ReadString('Settings','UrlPakkeshopManglendeScanninger','http://omdeling.info/webservices/pakkeshop/pakkemanglendescanninger.php?sted=%s');
563      UrlPakkeshopManglendeReturScanninger := ReadString('Settings','UrlPakkeshopManglendeReturScanninger','http://omdeling.info/webservices/pakkeshop/pakkemanglendereturscanninger.php?sted=%s');      UrlPakkeshopManglendeReturScanninger := ReadString('Settings','UrlPakkeshopManglendeReturScanninger','http://omdeling.info/webservices/pakkeshop/pakkemanglendereturscanninger.php?sted=%s');
564    
565    
566      UrlIndleveringsPakke := ReadString('Settings','UrlIndleveringsPakke','http://omdeling.info/webservices/pakkeshop/PakkekontrolIndleveringskode.php?sted=%s&pakkekode=%s');      UrlIndleveringsPakke := ReadString('Settings','UrlIndleveringsPakke','http://omdeling.info/webservices/pakkeshop/PakkekontrolIndleveringskode.php?sted=%s&pakkekode=%s');
567        UrlIndleveringsPakkeManglendeScanninger := ReadString('Settings', 'UrlIndleveringsPakkeManglendeScanninger','http://omdeling.info/webservices/pakkeshop/IndleveringsPakkeManglendeScanninger.php?sted=%s');
568    
569    
570    
571      LabelType := ReadInteger('Settings','LabelType',1);      LabelType := ReadInteger('Settings','LabelType',1);
# Line 790  begin Line 777  begin
777      // Hvis specialversion er valgt (SpecialVersionSted er sat til en værdi ovenfor)      // Hvis specialversion er valgt (SpecialVersionSted er sat til en værdi ovenfor)
778      // ændrer vi Sted og Scanningtype her:      // ændrer vi Sted og Scanningtype her:
779    
 // 20150313: start  
780      if SpecialVersionSted = 'NS' then      if SpecialVersionSted = 'NS' then
781      begin      begin
782         SpecialVersionSted := '01';         SpecialVersionSted := '01';
# Line 801  begin Line 787  begin
787         SpecialVersionSted := '03';         SpecialVersionSted := '03';
788         SpecialVersionScanningtype := '4';         SpecialVersionScanningtype := '4';
789      end;      end;
 // 20150313: slut  
790    
791      if SpecialVersionSted = 'BK' then      if SpecialVersionSted = 'BK' then
792      begin      begin
# Line 1995  begin Line 1980  begin
1980      01 :      01 :
1981            begin;      // NS            begin;      // NS
1982              Testprinter1.Visible := true;              Testprinter1.Visible := true;
1983              DownloadButton01.Enabled := true;              BtnDownloadKontrolfil.Enabled := true;
1984              OpdaterListenButton01.Enabled := true;              OpdaterListenButton01.Enabled := true;
1985              IdFTP1.Passive := true;              IdFTP1.Passive := true;
1986              IdFTP1.PassiveUseControlHost := true;              IdFTP1.PassiveUseControlHost := true;
# Line 2011  begin Line 1996  begin
1996              Storepakker1.Enabled := true;              Storepakker1.Enabled := true;
1997              radioStorPakke.Enabled := true;              radioStorPakke.Enabled := true;
1998              radioLillePakke.Enabled := true;              radioLillePakke.Enabled := true;
1999              DownloadButton01.Enabled := false;     // kontrolfil bruges ikke her              BtnDownloadKontrolfil.Enabled := false;     // kontrolfil bruges ikke her
2000              OpdaterListenButton01.Enabled := true;              OpdaterListenButton01.Enabled := true;
2001              IdFTP1.Passive := true;              IdFTP1.Passive := true;
2002              IdFTP1.PassiveUseControlHost := true;              IdFTP1.PassiveUseControlHost := true;
# Line 2028  begin Line 2013  begin
2013              begin              begin
2014                DownloadButton03.Visible := false;                DownloadButton03.Visible := false;
2015              end;              end;
2016              DownloadButton01.Enabled := true;              BtnDownloadKontrolfil.Enabled := true;
2017              OpdaterListenButton01.Enabled := true;              OpdaterListenButton01.Enabled := true;
2018              IdFTP1.Passive := true;              IdFTP1.Passive := true;
2019              IdFTP1.PassiveUseControlHost := true;              IdFTP1.PassiveUseControlHost := true;
# Line 2049  begin Line 2034  begin
2034              Storepakker1.Enabled := true;              Storepakker1.Enabled := true;
2035              radioStorPakke.Enabled := true;              radioStorPakke.Enabled := true;
2036              radioLillePakke.Enabled := true;              radioLillePakke.Enabled := true;
2037              DownloadButton01.Enabled := false;    // kontrolfil bruges ikke her              BtnDownloadKontrolfil.Enabled := false;    // kontrolfil bruges ikke her
2038              OpdaterListenButton01.Enabled := true;              OpdaterListenButton01.Enabled := true;
2039              IdFTP1.Passive := true;              IdFTP1.Passive := true;
2040              IdFTP1.PassiveUseControlHost := true;              IdFTP1.PassiveUseControlHost := true;
# Line 2924  begin Line 2909  begin
2909            end;            end;
2910          end;          end;
2911    
2912           // Tjekker UrlIndleveringsPakke og UrlIndleveringsPakkeManglendeScanninger
2913            if PanelValg7.Enabled = true then
2914            begin
2915              if CheckUrl(UrlIndleveringsPakke) then
2916              begin
2917                logTekst := 'UrlIndleveringsPakke accepteret: ' + UrlIndleveringsPakke;
2918                SkrivScanningLogFil(logTekst);
2919              end
2920              else
2921              begin
2922                inc(urlFejl);   // Optæller antal fejl
2923                logTekst := 'UrlIndleveringsPakke svarer ikke: ' + UrlIndleveringsPakke;
2924                ListBox1.Items.Insert(0,TimeToStr(now) + ': ' + logTekst);
2925                if TjekUrls = '1' then
2926                begin
2927                  logTekst := logTekst + crlf + crlf + 'Programmet afsluttes... ';
2928                end;
2929                SkrivScanningLogFil(logTekst);
2930                if TjekUrls = '1' then
2931                begin
2932                  ShowMessage(logTekst);
2933                  UrlSendPrograminfo := '';   // Her sletter vi lige url, så der ikke forsøges at sende besked ved program slut
2934                  Application.Terminate;
2935                  exit;
2936                end;
2937              end;
2938    
2939              if CheckUrl(UrlIndleveringsPakkeManglendeScanninger) then
2940              begin
2941                logTekst := 'UrlIndleveringsPakkeManglendeScanninger accepteret: ' + UrlIndleveringsPakkeManglendeScanninger;
2942                SkrivScanningLogFil(logTekst);
2943              end
2944              else
2945              begin
2946                inc(urlFejl);   // Optæller antal fejl
2947                logTekst := 'UrlIndleveringsPakkeManglendeScanninger svarer ikke: ' + UrlIndleveringsPakkeManglendeScanninger;
2948                ListBox1.Items.Insert(0,TimeToStr(now) + ': ' + logTekst);
2949                if TjekUrls = '1' then
2950                begin
2951                  logTekst := logTekst + crlf + crlf + 'Programmet afsluttes... ';
2952                end;
2953                SkrivScanningLogFil(logTekst);
2954                if TjekUrls = '1' then
2955                begin
2956                  ShowMessage(logTekst);
2957                  UrlSendPrograminfo := '';   // Her sletter vi lige url, så der ikke forsøges at sende besked ved program slut
2958                  Application.Terminate;
2959                  exit;
2960                end;
2961              end;
2962            end;
2963    
2964          // Tjekker UrlEKLoverforsel          // Tjekker UrlEKLoverforsel
2965          if PanelValg1.Enabled = true then          if PanelValg1.Enabled = true then
2966          begin          begin
# Line 3207  end; Line 3244  end;
3244    
3245  procedure TMainForm.PanelValgAClick(Sender: TObject);  procedure TMainForm.PanelValgAClick(Sender: TObject);
3246  begin  begin
 // 20150311: start  
 (*  
   if PanelValgA.Color = clBtnFace then  
   begin  
      AutomatiskValg1.Checked := true;  
      PanelValgA.Color := clGreen;  
      PanelValgA.Font.Color := clWhite;  
   end  
   else  
   begin  
      AutomatiskValg1.Checked := false;  
      PanelValgA.Color := clBtnFace;  
      PanelValgA.Font.Color := clWindowText;  
   end;  
 *)  
3247  // Skal ikke toggle men bare sætte funktionen on  // Skal ikke toggle men bare sætte funktionen on
3248  // Fravælges ved at vælge en scanningstype  // Fravælges ved at vælge en scanningstype
3249       AutomatiskValg1.Checked := true;    AutomatiskValg1.Checked := true;
3250       PanelValgA.Color := clGreen;    PanelValgA.Color := clGreen;
3251       PanelValgA.Font.Color := clWhite;    PanelValgA.Font.Color := clWhite;
3252  // 20150311: slut  
3253    
3254    
3255  end;  end;
3256    
3257  procedure TMainForm.Pakkernormal1Click(Sender: TObject);  procedure TMainForm.Pakkernormal1Click(Sender: TObject);
# Line 3437  begin Line 3461  begin
3461    
3462    if FileExists(fileName) then    if FileExists(fileName) then
3463    begin    begin
3464      if AdobeReaderExists then      if TUtils.AdobeReaderExists then
3465      begin      begin
3466        //ShellExecute(Handle, 'open', 'c:\Windows\notepad.exe', nil, nil, SW_SHOWNORMAL);        //ShellExecute(Handle, 'open', 'c:\Windows\notepad.exe', nil, nil, SW_SHOWNORMAL);
3467        ShellExecute(Handle,'open',PChar(fileName), nil, nil, SW_SHOWNORMAL);        ShellExecute(Handle,'open',PChar(fileName), nil, nil, SW_SHOWNORMAL);
# Line 3461  begin Line 3485  begin
3485    
3486    if FileExists(fileName) then    if FileExists(fileName) then
3487    begin    begin
3488      if AdobeReaderExists then      if TUtils.AdobeReaderExists then
3489      begin      begin
3490        //ShellExecute(Handle, 'open', 'c:\Windows\notepad.exe', nil, nil, SW_SHOWNORMAL);        //ShellExecute(Handle, 'open', 'c:\Windows\notepad.exe', nil, nil, SW_SHOWNORMAL);
3491        ShellExecute(Handle,'open',PChar(fileName), nil, nil, SW_SHOWNORMAL);        ShellExecute(Handle,'open',PChar(fileName), nil, nil, SW_SHOWNORMAL);
# Line 3620  begin Line 3644  begin
3644        radioLillePakke.Enabled := true;        radioLillePakke.Enabled := true;
3645        ListBox1.Visible := true;        ListBox1.Visible := true;
3646        ListBox1.Items.Clear;        ListBox1.Items.Clear;
3647        DownloadButton01.Enabled := false;        BtnDownloadKontrolfil.Enabled := false;
3648        OpdaterListenButton01.Enabled := true;        OpdaterListenButton01.Enabled := true;
3649        DownloadButton03.Visible := false;        DownloadButton03.Visible := false;
3650        EKLoverforsel.Enabled := false;        EKLoverforsel.Enabled := false;
# Line 3656  begin Line 3680  begin
3680        radioLillePakke.Enabled := false;        radioLillePakke.Enabled := false;
3681        ListBox1.Visible := true;        ListBox1.Visible := true;
3682        ListBox1.Items.Clear;        ListBox1.Items.Clear;
3683        DownloadButton01.Enabled := false;        BtnDownloadKontrolfil.Enabled := false;
3684        OpdaterListenButton01.Enabled := true;        OpdaterListenButton01.Enabled := true;
3685    
3686        EKLoverforsel.Enabled := true;        EKLoverforsel.Enabled := true;
# Line 3693  begin Line 3717  begin
3717        radioLillePakke.Enabled := false;        radioLillePakke.Enabled := false;
3718        ListBox1.Visible := true;        ListBox1.Visible := true;
3719        ListBox1.Items.Clear;        ListBox1.Items.Clear;
3720        DownloadButton01.Enabled := false;        BtnDownloadKontrolfil.Enabled := false;
3721        OpdaterListenButton01.Enabled := true;        OpdaterListenButton01.Enabled := true;
3722        EKLoverforsel.Enabled := false;        EKLoverforsel.Enabled := false;
3723        InitLillePakke();        InitLillePakke();
# Line 3740  begin Line 3764  begin
3764        ListBox1.Visible := true;        ListBox1.Visible := true;
3765        ListBox1.Items.Clear();        ListBox1.Items.Clear();
3766    
3767        DownloadButton01.Enabled := false;        BtnDownloadKontrolfil.Enabled := false;
3768        OpdaterListenButton01.Enabled := true;        OpdaterListenButton01.Enabled := true;
3769        EKLoverforsel.Enabled := false;        EKLoverforsel.Enabled := false;
3770        InitLillePakke();        InitLillePakke();
# Line 4503  begin Line 4527  begin
4527    ListBox1.SetFocus;  // for at flytte fokus væk fra upload knappen så denne ikke aktiveres ved scanning / indtastning af stregkode    ListBox1.SetFocus;  // for at flytte fokus væk fra upload knappen så denne ikke aktiveres ved scanning / indtastning af stregkode
4528  end;  end;
4529    
4530  procedure TMainForm.DownloadButton01Click(Sender: TObject);  procedure TMainForm.BtnDownloadKontrolfilClick(Sender: TObject);
4531  begin  begin
4532      DownloadBladhusKontrolfil();      DownloadBladhusKontrolfil();
4533      ListBox1.SetFocus;  // for at flytte fokus væk fra download knappen så denne ikke aktiveres ved scanning / indtastning af stregkode      ListBox1.SetFocus;  // for at flytte fokus væk fra download knappen så denne ikke aktiveres ved scanning / indtastning af stregkode
# Line 4534  var Line 4558  var
4558    XForm, XFormOld: TXForm; //Bruges til rotate X-formation    XForm, XFormOld: TXForm; //Bruges til rotate X-formation
4559    Angle: integer;    Angle: integer;
4560    gMode: integer;    gMode: integer;
   BarcodeArea: TRect;  
4561    Dirigering: string;    Dirigering: string;
4562    
4563  begin  begin
# Line 4687  var Line 4710  var
4710        end;        end;
4711    
4712    
4713      if (Scanningtype = '6') then  
4714        if (Scanningtype = '7') then
4715         begin
4716          URLStr := Format(UrlIndleveringsPakkeManglendeScanninger, [StedKode]);
4717         end
4718        else if (Scanningtype = '6') then
4719       begin       begin
4720        URLStr := Format(UrlPakkeshopManglendeReturScanninger,[StedKode]);        URLStr := Format(UrlPakkeshopManglendeReturScanninger, [StedKode]);
4721       end       end
4722      else if (Scanningtype = '5') then      else if (Scanningtype = '5') then
4723       begin       begin
4724        URLStr := Format(UrlPakkeshopManglendeScanninger,[StedKode]);        URLStr := Format(UrlPakkeshopManglendeScanninger, [StedKode]);
4725       end       end
4726      else if (Scanningtype = '1') then      else if (Scanningtype = '1') then
4727       begin       begin
# Line 5380  begin Line 5408  begin
5408    end;    end;
5409  end;  end;
5410    
5411  function TMainForm.AdobeReaderExists: Boolean;  
 var  
   AReg: TRegistry;  
 begin  
   result:= false;  
   AReg := TRegistry.Create;  
   AReg.RootKey := HKEY_LOCAL_MACHINE;  
   if AReg.KeyExists('\SOFTWARE\Adobe\Acrobat Reader') then  
     result:= True;  
   AReg.Free;  
 end;  
5412    
5413    
5414  function TMainForm.CheckUrl(url:string):boolean;  function TMainForm.CheckUrl(url:string):boolean;

Legend:
Removed from v.2682  
changed lines
  Added in v.2692

  ViewVC Help
Powered by ViewVC 1.1.20