/[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 2701 by torben, Thu Sep 3 15:22:09 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;
59      OpdaterListenButton01: TButton;      BtnOpdaterListen: TButton;
60      UploadButton01: TButton;      BtnUploadLogfil: TButton;
61      DownloadButton03: TButton;      BtnDownloadRuteskiftFil: TButton;
62      Pakkeshoplevering1: TMenuItem;      Pakkeshoplevering1: TMenuItem;
63      PakkeshopText1: TStaticText;      PakkeshopText1: TStaticText;
64      btnNulstil: TButton;      btnNulstil: TButton;
65      Returpakkerfrapakkeshop1: TMenuItem;      Returpakkerfrapakkeshop1: TMenuItem;
66      Altidprintepakkelabel1: TMenuItem;      Altidprintepakkelabel1: TMenuItem;
67      chkAltidPrintLabel: TCheckBox;      chkAltidPrintLabel: TCheckBox;
68      EKLoverforsel: TButton;      BtnEKLoverforsel: TButton;
69      N5: TMenuItem;      N5: TMenuItem;
70      Uploadlogfil1: TMenuItem;      Uploadlogfil1: TMenuItem;
71      Manual1: TMenuItem;      Manual1: TMenuItem;
# Line 93  type Line 93  type
93      PanelManglendePakker6: TPanel;      PanelManglendePakker6: TPanel;
94      menuIndlevering: TMenuItem;      menuIndlevering: TMenuItem;
95    
   
   function Sto_GetFmtFileVersion(const FileName: String = ''): String;  
   
96    function getProddato() : TDate;    function getProddato() : TDate;
97    function getProddag() : String;    function getProddag() : String;
98    function retRutenummer(rutenummer : String) : String;    function retRutenummer(rutenummer : String) : String;
99    function GetCurrentPrinterHandle() : THandle;    function GetCurrentPrinterHandle() : THandle;
100    function SavePChar(p: PChar): PChar;    function SavePChar(p: PChar): PChar;
   function AdobeReaderExists(): Boolean;  
   function FileTime2DateTime(FileTime: TFileTime): TDateTime;  
   function CheckUrl(url:string):boolean;  
101    
102    procedure PlaySound(filename : PWideChar);    procedure PlaySound(filename : PWideChar);
103    procedure StartScreen();    procedure StartScreen();
# Line 134  type Line 128  type
128    procedure Button1Click(Sender: TObject);    procedure Button1Click(Sender: TObject);
129    procedure ListBox1DrawItem(Control: TWinControl; Index: Integer; Rect: TRect; State: TOwnerDrawState);    procedure ListBox1DrawItem(Control: TWinControl; Index: Integer; Rect: TRect; State: TOwnerDrawState);
130    procedure Budlevering1Click(Sender: TObject);    procedure Budlevering1Click(Sender: TObject);
131    procedure DownloadButton01Click(Sender: TObject);    procedure BtnDownloadKontrolfilClick(Sender: TObject);
132    procedure OpdaterListenButton01Click(Sender: TObject);    procedure BtnOpdaterListenClick(Sender: TObject);
133    procedure DownloadBladhusRuteskiftfil();    procedure DownloadBladhusRuteskiftfil();
134    procedure DownloadBladhusKontrolfil();    procedure DownloadBladhusKontrolfil();
135    procedure SendFilTilDAO(fil_type, filnavn_input, filnavn_output: String);    procedure SendFilTilDAO(fil_type, filnavn_input, filnavn_output: String);
# Line 143  type Line 137  type
137    procedure UploadInifilTilDAO();    procedure UploadInifilTilDAO();
138    procedure SletStregkodelinieFraListboks2(StregKode : String);    procedure SletStregkodelinieFraListboks2(StregKode : String);
139    procedure FormDestroy(Sender: TObject);    procedure FormDestroy(Sender: TObject);
140    procedure UploadButton01Click(Sender: TObject);    procedure BtnUploadLogfilClick(Sender: TObject);
141    procedure DownloadButton03Click(Sender: TObject);    procedure BtnDownloadRuteskiftFilClick(Sender: TObject);
142    procedure Pakkeshoplevering1Click(Sender: TObject);    procedure Pakkeshoplevering1Click(Sender: TObject);
143    procedure btnNulstilClick(Sender: TObject);    procedure btnNulstilClick(Sender: TObject);
144    procedure Returpakkerfrapakkeshop1Click(Sender: TObject);    procedure Returpakkerfrapakkeshop1Click(Sender: TObject);
# Line 158  type Line 152  type
152    
153    procedure Altidprintepakkelabel1Click(Sender: TObject);    procedure Altidprintepakkelabel1Click(Sender: TObject);
154    procedure chkAltidPrintLabelClick(Sender: TObject);    procedure chkAltidPrintLabelClick(Sender: TObject);
155    procedure EKLoverforselClick(Sender: TObject);    procedure BtnEKLoverforselClick(Sender: TObject);
156    procedure Uploadlogfil1Click(Sender: TObject);    procedure Uploadlogfil1Click(Sender: TObject);
157    procedure Manual1Click(Sender: TObject);    procedure Manual1Click(Sender: TObject);
158    procedure Timer1Timer(Sender: TObject);    procedure Timer1Timer(Sender: TObject);
# Line 193  type Line 187  type
187      SkrivLog : String;      SkrivLog : String;
188      Sted : String;      Sted : String;
189      StedNavn : String;      StedNavn : String;
190      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;
191  // 29150330: start  // 29150330: start
192      UrlEKLoverforselPakkeshop : String;      UrlEKLoverforselPakkeshop : String;
193  // 20150330: slut  // 20150330: slut
# Line 207  type Line 201  type
201      AlarmLyd : String;      AlarmLyd : String;
202      ScannetOkLyd : String;      ScannetOkLyd : String;
203      ScannetOkStorLyd : String;      ScannetOkStorLyd : String;
204  // 20150317: start  
205      ScannetOkTilTjekkodeLyd : String;      ScannetOkTilTjekkodeLyd : String;
206  // 20150317: slut  
207      PrinterNavn : String;      PrinterNavn : String;
208      TjekPrinter : String;      TjekPrinter : String;
209      XPosRute : integer;      XPosRute : integer;
# Line 335  begin Line 329  begin
329        PanelValg7.Font.Color := clWindowText;        PanelValg7.Font.Color := clWindowText;
330      end;      end;
331    
332      OpdaterListenButton01.Enabled := false;      BtnOpdaterListen.Enabled := false;
333    
334      if (BladhusSted > 00) and (BladhusSted < Length(BladhusStedNavn)) then      if (BladhusSted > 00) and (BladhusSted < Length(BladhusStedNavn)) then
335      begin      begin
# Line 498  end; Line 492  end;
492    
493  procedure TMainForm.Automatiskvalg1Click(Sender: TObject);  procedure TMainForm.Automatiskvalg1Click(Sender: TObject);
494  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;  
 *)  
