Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Delphi Automatische Nummernvergabe mit führenden Nullen (https://www.delphipraxis.net/176822-automatische-nummernvergabe-mit-fuehrenden-nullen.html)

messie 28. Sep 2013 20:03

Automatische Nummernvergabe mit führenden Nullen
 
Moin,

ein kleines Problem, wo ich aber keine generelle Lösung finde:
ich lege eine Anzahl von Bauteilen an, bei denen der User einen Präfix vergibt und die letzte Stelle hoch gezählt werden.
Bei 25 Teilen ergibt sich aus Startwert 123 -> 123..147.

Die Erhöhung findet durch einfache Wandlung in ein Integer statt. Nun möchte ich aber eine Nummer mit führenden Nullen Hochzählern, z.B. 0001 -> 0001..0025
Gibt es dafür eine einfache Strategie ohne dass ich mir die (wechselnde Anzahl) führenden Nullen nicht einzeln merken muss?

Grüße, Messie

Meflin 28. Sep 2013 20:08

AW: Automatische Nummernvergabe mit führenden Nullen
 
Code:
Format('%.*d', [5, 123]);
Kann man immernoch problemlos von und nach Integer umwandeln. Oder wo soll das Problem sein?

hathor 28. Sep 2013 20:29

AW: Automatische Nummernvergabe mit führenden Nullen
 
0123 bis 0147:

Delphi-Quellcode:
var i : Integer;
    s : String;
begin
  i := 122;
  repeat
    inc(i);
    s := Format('%.4d',[i]);
//irgendwas tun
  until i=147;
end;
Wenn Du die Nullen wieder entfernen willst:

Delphi-Quellcode:
function RemoveLeadingZeros(var aValue: String): String;
begin
While (Copy(aValue,1,1) = '0') Do Delete(aValue,1,1);
Result:= aValue;
end;
//oder
function RemoveLeadingZeros2(const aValue: String): String;
begin
  Result := IntToStr(StrToIntDef(aValue,0));
end;

messie 28. Sep 2013 20:36

AW: Automatische Nummernvergabe mit führenden Nullen
 
:thumb:
So habe ich Format noch nie benutzt :wink:

Grüße, Messie


Alle Zeitangaben in WEZ +1. Es ist jetzt 21:16 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz