begin process at 2012 02 10 13:08:52
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Delphi

 > 

Divers

 > 

Débutant(e)

 > 

Incrémenter un numéro de série


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Incrémenter un numéro de série

lundi 4 février 2008 à 17:21:07 | Incrémenter un numéro de série

76julien

   Salut tout le monde, j'ai fait du DELPHI dans mon jeune temps mais je ne sais pas comment peut-on incrémenter un numéro de série contenant des lettres et des chiffres. Je veux juste incrémenter les chiffres...les lettres ne changent pas..

Mon numéro de série est du type CD20080001
et je voudrais incrémenté du type
CD20080002
CD20080003
CD20080004
**********
**********
CD20080101

etc....

   En effet je veux juste incrémenter les quatres derniers chiffres en rouge...
Merci de me laisser un petit message ou cas ou vous avez une solution...
a+

lundi 4 février 2008 à 17:41:20 | Re : Incrémenter un numéro de série

BernieNoel68

En imaginant que nombre soit ta variable de comptage...

-------------------------------------------------------------------
var nombre : integer;

NumSerie := 'CD2008' + FormatFloat("0000", nombre) ;
nombre := nombre + 1 ;

-------------------------------------------------------------------
lundi 4 février 2008 à 19:31:04 | Re : Incrémenter un numéro de série

f0xi

Membre Club Administrateur CodeS-SourceS


type
  pSerialNum = ^TSerialNum;
  TSerialNum = record
    A : char;
    B : char;
    C : word;
    D : word;
  end;
  TSerialString = string[10];


function SerialMake(const cA, cB: char; const wC, wD: word): TSerialNum;
begin
  result.A := cA;
  result.B := cB;
  result.C := wC;
  result.D := wD;
end;

procedure SerialIncD(var Serial: TSerialNum; const i: word = 1);
begin
  inc(Serial.D, i);
end;

function SerialToStr(const Serial: TSerialNum): TSerialString;
begin
  with Serial do
    result := A + B + format('%.4d%4d',[C,D]);
end;

function StrToSerial(const SerialStr : TSerialString): TSerialNum;
begin
  result.A := SerialStr[1];
  result.B := SerialStr[2];
  result.C := word(IntToStr( SerialStr[3]+ SerialStr[4]+ SerialStr[5]+ SerialStr[6] )));
  result.D := word(IntToStr( SerialStr[7]+ SerialStr[8]+ SerialStr[9]+ SerialStr[10] )));
end;

function CheckSerial(const Serial: TSerialNum): boolean;
begin
  with Serial do
    result := (A = 'C') and
              (B = 'D') and
              (C = 2008) and
              ((D >= 1) and (D <= 9999));
end;



 




deefsign.gif
mardi 5 février 2008 à 08:32:29 | Re : Incrémenter un numéro de série

76julien

J'ai omis de préciser que mon dernier numéro de série était dans une base de données donc cela ressort de ma requete de la forme :

id := CD20080003

donc comment faire pour séparé "CD2008" de "0003" ?????

ensuite je ferai "0003+1".... et le tour est joué mais personne ne connais une fonction pour couper une chaine en deux la ou l'on veut????
mardi 5 février 2008 à 09:52:58 | Re : Incrémenter un numéro de série

dominique.stock

Réponse acceptée !
bonjour,
function Copy(S;Index,Count:Integer):string;


Dom
mardi 5 février 2008 à 09:57:30 | Re : Incrémenter un numéro de série

76julien

Réponse acceptée !
function StrSlice(const S: string; index: integer; count: integer) : string;
var
strlen : integer;
offset : integer;
begin
strlen := length(S) + 1;
{ start from right side }
  if 0 > index then
    offset := index + strlen
  else
    offset := index;
{ end from right side }
  if 1 > count then
    Result := Copy(S, offset, count + strlen - offset)
  else
    Result := Copy(S, offset, count)
end;

Exactement dominique, je viens à l'instant de trouver une solution qui se trouve ci-dessus :::: voila ou j'ai trouvé la source ::

www.delphifr.com/codes/STRINGTOOLS-FONCTIONS-MANIPULATION-CHAINES-CARACTERES_19697.aspx

A vous de jouer et merci pour votre aide qui m'a aiguillé !!
A+
mardi 5 février 2008 à 17:37:23 | Re : Incrémenter un numéro de série

cantador

Membre Club Administrateur CodeS-SourceS
Attention aux accès concurrentiels...

cantador
mercredi 6 février 2008 à 08:42:42 | Re : Incrémenter un numéro de série

76julien

pourquoi attention aux acces concurrentiels???
moi sa marche c'est quoi le souci???
mercredi 6 février 2008 à 15:03:08 | Re : Incrémenter un numéro de série
mercredi 6 février 2008 à 15:04:48 | Re : Incrémenter un numéro de série

cantador

Membre Club Administrateur CodeS-SourceS
Trois clients en réseaux déclenchent en même temps une insertion.
Examine les résultats..
cantador

1 2

Cette discussion est classée dans : chiffres, série, lettres, numéro, incrémenter


Répondre à ce message

Sujets en rapport avec ce message

Convertir Chiffres en lettres [ par slim59 ] Slut. à tous. Comment peut ont faire pour convertir des chiffres en lettres et les imprimer (J'utilise QuickReport). Merci+++ Chiffres en lettres dans quickreport [ par yaki_5200 ] Mes remerciments je souhaite une totale reussite pour l'ensemble des contribuables et de l'effort de la diversité de l'aide qu'il offrents particulier Diiférencier les chiffres des lettres dans une string? [ par kwentinn ] Salut tt le monde!J'aimerais savoir s'il est possible de différencier les chiffres des lettres dans une string. Si oui, comment faire? Y'a-t-il une fo numéro de série [ par dounga66 ] je cherche le numéro de série de dephi 6aidez moi  SVP comment ecrire des chiffres en lettres sou access [ par missnour26 ] Bonjour, Je vous prie de bien vouloir m'aider à résoudre un problème qui me tracasse depuis un certain temps. Comment pouvoir, dans Access, créer une numéro de série de USB flash mémoire [ par med1112 ] salut à tous,y a t il un moyen pour obtenir le numéro de série de USB flash mémoire, j'utilise Delphi7.merci numéro de série de CPU [ par adoula775 ] je cherche la fonction qui donne le numéro de serie de micro-processeur (CPU) ou un programme qui donne le numéro de serie de CPU concatener les chiffres avec des lettres [ par saimslim ] Bonjour ! je voudrais savoir comment concatener un chifre qui s'incrémente par des lettres. exemple : 1 devient H0001 2 devient H0002


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,593 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales