Also der Fehler tritt an der folgenden Stelle auf:
Delphi-Quellcode:
for i := 0 to Zaehlung - 1 do
begin
AusFeld[i].iSchrank := FeldPlatz[i].SchrankNr;
AusFeld[i].iAusschub := FeldPlatz[i].AusschubNr;
AusFeld[i].iFach := FeldPlatz[i].FachNr;
AusFeld[i].iTuete := FeldPlatz[i].PackNr;
AusFeld[i].iStueckTuete := FeldPlatz[i].Stueck;
AusFeld[i].Datum := FeldPlatz[i].Datum;
// In diesem Abschnitt tritt der Fehler auf 14.05.2013
if (AusFeld[i].iFach >= 0) and (AusFeld[i].iFach < 10) then
sHelp1 := '000' + IntToStr(AusFeld[i].iFach);
if (AusFeld[i].iFach > 9) and (AusFeld[i].iFach < 100) then
sHelp1 := '00' + IntToStr(AusFeld[i].iFach);
if (AusFeld[i].iFach > 99) and (AusFeld[i].iFach < 1000) then
sHelp1 := '0' + IntToStr(AusFeld[i].iFach);
if AusFeld[i].iFach > 999 then
sHelp1 := IntToStr(AusFeld[i].iFach);
if (AusFeld[i].iTuete >= 0) and (AusFeld[i].iTuete < 10) then
sHelp2 := '0000' + IntToStr(AusFeld[i].iTuete);
if (AusFeld[i].iTuete > 9) and (AusFeld[i].iTuete < 100) then
sHelp2 := '000' + IntToStr(AusFeld[i].iTuete);
if (AusFeld[i].iTuete > 99) and (AusFeld[i].iTuete < 1000) then
sHelp2 := '00' + IntToStr(AusFeld[i].iTuete);
if AusFeld[i].iTuete > 9999 then
sHelp2 := IntToStr(AusFeld[i].iTuete);
AusFeld[i].Barcode := sHelp1 + sHelp2;
end;
Dabei ist "Zählung" die Größe des Feldes "AusFeld", mit welchem hier gearbeitet wird. Die Strings sind lokale Variablen. Das große Feld, welches ich in einem vorherigen Post erwähnte, Name "Speicher", wird hier nicht verwendet, aber dennoch verändert.