begin process at 2012 05 29 01:16:03
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Javascript / DHTML / Ajax

 > 

JavaScript Orienté objet (POO)

 > 

Function & Méthodes

 > 

Calcule Numéro de Sécurité Sociale


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

Calcule Numéro de Sécurité Sociale

vendredi 26 juin 2009 à 20:56:25 | Calcule Numéro de Sécurité Sociale

Morocco13

Bonjour, ci-dessous un code qui calcule la clé du numéro de sécurité sociale français.

Il n'y a aucun problème dans le code, mais ma question serait donc : est ce possible qu'il n'y aura qu'un seul champs à remplir qui contiendra tout le numéro de la sécurité sociale à qui on cherche la clé ?

Si oui, est ce que quelqu'un peux me faire ça, je serait très reconnaissante.

Merci d'avance.


-
Morocco13 -


Le code :

<SCRIPT LANGUAGE="JavaScript">

function litnombre(aChaineNombre)
{
 // retire les espaces les points et autres caractères différents des nombres
 var li=0;
 var lChaine=""+aChaineNombre;

 while (li<eval(lChaine.length))
 {
  if (lChaine.charCodeAt(li)<48 || lChaine.charCodeAt(li)>57)
  {
   lChaine=lChaine.substring(0,li)+lChaine.substring(li+1,lChaine.length);
   li--;
  }

  li++;
 }
 return lChaine;
}


</SCRIPT>

<SCRIPT LANGUAGE="JavaScript">

function litnombreDpt(aChaineNombre)
{
 // retire les espaces les points et autres caractères différents des nombres
 // pour les lettres A à B, remplacement par un nombre 0 et affectation d'une variable globale
 var li=0;
 var lNb;
 var lChaine=""+aChaineNombre;
 document.forms[0].CodeDpt=0;

 while (li<eval(lChaine.length))
 {
  if (lChaine.charCodeAt(li)<48 || lChaine.charCodeAt(li)>57)
  {
   if (lChaine.charCodeAt(li)>=65 || lChaine.charCodeAt(li)<=66)
   {
    lNb=lChaine.charCodeAt(li)-64;
    if (lNb>=2)
    {
     document.forms[0].CodeDpt=2;
    }

    if (lNb<=1)
    {
     document.forms[0].CodeDpt=1;
    }

    lChar="0";
    lChaine=lChaine.substring(0,li)+lChar+lChaine.substring(li+1,lChaine.length);
   }
   else
   {
    if (lChaine.charCodeAt(li)>=97 || lChaine.charCodeAt(li)<=98)
    {
     lNb=lChaine.charCodeAt(li)-96;
     if (lNb>=2)
     {
      document.forms[0].CodeDpt=2;
     }
 
     if (lNb<=1)
     {
      document.forms[0].CodeDpt=1;
     }
 
     lChar="0";
     lChaine=lChaine.substring(0,li)+lChar+lChaine.substring(li+1,lChaine.length);
    }
    else
    { 
     // on retire le caractère indésirable
     lChaine=lChaine.substring(0,li)+lChaine.substring(li+1,lChaine.length);
     li--;
    }
   }
  }

  li++;
 }
 return lChaine;
}

function fCalcNoSS(acodesexe, acodeannee, acodemois, acodedpt, acodecommune, anoordre)
{

 var lcodesexe, lcodeannee, lcodemois, lcodedpt, lcodecommune, lnoordre;
 var lNir , lNumNir;
 var lCodeNum;

 // retire les espaces les points et autres caractères différents des nombres

 lcodesexe=litnombre(acodesexe);
        lcodeannee=litnombre(acodeannee);
 lcodemois=litnombre(acodemois);
 lcodedpt=litnombreDpt(acodedpt);
 lcodecommune=litnombre(acodecommune);
 lnoordre=litnombre(anoordre);

 if (lcodesexe.length!=1)
 {
  alert("Le code sexe n'a pas 1 chiffre");
  return "";
 }
 else
 {
  if (lcodesexe!=1 &&  lcodesexe!=2)
  {
   alert("Le code sexe est normalement égal à 1 ou 2, on continue quand même (numéro temporaire)");
   // return "";
  }
 }


 if (lcodeannee.length!=2)
 {
  alert("Le code année n'a pas 2 chiffres");
  return "";
 }

 if (lcodemois.length!=2)
 {
  alert("Le code mois n'a pas 2 chiffres");
  return "";
 }

 if (lcodedpt.length!=2)
 {
  alert("Le code département n'a pas 2 chiffres");
  return "";
 }

 if (lcodecommune.length!=3)
 {
  alert("Le code commune n'a pas 3 chiffres");
  return "";
 }

 if (lnoordre.length!=3)
 {
  alert("Le numéro d'ordre n'a pas 3 chiffres");
  return "";
 }

 lNir=lcodesexe+lcodeannee+lcodemois+lcodedpt+lcodecommune+lnoordre;
 // alert(lNir);
 lNumNir=parseFloat(lNir);
 if (document.forms[0].CodeDpt==2)
 {
  lNumNir=lNumNir-2000000;
 }

 if (document.forms[0].CodeDpt==1)
 {
  lNumNir=lNumNir-1000000;
 }

 lCodeNum=97-(lNumNir % 97);
 return lCodeNum;

}

