/[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 2756 by torben, Thu Oct 22 14:06:23 2015 UTC revision 2902 by torben, Wed Feb 3 15:13:55 2016 UTC
# Line 25  uses Line 25  uses
25    ParentForm,    ParentForm,
26    LabelPrint,    LabelPrint,
27    Configuration,    Configuration,
28    Vcl.Imaging.pngimage    Vcl.Imaging.pngimage,
29      Generics.Collections
30    
31    ;    ;
32    
# Line 104  type Line 105  type
105      PanelManglendePakker5: TPanel;      PanelManglendePakker5: TPanel;
106      PanelManglendePakker6: TPanel;      PanelManglendePakker6: TPanel;
107      menuIndlevering: TMenuItem;      menuIndlevering: TMenuItem;
108        chkForstorTilDirekte: TCheckBox;
109    
110    
111    
# Line 192  type Line 194  type
194    
195    
196    
   
197    //Nedarvet fra IParentForm    //Nedarvet fra IParentForm
198    procedure LogMessage( msg : string);    procedure LogMessage( msg : string);
199    procedure SetPrinterstatusText( txt: string; alert: boolean);    procedure SetPrinterstatusText( txt: string; alert: boolean);
# Line 205  type Line 206  type
206      SkrivLog : String;      SkrivLog : String;
207      Sted : String;      Sted : String;
208      StedNavn : String;      StedNavn : String;
209      Url, UrlNormal, UrlReturDAO, UrlReturBoghandler, UrlBudlevering, UrlManglendeScanninger, UrlPakkeshoplevering, UrlReturPakkeshop, UrlPakkeshopManglendeScanninger, UrlPakkeshopManglendeReturScanninger,UrlIndleveringsPakke,UrlIndleveringsPakkeManglendeScanninger,UrlEKLoverforsel : String;      Url, UrlNormal, UrlReturDAO, UrlReturBoghandler, UrlBudlevering, UrlManglendeScanninger, UrlPakkeshoplevering,
210                UrlReturPakkeshop, UrlPakkeshopManglendeScanninger, UrlPakkeshopManglendeReturScanninger,UrlIndleveringsPakke,
211                UrlIndleveringsPakkeManglendeScanninger,UrlEKLoverforsel, URLOmdirigerTilPakkeshop : String;
212    
213      UrlEKLoverforselPakkeshop : String;      UrlEKLoverforselPakkeshop : String;
214    
# Line 213  type Line 216  type
216      Scanningtype, TestFunktionen, Pakketype, SporgEfterBoghandler : String;      Scanningtype, TestFunktionen, Pakketype, SporgEfterBoghandler : String;
217      ScanTjekkode : String;      ScanTjekkode : String;
218      ScanTjekkodeAutomatik : string;      ScanTjekkodeAutomatik : string;
219      Farve, FarveNormal, FarveReturDAO, FarveReturBoghandler, FarveBudlevering, FarvePakkeshoplevering, FarveReturPakkeshop, FarveIndlevering : String;  
220      Titel, TitelNormal, TitelReturDAO, TitelReturBoghandler, TitelBudlevering, TitelPakkeshoplevering, TitelReturPakkeshop, TitelIndlevering : String;      Farve, FarveNormal, FarveReturDAO, FarveReturBoghandler, FarveBudlevering, FarvePakkeshoplevering, FarveReturPakkeshop,
221              FarveIndlevering : String;
222    
223        Titel, TitelNormal, TitelReturDAO, TitelReturBoghandler, TitelBudlevering, TitelPakkeshoplevering, TitelReturPakkeshop,
224              TitelIndlevering : String;
225    
226      AlarmLyd : String;      AlarmLyd : String;
227      ScannetOkLyd : String;      ScannetOkLyd : String;
# Line 351  begin Line 358  begin
358        else if (Sted = 'BR') then        else if (Sted = 'BR') then
359          begin StedNavn := 'Brøndby: '; end          begin StedNavn := 'Brøndby: '; end
360        else if (Sted = 'BK') then        else if (Sted = 'BK') then
361          begin StedNavn := 'Bladkompagniet: '; end          begin StedNavn := 'Bladkompagniet/ISV: '; end
362          else if (Sted = 'TK') then
363            begin StedNavn := 'BK/Trykkompagniet: '; end
364        else if (Sted = 'DBK') then        else if (Sted = 'DBK') then
365          begin StedNavn := 'DBK Køge: '; end          begin StedNavn := 'DBK/Køge: '; end
366        else if (Sted = '1') then        else if (Sted = '1') then
367          begin StedNavn := 'Ålborg: '; end          begin StedNavn := 'Ålborg: '; end
368        else if (Sted = '2') then        else if (Sted = '2') then
# Line 563  begin Line 572  begin
572    
573      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');
574      UrlIndleveringsPakkeManglendeScanninger := ReadString('Settings', 'UrlIndleveringsPakkeManglendeScanninger','http://omdeling.info/webservices/pakkeshop/IndleveringsPakkeManglendeScanninger.php?sted=%s');      UrlIndleveringsPakkeManglendeScanninger := ReadString('Settings', 'UrlIndleveringsPakkeManglendeScanninger','http://omdeling.info/webservices/pakkeshop/IndleveringsPakkeManglendeScanninger.php?sted=%s');
575        URLOmdirigerTilPakkeshop := ReadString('Settings', 'URLOmdirigerTilPakkeshop','http://omdeling.info/webservices/pakkeshop/PakkeKontrolOmdirigerTilPakkeshop.php?sted=%s&stregkode=%s');
576    
577    
578    
579    
# Line 680  begin Line 691  begin
691  {$IfDef STED_BK}  {$IfDef STED_BK}
692      SpecialVersionSted := 'BK';      SpecialVersionSted := 'BK';
693  {$EndIf}  {$EndIf}
694    {$IfDef STED_TK}
695        SpecialVersionSted := 'TK';// BK-Trykkompagniet
696    {$EndIf}
697  {$IfDef STED_DBK}  {$IfDef STED_DBK}
698      SpecialVersionSted := 'DBK';      SpecialVersionSted := 'DBK';
699  {$EndIf}  {$EndIf}
# Line 717  begin Line 731  begin
731         SpecialVersionScanningtype := '4';         SpecialVersionScanningtype := '4';
732      end;      end;
733    
734      if SpecialVersionSted = 'BK' then      if (SpecialVersionSted = 'BK') OR (SpecialVersionSted = 'TK') then
735      begin      begin
736        //FarveNormal := 'A9F5A9';  // her kan vi evt. overrule ini fil        //FarveNormal := 'A9F5A9';  // her kan vi evt. overrule ini fil
737        Sted := SpecialVersionSted;        Sted := SpecialVersionSted;
# Line 758  begin Line 772  begin
772        PanelValg5.Font.Color := clInactiveCaption;        PanelValg5.Font.Color := clInactiveCaption;
773        PanelValg6.Enabled := false;        PanelValg6.Enabled := false;
774        PanelValg6.Font.Color := clInactiveCaption;        PanelValg6.Font.Color := clInactiveCaption;
775        PanelValg7.Enabled := false;  
       PanelValg7.Font.Color := clInactiveCaption;  
776    
777       // her skal vi også disable de menupunkter DBK ikke kan bruge       // her skal vi også disable de menupunkter DBK ikke kan bruge
778        ReturpakkerfraDAO1.Enabled := false;        ReturpakkerfraDAO1.Enabled := false;
# Line 1116  begin Line 1129  begin
1129      or (NumberString = 'Retur fra kunde')      or (NumberString = 'Retur fra kunde')
1130      or (NumberString = 'DAO DIREKTE')      or (NumberString = 'DAO DIREKTE')
1131      or (NumberString = 'DAO PAKKESHOP')      or (NumberString = 'DAO PAKKESHOP')
1132        or (NumberString = 'DAO PAKKESHOP')
1133        or (LowerCase(NumberString) = 'for stor hjemmelevering' )
1134            or (LowerCase(NumberString) = 'for stor daodirekte' )
1135      or (NumberString = 'Retur fra pakkeshop') then      or (NumberString = 'Retur fra pakkeshop') then
1136    
1137      begin      begin
# Line 1126  begin Line 1142  begin
1142      begin      begin
1143        ShowMessage('Indsæt et gyldigt pakkenummer - uden linieskift');        ShowMessage('Indsæt et gyldigt pakkenummer - uden linieskift');
1144      end;      end;
1145    end;    end;  // Slut ctrl-v
1146    
1147    if Key = #13 then     // Enter    if Key = #13 then     // Enter
1148    begin    begin
# Line 1180  begin Line 1196  begin
1196         exit;         exit;
1197      end;      end;
1198    
1199        if (LowerCase(StregKode) = 'for stor hjemmelevering') OR (LowerCase(StregKode) = 'for stor daodirekte') then
1200        begin
1201          if chkForstorTilDirekte.Enabled then
1202          begin
1203            chkForstorTilDirekte.Checked := true;
1204          end
1205          else
1206          begin
1207             VisAlarmSkaerm( Stregkode + ' kan ikke vælges på denne scannings tilstand' );
1208          end;
1209          Stregkode := '';
1210          StregkodeST.Caption := StregKode;
1211          exit;
1212        end;
1213    
1214    
1215      if StregKode = 'Indtast kundenummer' then      if StregKode = 'Indtast kundenummer' then
1216      begin      begin
1217         if chkSporgEfterKunde.Enabled = true then         if chkSporgEfterKunde.Enabled = true then
# Line 1377  begin Line 1409  begin
1409        Pakkescanningtype := Scanningtype;        Pakkescanningtype := Scanningtype;
1410      end;      end;
1411    
1412      if (   (Pakkescanningtype = '1') and (PanelValg1.Enabled = false)      if (   ( (Pakkescanningtype = '1') and (PanelValg1.Enabled = false) )
1413          or (Pakkescanningtype = '2') and (PanelValg2.Enabled = false)          or ( (Pakkescanningtype = '2') and (PanelValg2.Enabled = false) )
1414          or (Pakkescanningtype = '3') and (PanelValg3.Enabled = false)          or ( (Pakkescanningtype = '3') and (PanelValg3.Enabled = false) )
1415          or (Pakkescanningtype = '4') and (PanelValg4.Enabled = false)          or ( (Pakkescanningtype = '4') and (PanelValg4.Enabled = false) )
1416          or (Pakkescanningtype = '5') and (PanelValg5.Enabled = false)          or ( (Pakkescanningtype = '5') and (PanelValg5.Enabled = false) )
1417          or (Pakkescanningtype = '6') and (PanelValg6.Enabled = false)  ) then          or ( (Pakkescanningtype = '6') and (PanelValg6.Enabled = false) ) ) then
1418      begin   // Her skal komme en alarm og rød skærm      begin   // Her skal komme en alarm og rød skærm
1419          VisAlarmSkaerm( Stregkode + ' kan ikke vælges på dette scanningsted' );          VisAlarmSkaerm( Stregkode + ' kan ikke vælges på dette scanningsted' );
1420    
1421         exit;         exit;
1422      end;      end;
1423    
1424      if Automatiskvalg1.Checked and (Length(Stregkode) > 8) then      if (Automatiskvalg1.Checked and (Length(Stregkode) > 8) ) then
1425      begin      begin
1426        GemStregkode := Stregkode;        GemStregkode := Stregkode;
1427        if Pakketype = 'NatXpress' then        if Pakketype = 'NatXpress' then
# Line 1423  begin Line 1455  begin
1455        else        else
1456            begin            begin
1457            // Her skal komme en alarm og rød skærm            // Her skal komme en alarm og rød skærm
1458              VisAlarmSkaerm( Stregkode + ' kan ikke vælges på dette scanningsted' );              //VisAlarmSkaerm( Stregkode + ' kan ikke vælges på dette scanningsted' );
1459                 VisAlarmSkaerm( Stregkode + ' kan ikke bruges med automatisk valg' );
1460    
1461               exit;               exit;
1462            end;            end;
# Line 1659  begin Line 1692  begin
1692    
1693    Key := #0;    Key := #0;
1694    
1695    
1696    
1697    
1698    
1699    
1700  end; //End of OnKeyPress  end; //End of OnKeyPress
1701    
1702    
1703    
1704  procedure TMainForm.SendInfoTilServer(Sted, Scanningtype, Infotype, Info : String);  procedure TMainForm.SendInfoTilServer(Sted, Scanningtype, Infotype, Info : String);
1705  const  const
1706    crlf = Chr(13) + Chr(10) ;  // Carriage return & Linefeed    crlf = Chr(13) + Chr(10) ;  // Carriage return & Linefeed
# Line 1990  begin Line 2030  begin
2030    begin    begin
2031      exit;      exit;
2032    end;    end;
2033    
2034      if chkForstorTilDirekte.Checked then  // Denne skal være efter if/else kæden da den overrider de øvrige URL'er
2035      begin
2036        URLStr := Format(URLOmdirigerTilPakkeshop,[Sted, PakkeNr]);
2037      end;
2038    
2039    try    try
2040      //raise EIdConnClosedGracefully.Create('test');   // KUN TIL TEST      //raise EIdConnClosedGracefully.Create('test');   // KUN TIL TEST
2041      WebSvar := IdHTTP1.Get(URLStr);      WebSvar := IdHTTP1.Get(URLStr);
# Line 2011  begin Line 2057  begin
2057          end;          end;
2058      end;      end;
2059    end;    end;
2060    
2061    XMLDocument1.LoadFromXML(WebSvar);    XMLDocument1.LoadFromXML(WebSvar);
2062    try    try
2063      if Pakkeshoplevering1.Checked or Returpakkerfrapakkeshop1.Checked then      if Pakkeshoplevering1.Checked or Returpakkerfrapakkeshop1.Checked then
# Line 2034  begin Line 2081  begin
2081          end;          end;
2082        end;        end;
2083       end       end
2084      else if menuIndlevering.Checked then      else if menuIndlevering.Checked or chkForstorTilDirekte.Checked then
2085      begin      begin
2086    
2087    
# Line 2049  begin Line 2096  begin
2096         Stregkode := PakkeshopLabel.Stregkode;         Stregkode := PakkeshopLabel.Stregkode;
2097    
2098         LabelPrint.PrintPakkeshopLabel( PakkeshopLabel );         LabelPrint.PrintPakkeshopLabel( PakkeshopLabel );
2099           chkForstorTilDirekte.Checked := false;
2100    
2101       end;       end;
2102    
# Line 3085  begin Line 3133  begin
3133        BtnEKLoverforsel.Enabled := true;        BtnEKLoverforsel.Enabled := true;
3134        InitLillePakke();        InitLillePakke();
3135        ListBox1.Items.Clear;        ListBox1.Items.Clear;
3136    
3137          chkForstorTilDirekte.Checked := false;
3138          chkForstorTilDirekte.Enabled := false;
3139    
3140        if BladhusSted = 0 then        if BladhusSted = 0 then
3141        begin        begin
3142          IndlesScanningLogFil();          IndlesScanningLogFil();
# Line 3116  begin Line 3168  begin
3168        ListBox1.Items.Clear;        ListBox1.Items.Clear;
3169        ListBox2.Items.Clear;        ListBox2.Items.Clear;
3170        BtnEKLoverforsel.Enabled := false;        BtnEKLoverforsel.Enabled := false;
3171    
3172          chkForstorTilDirekte.Checked := false;
3173          chkForstorTilDirekte.Enabled := false;
3174    
3175        InitLillePakke();        InitLillePakke();
3176  end;  end;
3177    
# Line 3142  begin Line 3198  begin
3198        ListBox1.Items.Clear;        ListBox1.Items.Clear;
3199        ListBox2.Items.Clear;        ListBox2.Items.Clear;
3200        BtnEKLoverforsel.Enabled := false;        BtnEKLoverforsel.Enabled := false;
3201    
3202          chkForstorTilDirekte.Checked := false;
3203          chkForstorTilDirekte.Enabled := false;
3204    
3205        InitLillePakke();        InitLillePakke();
3206  end;  end;
3207    
# Line 3173  begin Line 3233  begin
3233        BtnEKLoverforsel.Enabled := false;        BtnEKLoverforsel.Enabled := false;
3234        IdFTP1.Passive := true;        IdFTP1.Passive := true;
3235        IdFTP1.PassiveUseControlHost := true;        IdFTP1.PassiveUseControlHost := true;
3236    
3237          chkForstorTilDirekte.Checked := false;
3238          chkForstorTilDirekte.Enabled := true;
3239    
3240        if (BladhusSted = 0) or (BladhusSted = 2) or (BladhusSted = 3) then        if (BladhusSted = 0) or (BladhusSted = 2) or (BladhusSted = 3) then
3241        begin        begin
3242            IndlesScanningLogFil();            IndlesScanningLogFil();
# Line 3208  begin Line 3272  begin
3272    
3273        BtnEKLoverforsel.Enabled := true;        BtnEKLoverforsel.Enabled := true;
3274    
3275          chkForstorTilDirekte.Checked := false;
3276          chkForstorTilDirekte.Enabled := true;
3277    
3278        InitLillePakke();        InitLillePakke();
3279        IndlesScanningLogFil();        IndlesScanningLogFil();
3280        if BladhusSted = 0 then        if BladhusSted = 0 then
# Line 3243  begin Line 3310  begin
3310        BtnDownloadKontrolfil.Enabled := false;        BtnDownloadKontrolfil.Enabled := false;
3311        BtnOpdaterListen.Enabled := true;        BtnOpdaterListen.Enabled := true;
3312        BtnEKLoverforsel.Enabled := false;        BtnEKLoverforsel.Enabled := false;
3313    
3314          chkForstorTilDirekte.Checked := false;
3315          chkForstorTilDirekte.Enabled := false;
3316    
3317    
3318        InitLillePakke();        InitLillePakke();
3319        IndlesScanningLogFil();        IndlesScanningLogFil();
3320        if BladhusSted = 0 then        if BladhusSted = 0 then
# Line 3290  begin Line 3362  begin
3362        BtnDownloadKontrolfil.Enabled := false;        BtnDownloadKontrolfil.Enabled := false;
3363        BtnOpdaterListen.Enabled := true;        BtnOpdaterListen.Enabled := true;
3364        BtnEKLoverforsel.Enabled := false;        BtnEKLoverforsel.Enabled := false;
3365    
3366          chkForstorTilDirekte.Checked := false;
3367          chkForstorTilDirekte.Enabled := false;
3368    
3369    
3370        InitLillePakke();        InitLillePakke();
3371        IndlesScanningLogFil();        IndlesScanningLogFil();
3372        if BladhusSted = 0 then        if BladhusSted = 0 then
# Line 4033  var Line 4110  var
4110    stregkode, modtagernavn, modtageradresse, kommentar : string;    stregkode, modtagernavn, modtageradresse, kommentar : string;
4111    pakketype, tjekkodestatus : String;    pakketype, tjekkodestatus : String;
4112    pakketypeix, antalLiniefelter, antalFelterFundet, linienr : Integer;    pakketypeix, antalLiniefelter, antalFelterFundet, linienr : Integer;
4113    pakketyper : TStrings;    //pakketyper : TStrings;
4114      pakketyper : TDictionary<String, Integer>;
4115      tmpAntal : Integer;
4116    
4117    
4118    
4119    antlin : Integer;    antlin : Integer;
4120    
4121    antlinIdag, antlinSenere : Integer;    antlinIdag, antlinSenere : Integer;
4122    
4123    XmlFelter : TStrings;    //XmlFelter : TStrings;
4124      XmlFelter : TDictionary<String, Integer>;
4125    
4126   begin   begin
4127      XmlFelter := TStringList.Create;  
4128      pakketyper := TStringList.Create;  
4129        XmlFelter := TDictionary<String, Integer>.Create;
4130        pakketyper := TDictionary<String, Integer>.Create;
4131    
4132      linienr := 0;      linienr := 0;
4133      ListBox2.Clear;      ListBox2.Clear;
4134      ListBox1.Items.Insert(0,TimeToStr(now) + ': ' + 'Henter oversigt over pakker der endnu ikke er modtaget');      ListBox1.Items.Insert(0,TimeToStr(now) + ': ' + 'Henter oversigt over pakker der endnu ikke er modtaget');
# Line 4057  var Line 4143  var
4143          StedKode := Sted;          StedKode := Sted;
4144        end;        end;
4145    
4146          Application.Processmessages; //Ugly Hack to improve User Experience when switching modes
4147    
4148    
4149    
4150      if (Scanningtype = '7') then      if (Scanningtype = '7') then
# Line 4116  var Line 4204  var
4204            if Node.NodeType = ntElement then begin            if Node.NodeType = ntElement then begin
4205              if Node.NodeName = 'Stregkode' then              if Node.NodeName = 'Stregkode' then
4206              begin              begin
4207                 antlin := antlin + 1;                 Inc(antlin);
4208                 // 20150306: start                 // 20150306: start
4209                if not VarIsNull(Node.NodeValue) then                if not VarIsNull(Node.NodeValue) then
4210                begin                begin
4211                   if (pos('(', Node.NodeValue) = 0) then                   if (pos('(', Node.NodeValue) = 0) then
4212                   begin                   begin
4213                     antlinIdag := antlinIdag + 1;                     Inc(antlinIdag);
4214                   end                   end
4215                   else                   else
4216                   begin                   begin
4217                     antlinSenere := antlinSenere + 1;                     Inc(antlinSenere);
4218                   end;                   end;
4219                end;                end;
4220                 // 20150306: slut                 // 20150306: slut
4221              end;              end;
4222            end;            end;
4223            if (XmlFelter.values[Node.NodeName] <> '') then            if ( XmlFelter.ContainsKey(Node.NodeName) ) then
4224                  XmlFelter.values[Node.NodeName] := IntToStr(StrToInt(XmlFelter.values[Node.NodeName]) + 1)                begin
4225                    XmlFelter.TryGetValue(Node.NodeName, tmpAntal);
4226                    XmlFelter.AddOrSetValue(Node.NodeName, tmpAntal + 1);
4227                  end
4228                else                else
4229                  XmlFelter.values[Node.NodeName] := '1';                begin
4230                    XmlFelter.Add(Node.NodeName, 1);
4231                  end;
4232    
4233        end;        end;
4234        antalLiniefelter := XmlFelter.Count;        antalLiniefelter := XmlFelter.Count;
# Line 4143  var Line 4236  var
4236        SetLength(stregkoderMedTjekkodeArray, 0);    // reset fra tidligere brug        SetLength(stregkoderMedTjekkodeArray, 0);    // reset fra tidligere brug
4237        SetLength(stregkoderMedTjekkodeArray, antlin);  // sæt antal elementer i array        SetLength(stregkoderMedTjekkodeArray, antlin);  // sæt antal elementer i array
4238    
4239    
4240          Application.Processmessages; //Ugly Hack to improve User Experience when switching modes
4241    
4242        logTekst := 'Der er ' + IntToStr(antlin) + ' pakker, der endnu ikke er modtaget';        logTekst := 'Der er ' + IntToStr(antlin) + ' pakker, der endnu ikke er modtaget';
4243        if (antlinSenere > 0) then        if (antlinSenere > 0) then
4244        begin        begin
# Line 4151  var Line 4247  var
4247        logTekst := logTekst + '.';        logTekst := logTekst + '.';
4248    
4249        SkrivScanningLogFil(logTekst);        SkrivScanningLogFil(logTekst);
4250    
4251    
4252        for I:= 0 to XMLDocument1.DocumentElement.ChildNodes.Count - 1 do begin        for I:= 0 to XMLDocument1.DocumentElement.ChildNodes.Count - 1 do begin
4253            Node:= XMLDocument1.DocumentElement.ChildNodes[I];            Node:= XMLDocument1.DocumentElement.ChildNodes[I];
4254            if Node.NodeType = ntElement then begin            if Node.NodeType = ntElement then begin
# Line 4158  var Line 4256  var
4256                if not VarIsNull(Node.NodeValue) then                if not VarIsNull(Node.NodeValue) then
4257                  stregkode := Node.NodeValue;                  stregkode := Node.NodeValue;
4258                  antalFelterFundet := antalFelterFundet + 1;                  antalFelterFundet := antalFelterFundet + 1;
4259              end;              end
4260              if Node.NodeName = 'ModtagerNavn' then begin              else if Node.NodeName = 'ModtagerNavn' then begin
4261                if not VarIsNull(Node.NodeValue) then                if not VarIsNull(Node.NodeValue) then
4262                  modtagernavn := Node.NodeValue;                  modtagernavn := Node.NodeValue;
4263                  antalFelterFundet := antalFelterFundet + 1;                  antalFelterFundet := antalFelterFundet + 1;
4264              end;              end
4265              if Node.NodeName = 'ModtagerAdresse' then begin              else if Node.NodeName = 'ModtagerAdresse' then begin
4266                if not VarIsNull(Node.NodeValue) then                if not VarIsNull(Node.NodeValue) then
4267                  modtageradresse := Node.NodeValue;                  modtageradresse := Node.NodeValue;
4268                  antalFelterFundet := antalFelterFundet + 1;                  antalFelterFundet := antalFelterFundet + 1;
4269              end;              end
4270              if Node.NodeName = 'Kommentar' then begin              else if Node.NodeName = 'Kommentar' then begin
4271                if not VarIsNull(Node.NodeValue) then                if not VarIsNull(Node.NodeValue) then
4272                  kommentar := Node.NodeValue;                  kommentar := Node.NodeValue;
4273                  antalFelterFundet := antalFelterFundet + 1;                  antalFelterFundet := antalFelterFundet + 1;
4274              end;              end
4275              if Node.NodeName = 'PakkeType' then begin              else if Node.NodeName = 'PakkeType' then begin
4276                if not VarIsNull(Node.NodeValue) then                if not VarIsNull(Node.NodeValue) then
4277                  pakketype := Node.NodeValue;                  pakketype := Node.NodeValue;
4278                  antalFelterFundet := antalFelterFundet + 1;                  antalFelterFundet := antalFelterFundet + 1;
4279                if (pakketyper.values[pakketype] <> '') then                if ( pakketyper.ContainsKey(pakketype) ) then
4280                  pakketyper.values[pakketype] := IntToStr(StrToInt(pakketyper.values[pakketype]) + 1)                begin
4281                    pakketyper.TryGetValue(pakketype, tmpAntal);
4282                    pakketyper.AddOrSetValue(pakketype, tmpAntal + 1);
4283                  end
4284                else                else
4285                  pakketyper.values[pakketype] := '1';                  pakketyper.Add(pakketype, 1);
4286              end;              end
4287              if Node.NodeName = 'TjekkodeStatus' then begin              else if Node.NodeName = 'TjekkodeStatus' then begin
4288                if not VarIsNull(Node.NodeValue) then                if not VarIsNull(Node.NodeValue) then
4289                  tjekkodestatus := Node.NodeValue;                  tjekkodestatus := Node.NodeValue;
4290                  antalFelterFundet := antalFelterFundet + 1;                  antalFelterFundet := antalFelterFundet + 1;
# Line 4201  var Line 4302  var
4302                    linienr := linienr + 1;                    linienr := linienr + 1;
4303                  end;                  end;
4304              end;              end;
4305    
4306    
4307              if antalFelterFundet = antalLiniefelter then              if antalFelterFundet = antalLiniefelter then
4308              begin              begin
4309                if (ScanningType = '1') then                if (ScanningType = '1') then
# Line 4216  var Line 4319  var
4319              end;              end;
4320            end;            end;
4321        end;        end;
       for pakketypeix := 0 to pakketyper.Count-1 do  
         begin  
           ListBox1.Items.Insert(0,TimeToStr(now) + ': ' + ' '+pakketyper[pakketypeix]+' pakke(r) ikke modtaget');  
         end;  
4322    
4323          // Free up the list object  
4324          Application.Processmessages; //Ugly Hack to improve User Experience when switching modes
4325    
4326    
4327          for pakketype in pakketyper.Keys do
4328          begin
4329            pakketyper.TryGetValue(pakketype, tmpAntal);
4330            ListBox1.Items.Insert(0,TimeToStr(now) + ': ' + pakketype + ' ' + IntToStr(tmpAntal) + ' pakke(r) ikke modtaget');
4331          end;
4332    
4333            // Free up the dictionary object
4334        pakketyper.Free;        pakketyper.Free;
4335    
4336    
4337    
4338  //      ListBox1.Items.Insert(0,TimeToStr(now) + ': ' + 'Der er '+IntToStr(antlin)+' pakker, der endnu ikke er modtaget.');  //      ListBox1.Items.Insert(0,TimeToStr(now) + ': ' + 'Der er '+IntToStr(antlin)+' pakker, der endnu ikke er modtaget.');
4339        logTekst := 'Der er ' + IntToStr(antlin) + ' pakker, der endnu ikke er modtaget';        logTekst := 'Der er ' + IntToStr(antlin) + ' pakker, der endnu ikke er modtaget';
4340        if (antlinSenere > 0) then        if (antlinSenere > 0) then

Legend:
Removed from v.2756  
changed lines
  Added in v.2902

  ViewVC Help
Powered by ViewVC 1.1.20