CALCULER LA CLÉ DE LA SÉCURITÉ SOCIALE FRANCAISE

Messages postés
1708
Date d'inscription
vendredi 27 décembre 2002
Statut
Modérateur
Dernière intervention
5 octobre 2019
- - Dernière réponse : Neroc
Messages postés
2
Date d'inscription
vendredi 14 septembre 2007
Statut
Membre
Dernière intervention
12 décembre 2007
- 12 déc. 2007 à 20:07
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/41910-calculer-la-cle-de-la-securite-sociale-francaise

Afficher la suite 
japee
Messages postés
1708
Date d'inscription
vendredi 27 décembre 2002
Statut
Modérateur
Dernière intervention
5 octobre 2019
1 -
Et la Corse ? Tu as oublié la Corse (2A et 2B).

Vont pas être contents, les Corses, il va y avoir de la vendetta ^^
Il est vrai que ça complique un peu l'algo, mais il est tellement simple à la base...

Allez, au travail !

P-S: je sais, j'ai mis dans le même paragraphe les mots "travail" et "Corse", je ne l'ai pas fait exprès...
cs_Delphiprog
Messages postés
4580
Date d'inscription
samedi 19 janvier 2002
Statut
Modérateur
Dernière intervention
9 janvier 2013
24 -
Pour la spécificité Corse (depuis 1976), voir le paragraphe 4.1 sur la page :
http://xml.insee.fr/schema/nir.html#Clé_NIR-description
f0xi
Messages postés
4200
Date d'inscription
samedi 16 octobre 2004
Statut
Modérateur
Dernière intervention
2 janvier 2019
26 -
mouai bof ... par contre utilise StrToInt64Def(..., 0) sinon on as une erreur quand le champ est vide...
pense egalement a indenter ton code et sincerement, ce genre de code a plutot sa place dans les snippets plutot que les sources.

ah, je corrige egalement le tag "expert" pour "debutant" ... pas besoin d'etre expert pour utiliser un modulo.
bjim
Messages postés
2
Date d'inscription
vendredi 26 septembre 2003
Statut
Membre
Dernière intervention
20 novembre 2008
-
Pour simplifier : en 1 ligne (sauf pour la Corse :<) dans ton Edit1Change tu peux écrire:

label1.Caption := Format('%.2d',[97-Trunc(StrToCurrDef(edit1.text, 0)) mod 97]);
japee
Messages postés
1708
Date d'inscription
vendredi 27 décembre 2002
Statut
Modérateur
Dernière intervention
5 octobre 2019
1 -
Pouquoi utiliser currency ?
Avec Int64, on fait l'économie d'un Trunc :

Label1.Caption := Format('%.2d', [97 - StrToInt64Def(Edit1.text, 0) mod 97]);