495  // Skal ikke toggle men bare sætte funktionen on  // Skal ikke toggle men bare sætte funktionen on
496  // Fravælges ved at vælge en scanningstype  // Fravælges ved at vælge en scanningstype
497       AutomatiskValg1.Checked := true;       AutomatiskValg1.Checked := true;
498       PanelValgA.Color := clGreen;       PanelValgA.Color := clGreen;
499       PanelValgA.Font.Color := clWhite;       PanelValgA.Font.Color := clWhite;
 // 20150317: slut  
500  end;  end;
501    
502  procedure TMainForm.FormCreate(Sender: TObject);  procedure TMainForm.FormCreate(Sender: TObject);
# Line 578  begin Line 556  begin
556      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');
557      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');
558    
559    
560      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');
561        UrlIndleveringsPakkeManglendeScanninger := ReadString('Settings', 'UrlIndleveringsPakkeManglendeScanninger','http://omdeling.info/webservices/pakkeshop/IndleveringsPakkeManglendeScanninger.php?sted=%s');
562    
563    
564    
565      LabelType := ReadInteger('Settings','LabelType',1);      LabelType := ReadInteger('Settings','LabelType',1);
# Line 618  begin Line 599  begin
599    
600      if (SkrivLog = '1') then      if (SkrivLog = '1') then
601      begin      begin
602        logTekst := 'Program start (Version: ' + Sto_GetFmtFileVersion('') + ') Dato: ' + FormatDateTime('yyyy-mm-dd hh:nn:ss',now);        logTekst := 'Program start (Version: ' + TUtils.Sto_GetFmtFileVersion('') + ') Dato: ' + FormatDateTime('yyyy-mm-dd hh:nn:ss',now);
603        try        try
604          SkrivScanningLogFil(logTekst);          SkrivScanningLogFil(logTekst);
605          Uploadlogfil1.Enabled := true;          Uploadlogfil1.Enabled := true;
606          UploadButton01.Enabled := true;          BtnUploadLogfil.Enabled := true;
607          logTekst := 'Programmet er installeret som: '+ParamStr(0);          logTekst := 'Programmet er installeret som: '+ParamStr(0);
608          SkrivScanningLogFil(logTekst);          SkrivScanningLogFil(logTekst);
609          // Oprydning i gamle logfiler          // Oprydning i gamle logfiler
# Line 790  begin Line 771  begin
771      // Hvis specialversion er valgt (SpecialVersionSted er sat til en værdi ovenfor)      // Hvis specialversion er valgt (SpecialVersionSted er sat til en værdi ovenfor)
772      // ændrer vi Sted og Scanningtype her:      // ændrer vi Sted og Scanningtype her:
773    
 // 20150313: start  
774      if SpecialVersionSted = 'NS' then      if SpecialVersionSted = 'NS' then
775      begin      begin
776         SpecialVersionSted := '01';         SpecialVersionSted := '01';
# Line 801  begin Line 781  begin
781         SpecialVersionSted := '03';         SpecialVersionSted := '03';
782         SpecialVersionScanningtype := '4';         SpecialVersionScanningtype := '4';
783      end;      end;
 // 20150313: slut  
784    
785      if SpecialVersionSted = 'BK' then      if SpecialVersionSted = 'BK' then
786      begin      begin
# Line 1146  begin Line 1125  begin
1125      Scanningtype := gemScanningtype;      Scanningtype := gemScanningtype;
1126    
1127      SendInfoTilServer(Sted, Scanningtype, 'Begin', '');      SendInfoTilServer(Sted, Scanningtype, 'Begin', '');
1128      SendInfoTilServer(Sted, Scanningtype, 'ProgramVersion', Sto_GetFmtFileVersion(''));      SendInfoTilServer(Sted, Scanningtype, 'ProgramVersion', TUtils.Sto_GetFmtFileVersion(''));
1129    
1130  end;  end;
1131    
# Line 1621  begin Line 1600  begin
1600    
1601      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 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
1602      begin      begin
1603    
1604         if PakkeshopLevering1.Checked and (PakkeshopStregkode <> '') and (PakkeshopTjekkode <> '') then         if PakkeshopLevering1.Checked and (PakkeshopStregkode <> '') and (PakkeshopTjekkode <> '') then
1605            StregKode := PakkeshopStregkode;            StregKode := PakkeshopStregkode;
1606         if Pakkernormal1.Checked and ((BoghandlerStregkode <> '') and (BoghandlerTjekkode <> '') or not Scanogstjekkoden1.Checked) then         if Pakkernormal1.Checked and ((BoghandlerStregkode <> '') and (BoghandlerTjekkode <> '') or not Scanogstjekkoden1.Checked) then
# Line 1695  begin Line 1675  begin
1675            begin            begin
1676              VisAlarmSkaerm('');              VisAlarmSkaerm('');
1677            end;            end;
1678    
1679           if not btnNulstil.Visible then           if not btnNulstil.Visible then
1680            begin            begin
1681    
# Line 1787  var Line 1768  var
1768    
1769    
1770  begin  begin
1771      if Budlevering1.Checked or Pakkeshoplevering1.Checked or Returpakkerfrapakkeshop1.Checked or Pakkernormal1.Checked then      if Budlevering1.Checked or Pakkeshoplevering1.Checked or Returpakkerfrapakkeshop1.Checked or Pakkernormal1.Checked or menuIndlevering.Checked then
1772      begin      begin
1773        for i := ListBox2.items.count-1 downto 0 do        for i := ListBox2.items.count-1 downto 0 do
1774          if pos(StregKode,ListBox2.items[i]) <> 0 then          if pos(StregKode,ListBox2.items[i]) <> 0 then
# Line 1995  begin Line 1976  begin
1976      01 :      01 :
1977            begin;      // NS            begin;      // NS
1978              Testprinter1.Visible := true;              Testprinter1.Visible := true;
1979              DownloadButton01.Enabled := true;              BtnDownloadKontrolfil.Enabled := true;
1980              OpdaterListenButton01.Enabled := true;              BtnOpdaterListen.Enabled := true;
1981              IdFTP1.Passive := true;              IdFTP1.Passive := true;
1982              IdFTP1.PassiveUseControlHost := true;              IdFTP1.PassiveUseControlHost := true;
1983              BladhusKontrolfil_server := 'franordjyske/RuteKontrol.txt';              BladhusKontrolfil_server := 'franordjyske/RuteKontrol.txt';
# Line 2011  begin Line 1992  begin
1992              Storepakker1.Enabled := true;              Storepakker1.Enabled := true;
1993              radioStorPakke.Enabled := true;              radioStorPakke.Enabled := true;
1994              radioLillePakke.Enabled := true;              radioLillePakke.Enabled := true;
1995              DownloadButton01.Enabled := false;     // kontrolfil bruges ikke her              BtnDownloadKontrolfil.Enabled := false;     // kontrolfil bruges ikke her
1996              OpdaterListenButton01.Enabled := true;              BtnOpdaterListen.Enabled := true;
1997              IdFTP1.Passive := true;              IdFTP1.Passive := true;
1998              IdFTP1.PassiveUseControlHost := true;              IdFTP1.PassiveUseControlHost := true;
1999              IndlesManglendeScanninger();              IndlesManglendeScanninger();
# Line 2022  begin Line 2003  begin
2003              Testprinter1.Visible := true;              Testprinter1.Visible := true;
2004             if (getProddag() = 'lørdag') then             if (getProddag() = 'lørdag') then
2005              begin              begin
2006                DownloadButton03.Visible := false;                BtnDownloadRuteskiftFil.Visible := false;
2007              end              end
2008              else              else
2009              begin              begin
2010                DownloadButton03.Visible := false;                BtnDownloadRuteskiftFil.Visible := false;
2011              end;              end;
2012              DownloadButton01.Enabled := true;              BtnDownloadKontrolfil.Enabled := true;
2013              OpdaterListenButton01.Enabled := true;              BtnOpdaterListen.Enabled := true;
2014              IdFTP1.Passive := true;              IdFTP1.Passive := true;
2015              IdFTP1.PassiveUseControlHost := true;              IdFTP1.PassiveUseControlHost := true;
2016              BladhusRuteskiftfil_server := 'frafd/RuteSkift.txt';              BladhusRuteskiftfil_server := 'frafd/RuteSkift.txt';
# Line 2049  begin Line 2030  begin
2030              Storepakker1.Enabled := true;              Storepakker1.Enabled := true;
2031              radioStorPakke.Enabled := true;              radioStorPakke.Enabled := true;
2032              radioLillePakke.Enabled := true;              radioLillePakke.Enabled := true;
2033              DownloadButton01.Enabled := false;    // kontrolfil bruges ikke her              BtnDownloadKontrolfil.Enabled := false;    // kontrolfil bruges ikke her
2034              OpdaterListenButton01.Enabled := true;              BtnOpdaterListen.Enabled := true;
2035              IdFTP1.Passive := true;              IdFTP1.Passive := true;
2036              IdFTP1.PassiveUseControlHost := true;              IdFTP1.PassiveUseControlHost := true;
2037            end;            end;
# Line 2171  begin Line 2152  begin
2152         PrintNyLabel := True; //Indleveringskode vil ALTID udskrive label         PrintNyLabel := True; //Indleveringskode vil ALTID udskrive label
2153         PakkeshopLabel := TPakkeshopLabel.Create( XMLDocument1 ); //Opret struct og parse xml doc         PakkeshopLabel := TPakkeshopLabel.Create( XMLDocument1 ); //Opret struct og parse xml doc
2154         RuteNummer := PakkeshopLabel.Koreliste;         RuteNummer := PakkeshopLabel.Koreliste;
2155           Stregkode := PakkeshopLabel.Stregkode;
2156    
2157         PrintPakkeshopLabel( PakkeshopLabel );         PrintPakkeshopLabel( PakkeshopLabel );
2158    
# Line 2304  begin Line 2286  begin
2286        List1msg := List1msg + '; ' + Stregkode + ' (' + BoghandlerTjekkode + ')' + '; ' + Kommentar;        List1msg := List1msg + '; ' + Stregkode + ' (' + BoghandlerTjekkode + ')' + '; ' + Kommentar;
2287      end;      end;
2288    end;    end;
2289      if menuIndlevering.Checked then
2290      begin
2291        List1Msg := Stregkode;
2292      end;
2293    
2294    
2295    ListBox1.Items.Insert(0,List1Msg);    ListBox1.Items.Insert(0,List1Msg);
2296    logTekst := RightStr(List1Msg, Length(List1Msg)-10);    logTekst := RightStr(List1Msg, Length(List1Msg)-10);
2297    SkrivScanningLogFil(logTekst);    SkrivScanningLogFil(logTekst);
2298  end;  end;
2299    
2300  procedure TMainForm.UploadButton01Click(Sender: TObject);  procedure TMainForm.BtnUploadLogfilClick(Sender: TObject);
2301  begin  begin
2302    UploadLogfilTilDAO();    UploadLogfilTilDAO();
2303    UploadInifilTilDAO();    UploadInifilTilDAO();
# Line 2673  begin Line 2661  begin
2661          // Tjekker UrlNormal          // Tjekker UrlNormal
2662          if PanelValg1.Enabled = true then          if PanelValg1.Enabled = true then
2663          begin          begin
2664            if CheckUrl(UrlNormal) then            if TUtils.CheckUrl(UrlNormal) then
2665            begin            begin
2666              logTekst := 'UrlNormal accepteret: ' + UrlNormal;              logTekst := 'UrlNormal accepteret: ' + UrlNormal;
2667              SkrivScanningLogFil(logTekst);              SkrivScanningLogFil(logTekst);
# Line 2702  begin Line 2690  begin
2690          // Tjekker UrlReturDAO          // Tjekker UrlReturDAO
2691          if PanelValg2.Enabled = true then          if PanelValg2.Enabled = true then
2692          begin          begin
2693            if CheckUrl(UrlReturDAO) then            if TUtils.CheckUrl(UrlReturDAO) then
2694            begin            begin
2695              logTekst := 'UrlReturDAO accepteret: ' + UrlReturDAO;              logTekst := 'UrlReturDAO accepteret: ' + UrlReturDAO;
2696              SkrivScanningLogFil(logTekst);              SkrivScanningLogFil(logTekst);
# Line 2730  begin Line 2718  begin
2718          // Tjekker UrlReturBoghandler          // Tjekker UrlReturBoghandler
2719          if PanelValg3.Enabled = true then          if PanelValg3.Enabled = true then
2720          begin          begin
2721            if CheckUrl(UrlReturBoghandler) then            if TUtils.CheckUrl(UrlReturBoghandler) then
2722            begin            begin
2723              logTekst := 'UrlReturBoghandler accepteret: ' + UrlReturBoghandler;              logTekst := 'UrlReturBoghandler accepteret: ' + UrlReturBoghandler;
2724              SkrivScanningLogFil(logTekst);              SkrivScanningLogFil(logTekst);
# Line 2758  begin Line 2746  begin
2746          // Tjekker UrlBudlevering          // Tjekker UrlBudlevering
2747          if PanelValg4.Enabled = true then          if PanelValg4.Enabled = true then
2748          begin          begin
2749            if CheckUrl(UrlBudlevering) then            if TUtils.CheckUrl(UrlBudlevering) then
2750            begin            begin
2751              logTekst := 'UrlBudlevering accepteret: ' + UrlBudlevering;              logTekst := 'UrlBudlevering accepteret: ' + UrlBudlevering;
2752              SkrivScanningLogFil(logTekst);              SkrivScanningLogFil(logTekst);
# Line 2786  begin Line 2774  begin
2774          // Tjekker UrlPakkeshoplevering          // Tjekker UrlPakkeshoplevering
2775          if PanelValg5.Enabled = true then          if PanelValg5.Enabled = true then
2776          begin          begin
2777            if CheckUrl(UrlPakkeshoplevering) then            if TUtils.CheckUrl(UrlPakkeshoplevering) then
2778            begin            begin
2779              logTekst := 'UrlPakkeshoplevering accepteret: ' + UrlPakkeshoplevering;              logTekst := 'UrlPakkeshoplevering accepteret: ' + UrlPakkeshoplevering;
2780              SkrivScanningLogFil(logTekst);              SkrivScanningLogFil(logTekst);
# Line 2814  begin Line 2802  begin
2802          // Tjekker UrlReturPakkeshop          // Tjekker UrlReturPakkeshop
2803          if PanelValg6.Enabled = true then          if PanelValg6.Enabled = true then
2804          begin          begin
2805            if CheckUrl(UrlReturPakkeshop) then            if TUtils.CheckUrl(UrlReturPakkeshop) then
2806            begin            begin
2807              logTekst := 'UrlReturPakkeshop accepteret: ' + UrlReturPakkeshop;              logTekst := 'UrlReturPakkeshop accepteret: ' + UrlReturPakkeshop;
2808              SkrivScanningLogFil(logTekst);              SkrivScanningLogFil(logTekst);
# Line 2843  begin Line 2831  begin
2831          if (PanelValg1.Enabled = true)          if (PanelValg1.Enabled = true)
2832          or (PanelValg4.Enabled = true) then          or (PanelValg4.Enabled = true) then
2833          begin          begin
2834            if CheckUrl(UrlManglendeScanninger) then            if TUtils.CheckUrl(UrlManglendeScanninger) then
2835            begin            begin
2836              logTekst := 'UrlManglendeScanninger accepteret: ' + UrlManglendeScanninger;              logTekst := 'UrlManglendeScanninger accepteret: ' + UrlManglendeScanninger;
2837              SkrivScanningLogFil(logTekst);              SkrivScanningLogFil(logTekst);
# Line 2871  begin Line 2859  begin
2859          // Tjekker UrlPakkeshopManglendeScanninger          // Tjekker UrlPakkeshopManglendeScanninger
2860          if PanelValg5.Enabled = true then          if PanelValg5.Enabled = true then
2861          begin          begin
2862            if CheckUrl(UrlPakkeshopManglendeScanninger) then            if TUtils.CheckUrl(UrlPakkeshopManglendeScanninger) then
2863            begin            begin
2864              logTekst := 'UrlPakkeshopManglendeScanninger accepteret: ' + UrlPakkeshopManglendeScanninger;              logTekst := 'UrlPakkeshopManglendeScanninger accepteret: ' + UrlPakkeshopManglendeScanninger;
2865              SkrivScanningLogFil(logTekst);              SkrivScanningLogFil(logTekst);
# Line 2899  begin Line 2887  begin
2887          // Tjekker UrlPakkeshopManglendeReturScanninger          // Tjekker UrlPakkeshopManglendeReturScanninger
2888          if PanelValg6.Enabled = true then          if PanelValg6.Enabled = true then
2889          begin          begin
2890            if CheckUrl(UrlPakkeshopManglendeReturScanninger) then            if TUtils.CheckUrl(UrlPakkeshopManglendeReturScanninger) then
2891            begin            begin
2892              logTekst := 'UrlPakkeshopManglendeReturScanninger accepteret: ' + UrlPakkeshopManglendeReturScanninger;              logTekst := 'UrlPakkeshopManglendeReturScanninger accepteret: ' + UrlPakkeshopManglendeReturScanninger;
2893              SkrivScanningLogFil(logTekst);              SkrivScanningLogFil(logTekst);
# Line 2924  begin Line 2912  begin
2912            end;            end;
2913          end;          end;
2914    
2915           // Tjekker UrlIndleveringsPakke og UrlIndleveringsPakkeManglendeScanninger
2916            if PanelValg7.Enabled = true then
2917            begin
2918              if TUtils.CheckUrl(UrlIndleveringsPakke) then
2919              begin
2920                logTekst := 'UrlIndleveringsPakke accepteret: ' + UrlIndleveringsPakke;
2921                SkrivScanningLogFil(logTekst);
2922              end
2923              else
2924              begin
2925                inc(urlFejl);   // Optæller antal fejl
2926                logTekst := 'UrlIndleveringsPakke svarer ikke: ' + UrlIndleveringsPakke;
2927                ListBox1.Items.Insert(0,TimeToStr(now) + ': ' + logTekst);
2928                if TjekUrls = '1' then
2929                begin
2930                  logTekst := logTekst + crlf + crlf + 'Programmet afsluttes... ';
2931                end;
2932                SkrivScanningLogFil(logTekst);
2933                if TjekUrls = '1' then
2934                begin
2935                  ShowMessage(logTekst);
2936                  UrlSendPrograminfo := '';   // Her sletter vi lige url, så der ikke forsøges at sende besked ved program slut
2937                  Application.Terminate;
2938                  exit;
2939                end;
2940              end;
2941    
2942              if TUtils.CheckUrl(UrlIndleveringsPakkeManglendeScanninger) then
2943              begin
2944                logTekst := 'UrlIndleveringsPakkeManglendeScanninger accepteret: ' + UrlIndleveringsPakkeManglendeScanninger;
2945                SkrivScanningLogFil(logTekst);
2946              end
2947              else
2948              begin
2949                inc(urlFejl);   // Optæller antal fejl
2950                logTekst := 'UrlIndleveringsPakkeManglendeScanninger svarer ikke: ' + UrlIndleveringsPakkeManglendeScanninger;
2951                ListBox1.Items.Insert(0,TimeToStr(now) + ': ' + logTekst);
2952                if TjekUrls = '1' then
2953                begin
2954                  logTekst := logTekst + crlf + crlf + 'Programmet afsluttes... ';
2955                end;
2956                SkrivScanningLogFil(logTekst);
2957                if TjekUrls = '1' then
2958                begin
2959                  ShowMessage(logTekst);
2960                  UrlSendPrograminfo := '';   // Her sletter vi lige url, så der ikke forsøges at sende besked ved program slut
2961                  Application.Terminate;
2962                  exit;
2963                end;
2964              end;
2965            end;
2966    
2967          // Tjekker UrlEKLoverforsel          // Tjekker UrlEKLoverforsel
2968          if PanelValg1.Enabled = true then          if PanelValg1.Enabled = true then
2969          begin          begin
2970            if CheckUrl(UrlEKLoverforsel) then            if TUtils.CheckUrl(UrlEKLoverforsel) then
2971            begin            begin
2972              logTekst := 'UrlEKLoverforsel accepteret: ' + UrlEKLoverforsel;              logTekst := 'UrlEKLoverforsel accepteret: ' + UrlEKLoverforsel;
2973              SkrivScanningLogFil(logTekst);              SkrivScanningLogFil(logTekst);
# Line 2956  begin Line 2996  begin
2996          // Tjekker UrlEKLoverforselPakkeshop          // Tjekker UrlEKLoverforselPakkeshop
2997          if PanelValg5.Enabled = true then          if PanelValg5.Enabled = true then
2998          begin          begin
2999            if CheckUrl(UrlEKLoverforselPakkeshop) then            if TUtils.CheckUrl(UrlEKLoverforselPakkeshop) then
3000            begin            begin
3001              logTekst := 'UrlEKLoverforselPakkeshop accepteret: ' + UrlEKLoverforselPakkeshop;              logTekst := 'UrlEKLoverforselPakkeshop accepteret: ' + UrlEKLoverforselPakkeshop;
3002              SkrivScanningLogFil(logTekst);              SkrivScanningLogFil(logTekst);
# Line 2983  begin Line 3023  begin
3023    
3024    
3025          // Tjekker UrlFindPakketype          // Tjekker UrlFindPakketype
3026          if CheckUrl(UrlFindPakketype) then          if TUtils.CheckUrl(UrlFindPakketype) then
3027          begin          begin
3028            logTekst := 'UrlFindPakketype accepteret: ' + UrlFindPakketype;            logTekst := 'UrlFindPakketype accepteret: ' + UrlFindPakketype;
3029            SkrivScanningLogFil(logTekst);            SkrivScanningLogFil(logTekst);
# Line 3008  begin Line 3048  begin
3048          end;          end;
3049    
3050          // Tjekker UrlSendPrograminfo          // Tjekker UrlSendPrograminfo
3051          if CheckUrl(UrlSendPrograminfo) then          if TUtils.CheckUrl(UrlSendPrograminfo) then
3052          begin          begin
3053            logTekst := 'UrlSendPrograminfo accepteret: ' + UrlSendPrograminfo;            logTekst := 'UrlSendPrograminfo accepteret: ' + UrlSendPrograminfo;
3054            SkrivScanningLogFil(logTekst);            SkrivScanningLogFil(logTekst);
# Line 3045  begin Line 3085  begin
3085    
3086  end;  end;
3087    
 function TMainForm.FileTime2DateTime(FileTime: TFileTime): TDateTime;  
 var  
    LocalFileTime: TFileTime;  
    SystemTime: TSystemTime;  
 begin  
    FileTimeToLocalFileTime(FileTime, LocalFileTime) ;  
    FileTimeToSystemTime(LocalFileTime, SystemTime) ;  
    Result := SystemTimeToDateTime(SystemTime) ;  
 end;  
   
