/[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 3093 by torben, Fri Aug 19 12:28:21 2016 UTC revision 3124 by torben, Wed Oct 19 06:59:57 2016 UTC
# Line 20  uses Line 20  uses
20    IdExplicitTLSClientServerBase, IdFTP, IdException,    IdExplicitTLSClientServerBase, IdFTP, IdException,
21    ShellApi, ClipBrd, Buttons, wininet,    ShellApi, ClipBrd, Buttons, wininet,
22    UITypes,    UITypes,
23    PakkeshopLabels,    LabelData,
24    Utils,    Utils,
25    ParentForm,    ParentForm,
26    LabelPrint,    LabelPrint,
# Line 202  type Line 202  type
202    procedure LogMessage( msg : string);    procedure LogMessage( msg : string);
203    procedure SetPrinterstatusText( txt: string; alert: boolean);    procedure SetPrinterstatusText( txt: string; alert: boolean);
204    function GetFormObject() : TForm;    function GetFormObject() : TForm;
205      function GetXMLDocument() : TXMLDocument;
206        procedure chkEmballageRepareretClick(Sender: TObject);
207        procedure chkUdenforSpecifikationClick(Sender: TObject);
208    
209    
210    
# Line 244  type Line 247  type
247    
248      procedure HentPakkeInfoFraServer(const Sted, PakkeNr : String; var RuteNummer, Kommentar, BoghandlerNavn, Koreliste, SmsKode, DBKbane, Leveringssted : String; var PrintNyLabel: Boolean; BoghandlerNummer : String = '');      procedure HentPakkeInfoFraServer(const Sted, PakkeNr : String; var RuteNummer, Kommentar, BoghandlerNavn, Koreliste, SmsKode, DBKbane, Leveringssted : String; var PrintNyLabel: Boolean; BoghandlerNummer : String = '');
249      procedure CheckCode();      procedure CheckCode();
250      procedure IndlesManglendeScanninger();      procedure IndlesManglendeScanningerAntal();
251        procedure IndlesManglendeScanningerListe();
252      procedure IndlesRuteskiftFil(var filnavn : string);      procedure IndlesRuteskiftFil(var filnavn : string);
253      procedure IndlesKontrolFil(var filnavn : string);      procedure IndlesKontrolFil(var filnavn : string);
254      procedure IndlesScanningLogFil();      procedure IndlesScanningLogFil();
# Line 538  begin Line 542  begin
542    
543  // Sætter lige en default panel størrelse  // Sætter lige en default panel størrelse
544    MainForm.ClientWidth := 1000;    MainForm.ClientWidth := 1000;
545    MainForm.ClientHeight := 820;    MainForm.ClientHeight := 920;
546    
547    Config := TConfiguration.Create();    Config := TConfiguration.Create();
548    Config.ReadFromInifile( TIniFile.Create(ChangeFileExt(Application.ExeName,'.ini')) );    //ToDo: clean up duplicate ini ref    Config.ReadFromInifile( TIniFile.Create(ChangeFileExt(Application.ExeName,'.ini')) );    //ToDo: clean up duplicate ini ref
# Line 969  begin Line 973  begin
973      // Opbygger PanelManglendePakker information      // Opbygger PanelManglendePakker information
974      gemScanningtype := Scanningtype;      gemScanningtype := Scanningtype;
975    
976      if PanelValg6.Enabled then      IndlesManglendeScanningerAntal();
     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;  
977    
978      if PanelValg2.Enabled then  //    if PanelValg6.Enabled then
979      begin  //    begin
980         Scanningtype := '2';  //       Scanningtype := '6';
981         IndlesManglendeScanninger();  //       IndlesManglendeScanningerAntal();
982      end;  //    end;
983    //
984      if PanelValg1.Enabled then  //    if PanelValg5.Enabled then
985      begin  //    begin
986         Scanningtype := '1';  //       Scanningtype := '5';
987         IndlesManglendeScanninger();  //       IndlesManglendeScanningerAntal();
988      end;  //    end;
989    //
990    //    if PanelValg4.Enabled then
991    //    begin
992    //       Scanningtype := '4';
993    //       IndlesManglendeScanningerAntal();
994    //    end;
995    //
996    //    if PanelValg3.Enabled then
997    //    begin
998    //       Scanningtype := '3';
999    //       IndlesManglendeScanningerAntal();
1000    //    end;
1001    //
1002    //    if PanelValg2.Enabled then
1003    //    begin
1004    //       Scanningtype := '2';
1005    //       IndlesManglendeScanningerAntal();
1006    //    end;
1007    //
1008    //    if PanelValg1.Enabled then
1009    //    begin
1010    //       Scanningtype := '1';
1011    //       IndlesManglendeScanningerAntal();
1012    //    end;
1013    
1014      Scanningtype := gemScanningtype;      Scanningtype := gemScanningtype;
1015    
# Line 1429  begin Line 1435  begin
1435        end;        end;
1436      end;      end;
1437    
1438        // EmballageRepareret skal bare sætte reklamationkoden,
1439        // og så ellers fortsætte med scanning som normalt
1440        if (chkEmballageRepareret.Checked = True) then
1441        begin
1442          URLStr := Format(Config.UrlEmballageRepareret,[Sted,Stregkode]);
1443          WebSvar := IdHTTP1.Get(URLStr);
1444    
1445          chkEmballageRepareret.Checked := False;
1446        end;
1447    
1448        if (chkUdenforSpecifikation.Checked = True) then
1449        begin
1450          URLStr := Format(Config.URLUdenforSpecifikation,[Sted,Stregkode]);
1451          //InputBox( '1', '1', URLStr);
1452    
1453          WebSvar := IdHTTP1.Get(URLStr);
1454          //InputBox( '2', '2', WebSvar );
1455    
1456          chkUdenforSpecifikation.Checked := False;
1457          LabelPrint.PrintLabel(Stregkode);
1458    
1459          StregkodeST.Caption := '';
1460          Stregkode := '';
1461    
1462          RuteNummerST.Caption := '';
1463          BoghandlerNavnST.Caption := '';
1464          KommentarST.Caption := 'Retur til leverandør';
1465    
1466    
1467    
1468    
1469          exit;   //leave procedure
1470        end;
1471    
1472    
1473    
1474    
1475      if (PakkeshopText1.Visible = true) and (PakkeshopText1.Caption = 'Stregkode') and menuAutomatiskTjekkodeStyring.Checked then      if (PakkeshopText1.Visible = true) and (PakkeshopText1.Caption = 'Stregkode') and menuAutomatiskTjekkodeStyring.Checked then
# Line 1867  begin Line 1908  begin
1908              BladhusKontrolfil_server := 'franordjyske/RuteKontrol.txt';              BladhusKontrolfil_server := 'franordjyske/RuteKontrol.txt';
1909              BladhusKontrolfil_lokal := 'RuteKontrol.txt';              BladhusKontrolfil_lokal := 'RuteKontrol.txt';
1910              DownloadBladhusKontrolfil();              DownloadBladhusKontrolfil();
1911              IndlesManglendeScanninger();              IndlesManglendeScanningerAntal();
1912            end;            end;
1913      02 :      02 :
1914            begin;    // BK            begin;    // BK
# Line 1880  begin Line 1921  begin
1921              BtnOpdaterListen.Enabled := true;              BtnOpdaterListen.Enabled := true;
1922              IdFTP1.Passive := true;              IdFTP1.Passive := true;
1923              IdFTP1.PassiveUseControlHost := true;              IdFTP1.PassiveUseControlHost := true;
1924              IndlesManglendeScanninger();              IndlesManglendeScanningerAntal();
1925            end;            end;
1926      03 :      03 :
1927            begin;          // FD            begin;          // FD
# Line 1906  begin Line 1947  begin
1947              BladhusKontrolfil_server := 'frafd/RuteKontrol.txt';              BladhusKontrolfil_server := 'frafd/RuteKontrol.txt';
1948              BladhusKontrolfil_lokal := 'RuteKontrol.txt';              BladhusKontrolfil_lokal := 'RuteKontrol.txt';
1949              DownloadBladhusKontrolfil();              DownloadBladhusKontrolfil();
1950              IndlesManglendeScanninger();              IndlesManglendeScanningerAntal();
1951            end;            end;
1952      04 :  begin;           // DBK      04 :  begin;           // DBK
1953              Testprinter1.Visible := true;              Testprinter1.Visible := true;
# Line 1932  var Line 1973  var
1973    pakkestorrelse : String;    pakkestorrelse : String;
1974    PrintNyLabelInteger : Integer;    PrintNyLabelInteger : Integer;
1975    
1976    PakkeshopLabel: TPakkeshopLabel;    PakkeshopLabel: TLabelData;
1977  begin  begin
1978    if radioStorPakke.Checked then    if radioStorPakke.Checked then
1979    begin    begin
# Line 2041  begin Line 2082  begin
2082       if (Kommentar = 'Ok') then       if (Kommentar = 'Ok') then
2083       begin       begin
2084         PrintNyLabel := True; //Indleveringskode vil ALTID udskrive label         PrintNyLabel := True; //Indleveringskode vil ALTID udskrive label
2085         PakkeshopLabel := TPakkeshopLabel.Create( XMLDocument1 ); //Opret struct og parse xml doc         PakkeshopLabel := TLabelData.Create( XMLDocument1 ); //Opret struct og parse xml doc
2086         RuteNummer := PakkeshopLabel.Koreliste + '  ->  ' +  PakkeshopLabel.PakkeshopTurid;         RuteNummer := PakkeshopLabel.Koreliste + '  ->  ' +  PakkeshopLabel.PakkeshopTurid;
2087         Stregkode := PakkeshopLabel.Stregkode;         Stregkode := PakkeshopLabel.Stregkode;
2088    
2089         LabelPrint.PrintFuldPakkeLabel( PakkeshopLabel );         LabelPrint.PrintLabel(PakkeshopLabel.Stregkode);
2090         chkForstorTilDirekte.Checked := false;  
2091    //       LabelPrint.PrintFuldPakkeLabel( PakkeshopLabel );
2092    //       chkForstorTilDirekte.Checked := false;
2093    
2094       end;       end;
2095    
# Line 2198  pakkeForkertSted : Integer; Line 2241  pakkeForkertSted : Integer;
2241    kontrolKoreliste : string;    kontrolKoreliste : string;
2242    nytRuteNummer, nyFarve : String;    nytRuteNummer, nyFarve : String;
2243  begin  begin
2244    //  if (PrintNyLabel = True OR chkAltidPrintLabel.Checked = True) then
2245    //  begin
2246    //    LabelPrint.PrintLabel( Stregkode );
2247    //  end;
2248    //
2249    //  exit;
2250    
2251    if menuDaoDirekte1.Checked then    if menuDaoDirekte1.Checked then
2252       RuteNummerST.Color := TUtils.HexToTColor(Farve);       RuteNummerST.Color := TUtils.HexToTColor(Farve);
2253    
# Line 2262  begin Line 2312  begin
2312            logTekst := RightStr(List1Msg, Length(List1Msg)-10);            logTekst := RightStr(List1Msg, Length(List1Msg)-10);
2313            SkrivScanningLogFil(logTekst);            SkrivScanningLogFil(logTekst);
2314    
2315            if (Config.PrinterNavn = 'Ingen') then  //          if (Config.PrinterNavn = 'Ingen') then
2316            begin  //          begin
2317               PrintNyLabel := false;  //             PrintNyLabel := false;
2318            end;  //          end;
2319    
2320            if (PrintNyLabel = false) then  // Hvis vi ikke printer label skal vi vise en 'rød skærm' alarm            if (PrintNyLabel = false) then  // Hvis vi ikke printer label skal vi vise en 'rød skærm' alarm
2321            begin            begin
# Line 2317  begin Line 2367  begin
2367               if PrintNyLabel or (RuteNummer = 'Rutenr') then               if PrintNyLabel or (RuteNummer = 'Rutenr') then
2368  // 20150304: slut  // 20150304: slut
2369                begin                begin
2370                  LabelPrint.SendTilPrinter(kontrolKoreliste, RuteNummer, Kommentar, BoghandlerNavn, Koreliste, SmsKode, DBKbane, Leveringssted, PrintNyLabel, BoghandlerNummer);                  //LabelPrint.SendTilPrinter(kontrolKoreliste, RuteNummer, Kommentar, BoghandlerNavn, Koreliste, SmsKode, DBKbane, Leveringssted, PrintNyLabel, BoghandlerNummer);
2371                    LabelPrint.PrintLabel( Stregkode );
2372                end;                end;
2373              end;              end;
2374        01 :  begin;        01 :  begin;
# Line 2325  begin Line 2376  begin
2376                    // Ovenstående test er lidt speciel fordi der i programmet nogle steder er byttet rundt på rute og køreliste                    // Ovenstående test er lidt speciel fordi der i programmet nogle steder er byttet rundt på rute og køreliste
2377                    // Meningen er at der kun skal printes hvis der er forskel i kørelisterne eller ruterne - eller vi kommer fra test funktionen (Rutenr = 'Rutenr')                    // Meningen er at der kun skal printes hvis der er forskel i kørelisterne eller ruterne - eller vi kommer fra test funktionen (Rutenr = 'Rutenr')
2378                begin                begin
2379                  LabelPrint.SendTilPrinter(kontrolKoreliste, RuteNummer, Kommentar, BoghandlerNavn, Koreliste, SmsKode, DBKbane, Leveringssted, PrintNyLabel, BoghandlerNummer);                  //LabelPrint.SendTilPrinter(kontrolKoreliste, RuteNummer, Kommentar, BoghandlerNavn, Koreliste, SmsKode, DBKbane, Leveringssted, PrintNyLabel, BoghandlerNummer);
2380                    LabelPrint.PrintLabel( Stregkode );
2381                end;                end;
2382              end;              end;
2383        02 :  begin;        02 :  begin;
2384                if PrintNyLabel or (RuteNummer = 'Rutenr') then   // Hvis RuteNummer = 'Rutenr' er vi igang med en printer test                if PrintNyLabel or (RuteNummer = 'Rutenr') then   // Hvis RuteNummer = 'Rutenr' er vi igang med en printer test
2385                begin                begin
2386                  LabelPrint.SendTilPrinter(kontrolKoreliste, RuteNummer, Kommentar, BoghandlerNavn, Koreliste, SmsKode, DBKbane, Leveringssted, PrintNyLabel, BoghandlerNummer);                  //LabelPrint.SendTilPrinter(kontrolKoreliste, RuteNummer, Kommentar, BoghandlerNavn, Koreliste, SmsKode, DBKbane, Leveringssted, PrintNyLabel, BoghandlerNummer);
2387                    LabelPrint.PrintLabel( Stregkode );
2388                end;                end;
2389              end;              end;
2390        03 :  begin;        03 :  begin;
# Line 2339  begin Line 2392  begin
2392                    // Ovenstående test er lidt speciel fordi der i programmet nogle steder er byttet rundt på rute og køreliste                    // Ovenstående test er lidt speciel fordi der i programmet nogle steder er byttet rundt på rute og køreliste
2393                    // Meningen er at der kun skal printes hvis der er forskel i kørelisterne eller ruterne - eller vi kommer fra test funktionen (Rutenr = 'Rutenr')                    // Meningen er at der kun skal printes hvis der er forskel i kørelisterne eller ruterne - eller vi kommer fra test funktionen (Rutenr = 'Rutenr')
2394               begin               begin
2395                  LabelPrint.SendTilPrinter(kontrolKoreliste, RuteNummer, Kommentar, BoghandlerNavn, Koreliste, SmsKode, DBKbane, Leveringssted, PrintNyLabel, BoghandlerNummer);                  //LabelPrint.SendTilPrinter(kontrolKoreliste, RuteNummer, Kommentar, BoghandlerNavn, Koreliste, SmsKode, DBKbane, Leveringssted, PrintNyLabel, BoghandlerNummer);
2396                    LabelPrint.PrintLabel( Stregkode );
2397               end;               end;
2398              end;              end;
2399        04 :  begin;        04 :  begin;
2400                if PrintNyLabel or (RuteNummer = 'Rutenr') then   // Hvis RuteNummer = 'Rutenr' er vi igang med en printer test                if PrintNyLabel or (RuteNummer = 'Rutenr') then   // Hvis RuteNummer = 'Rutenr' er vi igang med en printer test
2401                begin                begin
2402                  LabelPrint.SendTilPrinter(kontrolKoreliste, RuteNummer, Kommentar, BoghandlerNavn, Koreliste, SmsKode, DBKbane, Leveringssted, PrintNyLabel, BoghandlerNummer);                  //LabelPrint.SendTilPrinter(kontrolKoreliste, RuteNummer, Kommentar, BoghandlerNavn, Koreliste, SmsKode, DBKbane, Leveringssted, PrintNyLabel, BoghandlerNummer);
2403                    LabelPrint.PrintLabel( Stregkode );
2404                end;                end;
2405              end;              end;
2406        else        else
# Line 2382  begin Line 2437  begin
2437        logTekst := logTekst + ' for '+BoghandlerNavn;        logTekst := logTekst + ' for '+BoghandlerNavn;
2438        SkrivScanningLogFil(logTekst);        SkrivScanningLogFil(logTekst);
2439    
2440        LabelPrint.PrintDaodirekteLabel( RuteNummer, Kommentar, BoghandlerNavn) ;        //LabelPrint.PrintDaodirekteLabel( RuteNummer, Kommentar, BoghandlerNavn) ;
2441                LabelPrint.PrintLabel( Stregkode );
2442    
2443      end;      end;
2444    end;    end;
2445    
# Line 2417  begin Line 2473  begin
2473  end;  end;
2474    
2475    
2476    procedure TMainForm.chkUdenforSpecifikationClick(Sender: TObject);
2477    begin
2478      if (chkUdenforSpecifikation.Checked = true) then
2479      begin
2480        chkEmballageRepareret.Checked := false;
2481      end;
2482    end;
2483    
2484    procedure TMainForm.chkEmballageRepareretClick(Sender: TObject);
2485    begin
2486      if (chkEmballageRepareret.Checked = true) then
2487      begin
2488        chkUdenforSpecifikation.Checked := false;
2489      end;
2490    end;
2491    
2492  procedure TMainForm.chkAltidPrintLabelClick(Sender: TObject);  procedure TMainForm.chkAltidPrintLabelClick(Sender: TObject);
2493  begin  begin
2494    if chkAltidPrintLabel.Checked then    if chkAltidPrintLabel.Checked then
# Line 2430  begin Line 2502  begin
2502    
2503  end;  end;
2504    
2505    
2506    
2507  procedure TMainForm.chkScanTjekkodeClick(Sender: TObject);  procedure TMainForm.chkScanTjekkodeClick(Sender: TObject);
2508  begin  begin
2509    if chkScanTjekkode.Checked then    if chkScanTjekkode.Checked then
# Line 2814  begin Line 2888  begin
2888      SmsKode := '999999';      SmsKode := '999999';
2889      DBKbane := '999';      DBKbane := '999';
2890      Leveringssted := 'XXX';      Leveringssted := 'XXX';
2891    
2892    
2893      PrintLabel(RuteNummer, Kommentar, BoghandlerNavn, Koreliste, SmsKode, DBKbane, Leveringssted, Falsk);      PrintLabel(RuteNummer, Kommentar, BoghandlerNavn, Koreliste, SmsKode, DBKbane, Leveringssted, Falsk);
2894      FocusControl(StregkodeST);      FocusControl(StregkodeST);
2895    end;    end;
# Line 2831  var Line 2907  var
2907    SmsKode : String;    SmsKode : String;
2908    DBKbane : String;    DBKbane : String;
2909    Leveringssted : String;    Leveringssted : String;
2910      LabelData : TLabelData;
2911  begin  begin
2912    RuteNummer := 'Rutenr';    RuteNummer := 'Rutenr';
2913    Kommentar := '***** Kommentar *****';    Kommentar := '***** Kommentar *****';
# Line 2842  begin Line 2919  begin
2919    begin    begin
2920      ShowMessage('Der er ikke installeret en printer på denne PC.');      ShowMessage('Der er ikke installeret en printer på denne PC.');
2921    end    end
2922    else if Config.PrinterNavn = 'Ingen' then  //  else if Config.PrinterNavn = 'Ingen' then //Det giver ikke længere mening at kunne fravælge printer
2923    begin  //  begin
2924      ShowMessage('Der er fravalgt printer i dette program.');  //    ShowMessage('Der er fravalgt printer i dette program.');
2925    end  //  end
2926    else    else
2927    begin    begin
2928      UpdateScreen(RuteNummer, Kommentar, BoghandlerNavn, Koreliste, '');      UpdateScreen(RuteNummer, Kommentar, BoghandlerNavn, Koreliste, '');
2929      SmsKode := '999999';  //    SmsKode := '999999';
2930      DBKbane := '999';  //    DBKbane := '999';
2931      Leveringssted := 'XXX';  //    Leveringssted := 'XXX';
2932      PrintLabel(RuteNummer, Kommentar, BoghandlerNavn, Koreliste, SmsKode, DBKbane, Leveringssted, Falsk);  //    PrintLabel(RuteNummer, Kommentar, BoghandlerNavn, Koreliste, SmsKode, DBKbane, Leveringssted, Falsk);
2933    
2934    
2935        LabelData := TLabelData.Create(nil);
2936        LabelData.LabelType := 'simpel';
2937        LabelData.SimpelLinie1 := '999999';
2938        LabelData.SimpelLinie2 := '999';
2939        LabelData.SimpelLinie3 := 'xxx';
2940        LabelPrint.PrintLabelData(Labeldata);
2941    
2942      LabelPrint.CheckPrintQue('Test', Config.PrinterNavn);      LabelPrint.CheckPrintQue('Test', Config.PrinterNavn);
2943    
2944        LabelData.Free();
2945    
2946    end;    end;
2947    FocusControl(StregkodeST);    FocusControl(StregkodeST);
2948  end;  end;
# Line 3084  begin Line 3173  begin
3173        if BladhusSted = 0 then        if BladhusSted = 0 then
3174        begin        begin
3175          IndlesScanningLogFil();          IndlesScanningLogFil();
3176          IndlesManglendeScanninger();          IndlesManglendeScanningerAntal();
3177        end;        end;
3178  end;  end;
3179    
# Line 3184  begin Line 3273  begin
3273        if (BladhusSted = 0) or (BladhusSted = 2) or (BladhusSted = 3) then        if (BladhusSted = 0) or (BladhusSted = 2) or (BladhusSted = 3) then
3274        begin        begin
3275            IndlesScanningLogFil();            IndlesScanningLogFil();
3276            IndlesManglendeScanninger();            IndlesManglendeScanningerAntal();
3277        end;        end;
3278    
3279  end;  end;
# Line 3223  begin Line 3312  begin
3312        IndlesScanningLogFil();        IndlesScanningLogFil();
3313        if BladhusSted = 0 then        if BladhusSted = 0 then
3314        begin        begin
3315          IndlesManglendeScanninger();          IndlesManglendeScanningerAntal();
3316        end;        end;
3317        IdFTP1.Passive := true;        IdFTP1.Passive := true;
3318        IdFTP1.PassiveUseControlHost := true;        IdFTP1.PassiveUseControlHost := true;
# Line 3263  begin Line 3352  begin
3352        IndlesScanningLogFil();        IndlesScanningLogFil();
3353        if BladhusSted = 0 then        if BladhusSted = 0 then
3354        begin        begin
3355          IndlesManglendeScanninger();          IndlesManglendeScanningerAntal();
3356        end;        end;
3357        IdFTP1.Passive := true;        IdFTP1.Passive := true;
3358        IdFTP1.PassiveUseControlHost := true;        IdFTP1.PassiveUseControlHost := true;
# Line 3315  begin Line 3404  begin
3404        IndlesScanningLogFil();        IndlesScanningLogFil();
3405        if BladhusSted = 0 then        if BladhusSted = 0 then
3406        begin        begin
3407          IndlesManglendeScanninger();          IndlesManglendeScanningerAntal();
3408        end;        end;
3409        IdFTP1.Passive := true;        IdFTP1.Passive := true;
3410        IdFTP1.PassiveUseControlHost := true;        IdFTP1.PassiveUseControlHost := true;
# Line 4029  const Line 4118  const
4118    crlf = Chr(13) + Chr(10) ;  // Carriage return & Linefeed    crlf = Chr(13) + Chr(10) ;  // Carriage return & Linefeed
4119    
4120  begin  begin
4121      IndlesManglendeScanninger();      IndlesManglendeScanningerListe();
4122      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
4123  end;  end;
4124    
# Line 4043  begin Line 4132  begin
4132  end;  end;
4133    
4134    
4135    procedure TMainForm.IndlesManglendeScanningerAntal();
4136    var
4137      Node: IXMLNode;
4138    
4139      URLStr : String;
4140      StedKode : String;
4141      WebSvar : String;
4142    
4143      i : Integer;
4144    
4145      PakkeType : String;
4146      TotalAntal : String;
4147      AntalProdDato : String;
4148    
4149      CurrentPanel : TPanel;
4150    
4151    begin
4152      ListBox2.Clear();
4153    
4154      if (BladhusSted > 00) and (BladhusSted < Length(BladhusStedNavn)) then
4155        begin
4156          StedKode := BladhusStedKode[BladhusSted];
4157        end
4158      else
4159        begin
4160          StedKode := Sted;
4161        end;
4162    
4163      URLStr := Format(Config.UrlHentPakkeAntal, [StedKode]);
4164    
4165    
4166      try
4167        WebSvar := IdHTTP1.Get(URLStr);
4168        except
4169          on e:EIdConnClosedGracefully do
4170          begin
4171            // Her skal vi ikke gøre noget - men vi skal forespørge igen
4172            WebSvar := IdHTTP1.Get(URLStr);
4173          end;
4174          on e:exception do
4175          begin
4176            ListBox1.Items.Insert(0,TimeToStr(now) + ': ' + 'Fejl i web forespørgsel: '+e.Message);
4177            logTekst := 'Fejl i web forespørgsel: '+e.Message;
4178            SkrivScanningLogFil(logTekst);
4179            raise exception.CreateFmt('Fejl i web forespørgsel: %s',[e.Message]);
4180          end;
4181        end;
4182    
4183    
4184    
4185         try
4186    
4187          XMLDocument1.LoadFromXML(WebSvar);
4188    
4189          for i:= 0 to XMLDocument1.DocumentElement.ChildNodes.Count - 1 do begin
4190              Node:= XMLDocument1.DocumentElement.ChildNodes[I];
4191    
4192              PakkeType := Node.ChildValues['PakkeType'];
4193              TotalAntal := Node.ChildValues['TotalAntal'];
4194              AntalProdDato := Node.ChildValues['AntalProdDato'];
4195    
4196    
4197              CurrentPanel := nil;
4198    
4199  procedure TMainForm.IndlesManglendeScanninger();            if (PakkeType = 'natxpress') then
4200              begin
4201                 CurrentPanel := PanelManglendePakker1;
4202              end;
4203    
4204              if (PakkeType = 'daodirekte') then
4205              begin
4206                 CurrentPanel := PanelManglendePakker4;
4207              end;
4208    
4209              if (PakkeType = 'pakkeshop') then
4210              begin
4211                 CurrentPanel := PanelManglendePakker5;
4212              end;
4213    
4214              if (CurrentPanel <> nil) then
4215              begin
4216                CurrentPanel.Caption := TotalAntal;
4217                if ( StrToInt(TotalAntal) > 0) then
4218                begin
4219                  CurrentPanel.Visible := true;
4220                end
4221                else
4222                begin
4223                  CurrentPanel.Visible := false;
4224                end;
4225              end;
4226    
4227    
4228          end;
4229    
4230    
4231     except on e:exception do
4232          begin
4233            ListBox1.Items.Insert(0,TimeToStr(now) + ': ' + 'Fejl i XML-format: '+e.Message);
4234            logTekst := 'Fejl i XML-format: '+e.Message;
4235            SkrivScanningLogFil(logTekst);
4236            raise exception.CreateFmt('Fejl i XML-format: %s',[e.Message]);
4237          end;
4238        end;
4239    
4240    
4241    
4242      ListBox1.Items.Insert(0,'Pakkeantal indlæst - klar til scanning');
4243    
4244    end;
4245    
4246    procedure TMainForm.IndlesManglendeScanningerListe();
4247  var  var
4248    WebSvar : String;    WebSvar : String;
4249    URLStr : String;    URLStr : String;
# Line 4207  var Line 4406  var
4406        logTekst := logTekst + '.';        logTekst := logTekst + '.';
4407    
4408        SkrivScanningLogFil(logTekst);        SkrivScanningLogFil(logTekst);
4409          time.stop('Antal Linier2');//DEBUG
4410    
4411    
4412        for I:= 0 to XMLDocument1.DocumentElement.ChildNodes.Count - 1 do begin        for I:= 0 to XMLDocument1.DocumentElement.ChildNodes.Count - 1 do begin
# Line 4267  var Line 4467  var
4467              if antalFelterFundet = antalLiniefelter then              if antalFelterFundet = antalLiniefelter then
4468              begin              begin
4469                if (ScanningType = '1') then                if (ScanningType = '1') then
4470                  ListBox2.Items.Add(pakketype+'; '+stregkode+'; '+modtagernavn+'; '+modtageradresse+'; '+kommentar+'; '+tjekkodestatus)                   ListBox2.Items.Add(pakketype+'; '+stregkode+'; '+modtagernavn+'; '+modtageradresse+'; '+kommentar+'; '+tjekkodestatus)
4471                else if (ScanningType = '4') then                else if (ScanningType = '4') then
4472                  ListBox2.Items.Add(pakketype+'; '+stregkode+'; '+modtagernavn+'; '+modtageradresse+'; '+kommentar)                  ListBox2.Items.Add(pakketype+'; '+stregkode+'; '+modtagernavn+'; '+modtageradresse+'; '+kommentar)
4473                else if (ScanningType = '5') then                else if (ScanningType = '5') then
# Line 4857  begin Line 5057  begin
5057    Result := self;    Result := self;
5058  end;  end;
5059    
5060    //Nedarvet fra IParentForm
5061    function TMainForm.GetXMLDocument() : TXMLDocument;
5062    begin
5063      Result := XMLDocument1
5064    end;
5065    
5066    
5067  end.  end.
5068    

Legend:
Removed from v.3093  
changed lines
  Added in v.3124

  ViewVC Help
Powered by ViewVC 1.1.20