/[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 2705 by torben, Fri Sep 4 12:39:33 2015 UTC revision 2794 by torben, Thu Dec 17 19:04:09 2015 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 563  begin Line 570  begin
570    
571      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');
572      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');
573        URLOmdirigerTilPakkeshop := ReadString('Settings', 'URLOmdirigerTilPakkeshop','http://omdeling.info/webservices/pakkeshop/PakkeKontrolOmdirigerTilPakkeshop.php?sted=%s&stregkode=%s');
574    
575    
576    
577    
# Line 726  begin Line 735  begin
735        PanelValg2.Font.Color := clInactiveCaption;        PanelValg2.Font.Color := clInactiveCaption;
736        PanelValg3.Enabled := false;        PanelValg3.Enabled := false;
737        PanelValg3.Font.Color := clInactiveCaption;        PanelValg3.Font.Color := clInactiveCaption;
738        PanelValg6.Enabled := false;        //PanelValg6.Enabled := false;
739        PanelValg6.Font.Color := clInactiveCaption;        //PanelValg6.Font.Color := clInactiveCaption;
740    
741       // her skal vi også disable de menupunkter BK ikke kan bruge       // her skal vi også disable de menupunkter BK ikke kan bruge
742        ReturpakkerfraDAO1.Enabled := false;        ReturpakkerfraDAO1.Enabled := false;
743        Returpakkerfraboghandler1.Enabled := false;        Returpakkerfraboghandler1.Enabled := false;
744        Returpakkerfrapakkeshop1.Enabled := false;  
745          //Returpakkerfrapakkeshop1.Enabled := false;
746    
747        if SpecialVersionScanningtype = 'A' then        if SpecialVersionScanningtype = 'A' then
748        begin        begin
749           Scanningtype := '1';           Scanningtype := '1';
# Line 1113  begin Line 1125  begin
1125      or (NumberString = 'Retur fra kunde')      or (NumberString = 'Retur fra kunde')
1126      or (NumberString = 'DAO DIREKTE')      or (NumberString = 'DAO DIREKTE')
1127      or (NumberString = 'DAO PAKKESHOP')      or (NumberString = 'DAO PAKKESHOP')
1128        or (NumberString = 'DAO PAKKESHOP')
1129        or (LowerCase(NumberString) = 'for stor hjemmelevering' )
1130      or (NumberString = 'Retur fra pakkeshop') then      or (NumberString = 'Retur fra pakkeshop') then
1131    
1132      begin      begin
# Line 1123  begin Line 1137  begin
1137      begin      begin
1138        ShowMessage('Indsæt et gyldigt pakkenummer - uden linieskift');        ShowMessage('Indsæt et gyldigt pakkenummer - uden linieskift');
1139      end;      end;
1140    end;    end;  // Slut ctrl-v
1141    
1142    if Key = #13 then     // Enter    if Key = #13 then     // Enter
1143    begin    begin
# Line 1177  begin Line 1191  begin
1191         exit;         exit;
1192      end;      end;
1193    
1194        if LowerCase(StregKode) = 'for stor hjemmelevering' then
1195        begin
1196          if chkForstorTilDirekte.Enabled then
1197          begin
1198            chkForstorTilDirekte.Checked := true;
1199          end
1200          else
1201          begin
1202             VisAlarmSkaerm( Stregkode + ' kan ikke vælges på denne scannings tilstand' );
1203          end;
1204          Stregkode := '';
1205          StregkodeST.Caption := StregKode;
1206          exit;
1207        end;
1208    
1209    
1210      if StregKode = 'Indtast kundenummer' then      if StregKode = 'Indtast kundenummer' then
1211      begin      begin
1212         if chkSporgEfterKunde.Enabled = true then         if chkSporgEfterKunde.Enabled = true then
# Line 1374  begin Line 1404  begin
1404        Pakkescanningtype := Scanningtype;        Pakkescanningtype := Scanningtype;
1405      end;      end;
1406    
1407      if (   (Pakkescanningtype = '1') and (PanelValg1.Enabled = false)      if (   ( (Pakkescanningtype = '1') and (PanelValg1.Enabled = false) )
1408          or (Pakkescanningtype = '2') and (PanelValg2.Enabled = false)          or ( (Pakkescanningtype = '2') and (PanelValg2.Enabled = false) )
1409          or (Pakkescanningtype = '3') and (PanelValg3.Enabled = false)          or ( (Pakkescanningtype = '3') and (PanelValg3.Enabled = false) )
1410          or (Pakkescanningtype = '4') and (PanelValg4.Enabled = false)          or ( (Pakkescanningtype = '4') and (PanelValg4.Enabled = false) )
1411          or (Pakkescanningtype = '5') and (PanelValg5.Enabled = false)          or ( (Pakkescanningtype = '5') and (PanelValg5.Enabled = false) )
1412          or (Pakkescanningtype = '6') and (PanelValg6.Enabled = false)  ) then          or ( (Pakkescanningtype = '6') and (PanelValg6.Enabled = false) ) ) then
1413      begin   // Her skal komme en alarm og rød skærm      begin   // Her skal komme en alarm og rød skærm
1414          VisAlarmSkaerm( Stregkode + ' kan ikke vælges på dette scanningsted' );          VisAlarmSkaerm( Stregkode + ' kan ikke vælges på dette scanningsted' );
1415    
1416         exit;         exit;
1417      end;      end;
1418    
1419      if Automatiskvalg1.Checked and (Length(Stregkode) > 8) then      if (Automatiskvalg1.Checked and (Length(Stregkode) > 8) ) then
1420      begin      begin
1421        GemStregkode := Stregkode;        GemStregkode := Stregkode;
1422        if Pakketype = 'NatXpress' then        if Pakketype = 'NatXpress' then
# Line 1420  begin Line 1450  begin
1450        else        else
1451            begin            begin
1452            // Her skal komme en alarm og rød skærm            // Her skal komme en alarm og rød skærm
1453              VisAlarmSkaerm( Stregkode + ' kan ikke vælges på dette scanningsted' );              //VisAlarmSkaerm( Stregkode + ' kan ikke vælges på dette scanningsted' );
1454                 VisAlarmSkaerm( Stregkode + ' kan ikke bruges med automatisk valg' );
1455    
1456               exit;               exit;
1457            end;            end;
# Line 1656  begin Line 1687  begin
1687    
1688    Key := #0;    Key := #0;
1689    
1690    
1691    
1692    
1693    
1694    
1695  end; //End of OnKeyPress  end; //End of OnKeyPress
1696    
1697    
1698    
1699  procedure TMainForm.SendInfoTilServer(Sted, Scanningtype, Infotype, Info : String);  procedure TMainForm.SendInfoTilServer(Sted, Scanningtype, Infotype, Info : String);
1700  const  const
1701    crlf = Chr(13) + Chr(10) ;  // Carriage return & Linefeed    crlf = Chr(13) + Chr(10) ;  // Carriage return & Linefeed
# Line 1987  begin Line 2025  begin
2025    begin    begin
2026      exit;      exit;
2027    end;    end;
2028    
2029      if chkForstorTilDirekte.Checked then  // Denne skal være efter if/else kæden da den overrider de øvrige URL'er
2030      begin
2031        URLStr := Format(URLOmdirigerTilPakkeshop,[Sted, PakkeNr]);
2032      end;
2033    
2034    try    try
2035      //raise EIdConnClosedGracefully.Create('test');   // KUN TIL TEST      //raise EIdConnClosedGracefully.Create('test');   // KUN TIL TEST
2036      WebSvar := IdHTTP1.Get(URLStr);      WebSvar := IdHTTP1.Get(URLStr);
# Line 2008  begin Line 2052  begin
2052          end;          end;
2053      end;      end;
2054    end;    end;
2055    
2056    XMLDocument1.LoadFromXML(WebSvar);    XMLDocument1.LoadFromXML(WebSvar);
2057    try    try
2058      if Pakkeshoplevering1.Checked or Returpakkerfrapakkeshop1.Checked then      if Pakkeshoplevering1.Checked or Returpakkerfrapakkeshop1.Checked then
# Line 2031  begin Line 2076  begin
2076          end;          end;
2077        end;        end;
2078       end       end
2079      else if menuIndlevering.Checked then      else if menuIndlevering.Checked or chkForstorTilDirekte.Checked then
2080      begin      begin
2081    
2082    
# Line 2046  begin Line 2091  begin
2091         Stregkode := PakkeshopLabel.Stregkode;         Stregkode := PakkeshopLabel.Stregkode;
2092    
2093         LabelPrint.PrintPakkeshopLabel( PakkeshopLabel );         LabelPrint.PrintPakkeshopLabel( PakkeshopLabel );
2094           chkForstorTilDirekte.Checked := false;
2095    
2096       end;       end;
2097    
# Line 3082  begin Line 3128  begin
3128        BtnEKLoverforsel.Enabled := true;        BtnEKLoverforsel.Enabled := true;
3129        InitLillePakke();        InitLillePakke();
3130        ListBox1.Items.Clear;        ListBox1.Items.Clear;
3131    
3132          chkForstorTilDirekte.Checked := false;
3133          chkForstorTilDirekte.Enabled := false;
3134    
3135        if BladhusSted = 0 then        if BladhusSted = 0 then
3136        begin        begin
3137          IndlesScanningLogFil();          IndlesScanningLogFil();
# Line 3113  begin Line 3163  begin
3163        ListBox1.Items.Clear;        ListBox1.Items.Clear;
3164        ListBox2.Items.Clear;        ListBox2.Items.Clear;
3165        BtnEKLoverforsel.Enabled := false;        BtnEKLoverforsel.Enabled := false;
3166    
3167          chkForstorTilDirekte.Checked := false;
3168          chkForstorTilDirekte.Enabled := false;
3169    
3170        InitLillePakke();        InitLillePakke();
3171  end;  end;
3172    
# Line 3139  begin Line 3193  begin
3193        ListBox1.Items.Clear;        ListBox1.Items.Clear;
3194        ListBox2.Items.Clear;        ListBox2.Items.Clear;
3195        BtnEKLoverforsel.Enabled := false;        BtnEKLoverforsel.Enabled := false;
3196    
3197          chkForstorTilDirekte.Checked := false;
3198          chkForstorTilDirekte.Enabled := false;
3199    
3200        InitLillePakke();        InitLillePakke();
3201  end;  end;
3202    
# Line 3170  begin Line 3228  begin
3228        BtnEKLoverforsel.Enabled := false;        BtnEKLoverforsel.Enabled := false;
3229        IdFTP1.Passive := true;        IdFTP1.Passive := true;
3230        IdFTP1.PassiveUseControlHost := true;        IdFTP1.PassiveUseControlHost := true;
3231    
3232          chkForstorTilDirekte.Checked := false;
3233          chkForstorTilDirekte.Enabled := true;
3234    
3235        if (BladhusSted = 0) or (BladhusSted = 2) or (BladhusSted = 3) then        if (BladhusSted = 0) or (BladhusSted = 2) or (BladhusSted = 3) then
3236        begin        begin
3237            IndlesScanningLogFil();            IndlesScanningLogFil();
# Line 3205  begin Line 3267  begin
3267    
3268        BtnEKLoverforsel.Enabled := true;        BtnEKLoverforsel.Enabled := true;
3269    
3270          chkForstorTilDirekte.Checked := false;
3271          chkForstorTilDirekte.Enabled := true;
3272    
3273        InitLillePakke();        InitLillePakke();
3274        IndlesScanningLogFil();        IndlesScanningLogFil();
3275        if BladhusSted = 0 then        if BladhusSted = 0 then
# Line 3240  begin Line 3305  begin
3305        BtnDownloadKontrolfil.Enabled := false;        BtnDownloadKontrolfil.Enabled := false;
3306        BtnOpdaterListen.Enabled := true;        BtnOpdaterListen.Enabled := true;
3307        BtnEKLoverforsel.Enabled := false;        BtnEKLoverforsel.Enabled := false;
3308    
3309          chkForstorTilDirekte.Checked := false;
3310          chkForstorTilDirekte.Enabled := false;
3311    
3312    
3313        InitLillePakke();        InitLillePakke();
3314        IndlesScanningLogFil();        IndlesScanningLogFil();
3315        if BladhusSted = 0 then        if BladhusSted = 0 then
# Line 3287  begin Line 3357  begin
3357        BtnDownloadKontrolfil.Enabled := false;        BtnDownloadKontrolfil.Enabled := false;
3358        BtnOpdaterListen.Enabled := true;        BtnOpdaterListen.Enabled := true;
3359        BtnEKLoverforsel.Enabled := false;        BtnEKLoverforsel.Enabled := false;
3360    
3361          chkForstorTilDirekte.Checked := false;
3362          chkForstorTilDirekte.Enabled := false;
3363    
3364    
3365        InitLillePakke();        InitLillePakke();
3366        IndlesScanningLogFil();        IndlesScanningLogFil();
3367        if BladhusSted = 0 then        if BladhusSted = 0 then
# Line 4030  var Line 4105  var
4105    stregkode, modtagernavn, modtageradresse, kommentar : string;    stregkode, modtagernavn, modtageradresse, kommentar : string;
4106    pakketype, tjekkodestatus : String;    pakketype, tjekkodestatus : String;
4107    pakketypeix, antalLiniefelter, antalFelterFundet, linienr : Integer;    pakketypeix, antalLiniefelter, antalFelterFundet, linienr : Integer;
4108    pakketyper : TStrings;    //pakketyper : TStrings;
4109      pakketyper : TDictionary<String, Integer>;
4110      tmpAntal : Integer;
4111    
4112    
4113    
4114    antlin : Integer;    antlin : Integer;
4115    
4116    antlinIdag, antlinSenere : Integer;    antlinIdag, antlinSenere : Integer;
4117    
4118    XmlFelter : TStrings;    //XmlFelter : TStrings;
4119      XmlFelter : TDictionary<String, Integer>;
4120    
4121   begin   begin
4122      XmlFelter := TStringList.Create;  
4123      pakketyper := TStringList.Create;  
4124        XmlFelter := TDictionary<String, Integer>.Create;
4125        pakketyper := TDictionary<String, Integer>.Create;
4126    
4127      linienr := 0;      linienr := 0;
4128      ListBox2.Clear;      ListBox2.Clear;
4129      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 4054  var Line 4138  var
4138          StedKode := Sted;          StedKode := Sted;
4139        end;        end;
4140    
4141          Application.Processmessages; //Ugly Hack to improve User Experience when switching modes
4142    
4143    
4144    
4145      if (Scanningtype = '7') then      if (Scanningtype = '7') then
# Line 4113  var Line 4199  var
4199            if Node.NodeType = ntElement then begin            if Node.NodeType = ntElement then begin
4200              if Node.NodeName = 'Stregkode' then              if Node.NodeName = 'Stregkode' then
4201              begin              begin
4202                 antlin := antlin + 1;                 Inc(antlin);
4203                 // 20150306: start                 // 20150306: start
4204                if not VarIsNull(Node.NodeValue) then                if not VarIsNull(Node.NodeValue) then
4205                begin                begin
4206                   if (pos('(', Node.NodeValue) = 0) then                   if (pos('(', Node.NodeValue) = 0) then
4207                   begin                   begin
4208                     antlinIdag := antlinIdag + 1;                     Inc(antlinIdag);
4209                   end                   end
4210                   else                   else
4211                   begin                   begin
4212                     antlinSenere := antlinSenere + 1;                     Inc(antlinSenere);
4213                   end;                   end;
4214                end;                end;
4215                 // 20150306: slut                 // 20150306: slut
4216              end;              end;
4217            end;            end;
4218            if (XmlFelter.values[Node.NodeName] <> '') then            if ( XmlFelter.ContainsKey(Node.NodeName) ) then
4219                  XmlFelter.values[Node.NodeName] := IntToStr(StrToInt(XmlFelter.values[Node.NodeName]) + 1)                begin
4220                    XmlFelter.TryGetValue(Node.NodeName, tmpAntal);
4221                    XmlFelter.AddOrSetValue(Node.NodeName, tmpAntal + 1);
4222                  end
4223                else                else
4224                  XmlFelter.values[Node.NodeName] := '1';                begin
4225                    XmlFelter.Add(Node.NodeName, 1);
4226                  end;
4227    
4228        end;        end;
4229        antalLiniefelter := XmlFelter.Count;        antalLiniefelter := XmlFelter.Count;
# Line 4140  var Line 4231  var
4231        SetLength(stregkoderMedTjekkodeArray, 0);    // reset fra tidligere brug        SetLength(stregkoderMedTjekkodeArray, 0);    // reset fra tidligere brug
4232        SetLength(stregkoderMedTjekkodeArray, antlin);  // sæt antal elementer i array        SetLength(stregkoderMedTjekkodeArray, antlin);  // sæt antal elementer i array
4233    
4234    
4235          Application.Processmessages; //Ugly Hack to improve User Experience when switching modes
4236    
4237        logTekst := 'Der er ' + IntToStr(antlin) + ' pakker, der endnu ikke er modtaget';        logTekst := 'Der er ' + IntToStr(antlin) + ' pakker, der endnu ikke er modtaget';
4238        if (antlinSenere > 0) then        if (antlinSenere > 0) then
4239        begin        begin
# Line 4148  var Line 4242  var
4242        logTekst := logTekst + '.';        logTekst := logTekst + '.';
4243    
4244        SkrivScanningLogFil(logTekst);        SkrivScanningLogFil(logTekst);
4245    
4246    
4247        for I:= 0 to XMLDocument1.DocumentElement.ChildNodes.Count - 1 do begin        for I:= 0 to XMLDocument1.DocumentElement.ChildNodes.Count - 1 do begin
4248            Node:= XMLDocument1.DocumentElement.ChildNodes[I];            Node:= XMLDocument1.DocumentElement.ChildNodes[I];
4249            if Node.NodeType = ntElement then begin            if Node.NodeType = ntElement then begin
# Line 4155  var Line 4251  var
4251                if not VarIsNull(Node.NodeValue) then                if not VarIsNull(Node.NodeValue) then
4252                  stregkode := Node.NodeValue;                  stregkode := Node.NodeValue;
4253                  antalFelterFundet := antalFelterFundet + 1;                  antalFelterFundet := antalFelterFundet + 1;
4254              end;              end
4255              if Node.NodeName = 'ModtagerNavn' then begin              else if Node.NodeName = 'ModtagerNavn' then begin
4256                if not VarIsNull(Node.NodeValue) then                if not VarIsNull(Node.NodeValue) then
4257                  modtagernavn := Node.NodeValue;                  modtagernavn := Node.NodeValue;
4258                  antalFelterFundet := antalFelterFundet + 1;                  antalFelterFundet := antalFelterFundet + 1;
4259              end;              end
4260              if Node.NodeName = 'ModtagerAdresse' then begin              else if Node.NodeName = 'ModtagerAdresse' then begin
4261                if not VarIsNull(Node.NodeValue) then                if not VarIsNull(Node.NodeValue) then
4262                  modtageradresse := Node.NodeValue;                  modtageradresse := Node.NodeValue;
4263                  antalFelterFundet := antalFelterFundet + 1;                  antalFelterFundet := antalFelterFundet + 1;
4264              end;              end
4265              if Node.NodeName = 'Kommentar' then begin              else if Node.NodeName = 'Kommentar' then begin
4266                if not VarIsNull(Node.NodeValue) then                if not VarIsNull(Node.NodeValue) then
4267                  kommentar := Node.NodeValue;                  kommentar := Node.NodeValue;
4268                  antalFelterFundet := antalFelterFundet + 1;                  antalFelterFundet := antalFelterFundet + 1;
4269              end;              end
4270              if Node.NodeName = 'PakkeType' then begin              else if Node.NodeName = 'PakkeType' then begin
4271                if not VarIsNull(Node.NodeValue) then                if not VarIsNull(Node.NodeValue) then
4272                  pakketype := Node.NodeValue;                  pakketype := Node.NodeValue;
4273                  antalFelterFundet := antalFelterFundet + 1;                  antalFelterFundet := antalFelterFundet + 1;
4274                if (pakketyper.values[pakketype] <> '') then                if ( pakketyper.ContainsKey(pakketype) ) then
4275                  pakketyper.values[pakketype] := IntToStr(StrToInt(pakketyper.values[pakketype]) + 1)                begin
4276                    pakketyper.TryGetValue(pakketype, tmpAntal);
4277                    pakketyper.AddOrSetValue(pakketype, tmpAntal + 1);
4278                  end
4279                else                else
4280                  pakketyper.values[pakketype] := '1';                  pakketyper.Add(pakketype, 1);
4281              end;              end
4282              if Node.NodeName = 'TjekkodeStatus' then begin              else if Node.NodeName = 'TjekkodeStatus' then begin
4283                if not VarIsNull(Node.NodeValue) then                if not VarIsNull(Node.NodeValue) then
4284                  tjekkodestatus := Node.NodeValue;                  tjekkodestatus := Node.NodeValue;
4285                  antalFelterFundet := antalFelterFundet + 1;                  antalFelterFundet := antalFelterFundet + 1;
# Line 4198  var Line 4297  var
4297                    linienr := linienr + 1;                    linienr := linienr + 1;
4298                  end;                  end;
4299              end;              end;
4300    
4301    
4302              if antalFelterFundet = antalLiniefelter then              if antalFelterFundet = antalLiniefelter then
4303              begin              begin
4304                if (ScanningType = '1') then                if (ScanningType = '1') then
# Line 4213  var Line 4314  var
4314              end;              end;
4315            end;            end;
4316        end;        end;
       for pakketypeix := 0 to pakketyper.Count-1 do  
         begin  
           ListBox1.Items.Insert(0,TimeToStr(now) + ': ' + ' '+pakketyper[pakketypeix]+' pakke(r) ikke modtaget');  
         end;  
4317    
4318          // Free up the list object  
4319          Application.Processmessages; //Ugly Hack to improve User Experience when switching modes
4320    
4321    
4322          for pakketype in pakketyper.Keys do
4323          begin
4324            pakketyper.TryGetValue(pakketype, tmpAntal);
4325            ListBox1.Items.Insert(0,TimeToStr(now) + ': ' + pakketype + ' ' + IntToStr(tmpAntal) + ' pakke(r) ikke modtaget');
4326          end;
4327    
4328            // Free up the dictionary object
4329        pakketyper.Free;        pakketyper.Free;
4330    
4331    
4332    
4333  //      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.');
4334        logTekst := 'Der er ' + IntToStr(antlin) + ' pakker, der endnu ikke er modtaget';        logTekst := 'Der er ' + IntToStr(antlin) + ' pakker, der endnu ikke er modtaget';
4335        if (antlinSenere > 0) then        if (antlinSenere > 0) then

Legend:
Removed from v.2705  
changed lines
  Added in v.2794

  ViewVC Help
Powered by ViewVC 1.1.20