3088  procedure TMainForm.SletLogfiler(Path: string; FileList: TStrings);  procedure TMainForm.SletLogfiler(Path: string; FileList: TStrings);
3089  var  var
3090    SR: TSearchRec;    SR: TSearchRec;
# Line 3074  begin Line 3104  begin
3104    
3105          dt := fileDateToDateTime(SR.Time);  // finder filens timestamp for seneste ændring          dt := fileDateToDateTime(SR.Time);  // finder filens timestamp for seneste ændring
3106          CreationTime := SR.FindData.ftCreationTime;  // finder filens timestamp for oprettelse          CreationTime := SR.FindData.ftCreationTime;  // finder filens timestamp for oprettelse
3107          dtCreation := FileTime2DateTime(CreationTime);   // finder filens timestamp for oprettelse          dtCreation := TUtils.FileTime2DateTime(CreationTime);   // finder filens timestamp for oprettelse
3108          // Selvom creation date godt kan være forskellig fra modified date,          // Selvom creation date godt kan være forskellig fra modified date,
3109          // skal vi alligevel altid tjekke filens alder ud fra modified date          // skal vi alligevel altid tjekke filens alder ud fra modified date
3110          // (ændring den kan ligge både før og efter oprettelse, hvis filerne er flyttet eller ændret manuelt)          // (ændring den kan ligge både før og efter oprettelse, hvis filerne er flyttet eller ændret manuelt)
# Line 3207  end; Line 3237  end;
3237    
3238  procedure TMainForm.PanelValgAClick(Sender: TObject);  procedure TMainForm.PanelValgAClick(Sender: TObject);
3239  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;  
 *)  