</SCRIPT>
<A NAME=noss>
<H2>Calcul de clé de numéro sécurité sociale</H2>
<P>
<form name=noss method="POST">
Code sexe (1 = homme, 2= femme) : <INPUT TYPE=TEXT NAME=codesexe SIZE=1 VALUE="">
<BR>
Annee naissance (2 derniers chiffres du millésime : 1980 ->80) : <INPUT TYPE=TEXT NAME=codeannee SIZE=2 VALUE="">
<BR>
Mois naissance (sur 2 chiffres : janvier = 01, décembre=12) : <INPUT TYPE=TEXT NAME=codemois SIZE=2 VALUE="">
<BR>
Code département naissance [sur 2 chiffres ou lettres, exemple 75 pour Paris, 99 pour l'étranger, 2A pour la Corse du Sud et 2B pour la Corse du Nord] : <INPUT TYPE=TEXT NAME=codedpt SIZE=2 VALUE="">
<BR>
Code Insee commune de naissance [sur 3 chiffres] : <INPUT TYPE=TEXT NAME=codecommune SIZE=3 VALUE="">
<BR>
Numéro d'ordre [sur 3 chiffres] : <INPUT TYPE=TEXT NAME=noordre SIZE=3 VALUE="">
<BR>
<INPUT TYPE="button"
VALUE="Trouvez Clé de controle" onclick="this.form.clecontroless.value=fCalcNoSS(this.form.codesexe.value, this.form.codeannee.value, this.form.codemois.value, this.form.codedpt.value, this.form.codecommune.value, this.form.noordre.value)">
<BR>

Clé contrôle (2 chiffres) : <INPUT TYPE=TEXT NAME=clecontroless SIZE=2 VALUE="">

FONT color=#9acd32>

samedi 27 juin 2009 à 13:58:52 | Re : Calcule Numéro de Sécurité Sociale

Bul3

Membre Club


Bonjour,

>>
mais ma question serait donc : est ce possible qu'il n'y aura qu'un seul champs à
>>remplir qui contiendra tout le numéro de la sécurité sociale à qui on cherche la clé ?

oui.

>>est ce que quelqu'un peux me faire ça
euh.. on peut t'aider à faire, on ne te fera probablement pas
que n'arrives-tu pas à faire justement ?
dans ton exemple, tu as plusieurs champs, met en un seul
et regarde du coté de substr et/ou substring

Cordialement [mon Site] [M'écrire] Bul


Cette discussion est classée dans : code, chiffres, li, lchaine, if


Répondre à ce message

Sujets en rapport avec ce message

Urgent projet fin d'études thème:Construire le code barre. [ par amazir ] Chèr amis j'ai un projet fin d'études dont je ne sais pas oû commencer .Veuillez m'aider, merci infiniment. Projet Un If ne fonctionne pas [ par francoisch ] Bonjour   <p class="MsoNormal" style="MARGIN: 0cm 0 If/Else sur des checkbox [ par marjerem ] Bonjour, J'aide un pote à développer une petite appli et je n'arrive pas à me dépatouiller de ce qui semblera peut être simplissime à certains d'entre Ne permettre la saisie QUE des chiffres (et touches tab, suppr, backspace, ...) [ par buzza01 ] Bonjour, je viens vous voir car je n'arrive pas à faire en sorte que "ma" fonction ne permette la saisie [u]que[/u] de chiffres. Il y a une fonctio Problème de DIV [ par igregbzh ] Bonjour à tous voila j'effectue une petite application en javascript et la j'ai un gros problème. En fait j'arrive a déplacer et redimensionner les di Une fonction liée à un évènement (ex: onBlur, onSubmit) qui ne s'exécute pas... [ par kharshak ] Bonjour à toi, J'ai un petit problème avec mon code. J'ai une page HTML avec un "joli" formulaire, et des actions de vérification à faire sur certain Gestion de touches F5, BACKSPACE et ENTER (javascript et jQuery) [ par elara1970 ] Bonjour, Je souhaiterais gérer certaines touches du clavier en javascript (et jQuery). Le code fonctionne bien sous IE mais pas trop avec FF. Cepend différence entre local et serveur [ par Erick007 ] Bonjour je ne suis pas sure de comprendre et j'aimerais une petite explication, j'ai écrit un petit script de quoi de très simple qui va chercher a l' Correction d'un code [ par apz ] Bonjour à tous, voilà j'ai récupérer un code d'un mouvement de souris sur des liens de news qui produit un changement d'affichage de l'image selon l Upload avec ajax [ par adama36 ] form_php.php ////////////////////////////////////////////////////////////­////////////////////////////////////////////////////////////­///////////////


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
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 : 1,030 sec (4)

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