3240  // Skal ikke toggle men bare sætte funktionen on  // Skal ikke toggle men bare sætte funktionen on
3241  // Fravælges ved at vælge en scanningstype  // Fravælges ved at vælge en scanningstype
3242       AutomatiskValg1.Checked := true;    AutomatiskValg1.Checked := true;
3243       PanelValgA.Color := clGreen;    PanelValgA.Color := clGreen;
3244       PanelValgA.Font.Color := clWhite;    PanelValgA.Font.Color := clWhite;
3245  // 20150311: slut  
3246    
3247    
3248  end;  end;
3249    
3250  procedure TMainForm.Pakkernormal1Click(Sender: TObject);  procedure TMainForm.Pakkernormal1Click(Sender: TObject);
# Line 3342  var Line 3359  var
3359   tekst, filversion : String;   tekst, filversion : String;
3360  begin  begin
3361    
3362    filversion := Sto_GetFmtFileVersion('');    filversion := TUtils.Sto_GetFmtFileVersion('');
3363    tekst := 'Program til indscanning af pakker'+crlf+'Version '+filversion+crlf+crlf+'Udviklet af it afdelingen, DAO';    tekst := 'Program til indscanning af pakker'+crlf+'Version '+filversion+crlf+crlf+'Udviklet af it afdelingen, DAO';
3364    
3365    tekst := tekst+crlf+crlf;    tekst := tekst+crlf+crlf;
# Line 3437  begin Line 3454  begin
3454    
3455    if FileExists(fileName) then    if FileExists(fileName) then
3456    begin    begin
3457      if AdobeReaderExists then      if TUtils.AdobeReaderExists then
3458      begin      begin
3459        //ShellExecute(Handle, 'open', 'c:\Windows\notepad.exe', nil, nil, SW_SHOWNORMAL);        //ShellExecute(Handle, 'open', 'c:\Windows\notepad.exe', nil, nil, SW_SHOWNORMAL);
3460        ShellExecute(Handle,'open',PChar(fileName), nil, nil, SW_SHOWNORMAL);        ShellExecute(Handle,'open',PChar(fileName), nil, nil, SW_SHOWNORMAL);
# Line 3461  begin Line 3478  begin
3478    
3479    if FileExists(fileName) then    if FileExists(fileName) then
3480    begin    begin
3481      if AdobeReaderExists then      if TUtils.AdobeReaderExists then
3482      begin      begin
3483        //ShellExecute(Handle, 'open', 'c:\Windows\notepad.exe', nil, nil, SW_SHOWNORMAL);        //ShellExecute(Handle, 'open', 'c:\Windows\notepad.exe', nil, nil, SW_SHOWNORMAL);
3484        ShellExecute(Handle,'open',PChar(fileName), nil, nil, SW_SHOWNORMAL);        ShellExecute(Handle,'open',PChar(fileName), nil, nil, SW_SHOWNORMAL);
3485      end      end
3486      else      else
3487      begin      begin
3488        ShowMessage('Acrobat Reader er ikke installeret!');        ShowMessage('Adobe Reader er ikke installeret!');
3489      end;      end;
3490    end    end
3491    else    else
# Line 3534  begin Line 3551  begin
3551        radioStorPakke.Enabled := false;        radioStorPakke.Enabled := false;
3552        radioLillePakke.Enabled := false;        radioLillePakke.Enabled := false;
3553        ListBox1.Visible := true;        ListBox1.Visible := true;
3554        OpdaterListenButton01.Enabled := true;        BtnOpdaterListen.Enabled := true;
3555        EKLoverforsel.Enabled := true;        BtnEKLoverforsel.Enabled := true;
3556        InitLillePakke();        InitLillePakke();
3557        ListBox1.Items.Clear;        ListBox1.Items.Clear;
3558        if BladhusSted = 0 then        if BladhusSted = 0 then
# Line 3568  begin Line 3585  begin
3585        ListBox1.Visible := true;        ListBox1.Visible := true;
3586        ListBox1.Items.Clear;        ListBox1.Items.Clear;
3587        ListBox2.Items.Clear;        ListBox2.Items.Clear;
3588        EKLoverforsel.Enabled := false;        BtnEKLoverforsel.Enabled := false;
3589        InitLillePakke();        InitLillePakke();
3590  end;  end;
3591    
# Line 3594  begin Line 3611  begin
3611        ListBox1.Visible := true;        ListBox1.Visible := true;
3612        ListBox1.Items.Clear;        ListBox1.Items.Clear;
3613        ListBox2.Items.Clear;        ListBox2.Items.Clear;
3614        EKLoverforsel.Enabled := false;        BtnEKLoverforsel.Enabled := false;
3615        InitLillePakke();        InitLillePakke();
3616  end;  end;
3617    
# Line 3620  begin Line 3637  begin
3637        radioLillePakke.Enabled := true;        radioLillePakke.Enabled := true;
3638        ListBox1.Visible := true;        ListBox1.Visible := true;
3639        ListBox1.Items.Clear;        ListBox1.Items.Clear;
3640        DownloadButton01.Enabled := false;        BtnDownloadKontrolfil.Enabled := false;
3641        OpdaterListenButton01.Enabled := true;        BtnOpdaterListen.Enabled := true;
3642        DownloadButton03.Visible := false;        BtnDownloadRuteskiftFil.Visible := false;
3643        EKLoverforsel.Enabled := false;        BtnEKLoverforsel.Enabled := false;
3644        IdFTP1.Passive := true;        IdFTP1.Passive := true;
3645        IdFTP1.PassiveUseControlHost := true;        IdFTP1.PassiveUseControlHost := true;
3646        if (BladhusSted = 0) or (BladhusSted = 2) or (BladhusSted = 3) then        if (BladhusSted = 0) or (BladhusSted = 2) or (BladhusSted = 3) then
# Line 3656  begin Line 3673  begin
3673        radioLillePakke.Enabled := false;        radioLillePakke.Enabled := false;
3674        ListBox1.Visible := true;        ListBox1.Visible := true;
3675        ListBox1.Items.Clear;        ListBox1.Items.Clear;
3676        DownloadButton01.Enabled := false;        BtnDownloadKontrolfil.Enabled := false;
3677        OpdaterListenButton01.Enabled := true;        BtnOpdaterListen.Enabled := true;
3678    
3679        EKLoverforsel.Enabled := true;        BtnEKLoverforsel.Enabled := true;
3680    
3681        InitLillePakke();        InitLillePakke();
3682        IndlesScanningLogFil();        IndlesScanningLogFil();
# Line 3693  begin Line 3710  begin
3710        radioLillePakke.Enabled := false;        radioLillePakke.Enabled := false;
3711        ListBox1.Visible := true;        ListBox1.Visible := true;
3712        ListBox1.Items.Clear;        ListBox1.Items.Clear;
3713        DownloadButton01.Enabled := false;        BtnDownloadKontrolfil.Enabled := false;
3714        OpdaterListenButton01.Enabled := true;        BtnOpdaterListen.Enabled := true;
3715        EKLoverforsel.Enabled := false;        BtnEKLoverforsel.Enabled := false;
3716        InitLillePakke();        InitLillePakke();
3717        IndlesScanningLogFil();        IndlesScanningLogFil();
3718        if BladhusSted = 0 then        if BladhusSted = 0 then
# Line 3740  begin Line 3757  begin
3757        ListBox1.Visible := true;        ListBox1.Visible := true;
3758        ListBox1.Items.Clear();        ListBox1.Items.Clear();
3759    
3760        DownloadButton01.Enabled := false;        BtnDownloadKontrolfil.Enabled := false;
3761        OpdaterListenButton01.Enabled := true;        BtnOpdaterListen.Enabled := true;
3762        EKLoverforsel.Enabled := false;        BtnEKLoverforsel.Enabled := false;
3763        InitLillePakke();        InitLillePakke();
3764        IndlesScanningLogFil();        IndlesScanningLogFil();
3765        if BladhusSted = 0 then        if BladhusSted = 0 then
# Line 3780  begin Line 3797  begin
3797  // 20150310: slut  // 20150310: slut
3798  end;  end;
3799    
 /// <summary>  
 ///   This function reads the file resource of "FileName" and returns  
 ///   the version number as formatted text.</summary>  
 /// <example>  
 ///   Sto_GetFmtFileVersion() = '4.13.128.0'  
 ///   Sto_GetFmtFileVersion('', '%.2d-%.2d-%.2d') = '04-13-128'  
 /// </example>  
 /// <remarks>If "Fmt" is invalid, the function may raise an  
 ///   EConvertError exception.</remarks>  
 /// <param name="FileName">Full path to exe or dll. If an empty  
 ///   string is passed, the function uses the filename of the  
 ///   running exe or dll.</param>  
 /// <param name="Fmt">Format string, you can use at most four integer  
 ///   values.</param>  
 /// <returns>Formatted version number of file, '' if no version  
 ///   resource found.</returns>  
 function TMainForm.Sto_GetFmtFileVersion(const FileName: String = ''): String;  
 var  
   sFileName: String;  
   iBufferSize: DWORD;  
   iDummy: DWORD;  
   pBuffer: Pointer;  
   pFileInfo: Pointer;  
   iVer: array[1..4] of Integer;  
 begin  
   // set default value  
   Result := '';  
   // get filename of exe/dll if no filename is specified  
   sFileName := Trim(FileName);  
   if (sFileName = '') then  
     sFileName := GetModuleName(HInstance);  
   // get size of version info (0 if no version info exists)  
   iBufferSize := GetFileVersionInfoSize(PChar(sFileName), iDummy);  
   if (iBufferSize > 0) then  
   begin  
     GetMem(pBuffer, iBufferSize);  
     try  
     // get fixed file info (language independent)  
     GetFileVersionInfo(PChar(sFileName), 0, iBufferSize, pBuffer);  
     VerQueryValue(pBuffer, '\', pFileInfo, iDummy);  
     // read version blocks  
     iVer[1] := HiWord(PVSFixedFileInfo(pFileInfo)^.dwFileVersionMS);  
     iVer[2] := LoWord(PVSFixedFileInfo(pFileInfo)^.dwFileVersionMS);  
     iVer[3] := HiWord(PVSFixedFileInfo(pFileInfo)^.dwFileVersionLS);  
     iVer[4] := LoWord(PVSFixedFileInfo(pFileInfo)^.dwFileVersionLS);  
     finally  
       FreeMem(pBuffer);  
     end;  
3800    
     // format result string  
     Result := Format('%d.%d.%d.%d', [iVer[1], iVer[2], iVer[3], iVer[4]]);  
   
   end;  
 end;  
3801    
3802  procedure TMainForm.PlaySound(filename : PWideChar);  procedure TMainForm.PlaySound(filename : PWideChar);
3803  begin  begin
# Line 3904  begin; Line 3868  begin;
3868    CheckCode();    CheckCode();
3869  end;  end;
3870    
3871  procedure TMainForm.EKLoverforselClick(Sender: TObject);  procedure TMainForm.BtnEKLoverforselClick(Sender: TObject);
3872  var  var
3873    WebSvar : String;    WebSvar : String;
3874    URLStr : String;    URLStr : String;
# Line 3914  var Line 3878  var
3878    status, kommentar : String;    status, kommentar : String;
3879    
3880  begin  begin
3881      EKLoverforsel.Enabled := false;      BtnEKLoverforsel.Enabled := false;
3882    
3883      ListBox1.Items.Insert(0,TimeToStr(now) + ': ' + 'Overfører de scannede pakker til EKL');      ListBox1.Items.Insert(0,TimeToStr(now) + ': ' + 'Overfører de scannede pakker til EKL');
3884      logTekst := 'Overfører de scannede pakker til EKL';      logTekst := 'Overfører de scannede pakker til EKL';
# Line 3977  begin Line 3941  begin
3941        end;        end;
3942      end;      end;
3943    
3944      EKLoverforsel.Enabled := true;      BtnEKLoverforsel.Enabled := true;
3945    
3946      ListBox1.SetFocus;  // for at flytte fokus væk fra knappen så denne ikke aktiveres ved scanning / indtastning af stregkode      ListBox1.SetFocus;  // for at flytte fokus væk fra knappen så denne ikke aktiveres ved scanning / indtastning af stregkode
3947    
# Line 4503  begin Line 4467  begin
4467    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
4468  end;  end;
4469    
4470  procedure TMainForm.DownloadButton01Click(Sender: TObject);  procedure TMainForm.BtnDownloadKontrolfilClick(Sender: TObject);
4471  begin  begin
4472      DownloadBladhusKontrolfil();      DownloadBladhusKontrolfil();
4473      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
4474  end;  end;
4475    
4476  procedure TMainForm.OpdaterListenButton01Click(Sender: TObject);  procedure TMainForm.BtnOpdaterListenClick(Sender: TObject);
4477  const  const
4478    crlf = Chr(13) + Chr(10) ;  // Carriage return & Linefeed    crlf = Chr(13) + Chr(10) ;  // Carriage return & Linefeed
4479    
# Line 4518  begin Line 4482  begin
4482      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
4483  end;  end;
4484    
4485  procedure TMainForm.DownloadButton03Click(Sender: TObject);  procedure TMainForm.BtnDownloadRuteskiftFilClick(Sender: TObject);
4486  begin  begin
4487      if (getProddag() = 'lørdag') then      if (getProddag() = 'lørdag') then
4488      begin      begin
# Line 4534  var Line 4498  var
4498    XForm, XFormOld: TXForm; //Bruges til rotate X-formation    XForm, XFormOld: TXForm; //Bruges til rotate X-formation
4499    Angle: integer;    Angle: integer;
4500    gMode: integer;    gMode: integer;
   BarcodeArea: TRect;  
4501    Dirigering: string;    Dirigering: string;
4502    
4503  begin  begin
# Line 4687  var Line 4650  var
4650        end;        end;
4651    
4652    
4653      if (Scanningtype = '6') then  
4654        if (Scanningtype = '7') then
4655       begin       begin
4656        URLStr := Format(UrlPakkeshopManglendeReturScanninger,[StedKode]);        URLStr := Format(UrlIndleveringsPakkeManglendeScanninger, [StedKode]);
4657         end
4658        else if (Scanningtype = '6') then
4659         begin
4660          URLStr := Format(UrlPakkeshopManglendeReturScanninger, [StedKode]);
4661       end       end
4662      else if (Scanningtype = '5') then      else if (Scanningtype = '5') then
4663       begin       begin
4664        URLStr := Format(UrlPakkeshopManglendeScanninger,[StedKode]);        URLStr := Format(UrlPakkeshopManglendeScanninger, [StedKode]);
4665       end       end
4666      else if (Scanningtype = '1') then      else if (Scanningtype = '1') then
4667       begin       begin
# Line 5380  begin Line 5348  begin
5348    end;    end;
5349  end;  end;
5350    
 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;  
5351    
5352    
 function TMainForm.CheckUrl(url:string):boolean;  
 var  
   hSession, hfile: hInternet;  
   dwindex,dwcodelen :dword;  
   dwcode:array[1..20] of char;  
   res : pchar;  
 begin  
   if pos('http://',lowercase(url))=0 then  
     url := 'http://'+url;  
   Result := false;  
   hSession := InternetOpen('InetURL:/1.0',  
                             INTERNET_OPEN_TYPE_PRECONFIG,  
                             nil,  
                             nil,  
                             0);  
   if assigned(hsession) then  
   begin  
     hfile := InternetOpenUrl(hsession,  
                              pchar(url),  
                              nil,  
                              0,  
                              INTERNET_FLAG_RELOAD,  
                              0);  
     dwIndex := 0;  
     dwCodeLen := 10;  
     HttpQueryInfo(hfile,  
                   HTTP_QUERY_STATUS_CODE,  
                   @dwcode,  
                   dwcodeLen,  
                   dwIndex);  
     res := pchar(@dwcode);  
     result:= (res ='200') or (res ='302');  
     if assigned(hfile) then  
       InternetCloseHandle(hfile);  
     InternetCloseHandle(hsession);  
   end;  
5353    
5354  end;  
5355    
5356    
5357  procedure TMainForm.CheckPrintQue(tjektype : string);  procedure TMainForm.CheckPrintQue(tjektype : string);

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

  ViewVC Help
Powered by ViewVC 1.1.20