begin process at 2012 02 14 00:22:35
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Date & Heure

 > SOLUTION POUR CALCUL DUREE CONGES EN JAVA SCRIPT ET ASP

SOLUTION POUR CALCUL DUREE CONGES EN JAVA SCRIPT ET ASP


 Information sur la source

Note :
1 / 10 - par 1 personne
1,00 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :Date & Heure Niveau :Initié Date de création :08/04/2004 Vu :11 538

Auteur : soufienne

Ecrire un message privé
Commentaire sur cette source (0)
Ajouter un commentaire et/ou une note

 Description

code source pour calcul duree conge avec prise en compte des week-end et des jours ferries ( les jours ferries  sont pris en parametre a partir d'une table acces et une connection asp )

Source

  • jd=document.user.jdebut.value;
  • md=document.user.mdebut.value;
  • ad=document.user.adebut.value;
  • jf=document.user.jfin.value;
  • mf=document.user.mfin.value;
  • af=document.user.afin.value;
  • hd=document.user.temp_debut.value;
  • hf=document.user.temp_fin.value;
  • jd=jd-1;
  • md=md-1;
  • jf=jf-1;
  • mf=mf-1;
  • <% reqferrie="select * from FERRIES"
  • set rsferrie=conn.execute(reqferrie)%>
  • okf=true;
  • date_debut=new Date(ad,md,jd);
  • date_debut_seconde=date_debut.getTime();
  • date_fin=new Date(af,mf,jf);
  • date_fin_seconde=date_fin.getTime();
  • if ((date_fin.getDay()+1==6)||(date_fin.getDay()+1==7)||(date_debut.getDay()+1==6)||(date_fin.getDay()+1==7))
  • {
  • alert("oh c'est le week-end");
  • document.user.total_cong.value="";
  • }
  • else
  • {
  • resu=date_fin_seconde-date_debut_seconde;
  • x=24*3600*1000;
  • resu=resu/x;
  • c=resu/7;
  • nbrsem=(Math.round(c*100))/100;
  • alert(nbrsem);
  • entiere=Math.round(nbrsem)+0.60;
  • if ((nbrsem < entiere)&&(nbrsem != Math.round(nbrsem)+0.00))
  • {
  • reste=(resu%7)/7;
  • reste=(Math.round(reste*100))/100;
  • nbrsem=nbrsem-reste;
  • alert(nbrsem);
  • }
  • nbrsem=Math.round(nbrsem);
  • if (nbrsem > 0)
  • {week=nbrsem*2;
  • totalcong=resu-week;
  • }
  • else
  • {
  • j=5;
  • ok=false;
  • for (i=1;i<6;i++)
  • {
  • if ((date_debut.getDay()+1==i)&&(resu > j))
  • {totalcong=resu-2;
  • ok=true;
  • }j=j-1;
  • }
  • if (ok==false)
  • {
  • totalcong=resu;}
  • }
  • alert(totalcong);
  • total_heure=totalcong*8;
  • <%rsferrie.movefirst
  • while (not rsferrie.eof)%>
  • jferrie=new Date(<%=rsferrie("ANNEE_FERRIE")%>,<%=rsferrie("MOIS_FERRIE")%>-1,<%=rsferrie("JOUR_FERRIE")%>-1);
  • jferrietime=jferrie.getTime();
  • if ((jferrietime==date_fin_seconde)||(jferrietime==date_debut_seconde))
  • {
  • alert("oh jour ferrier");
  • okf=false;
  • }
  • else
  • { if ((jferrietime >= date_debut_seconde)&&(jferrietime<date_fin))
  • {total_heure=total_heure-8;
  • alert("erreur");
  • <%rsferrie.movenext%>
  • }
  • }
  • <%wend%>
  • if (okf==true)
  • {
  • hd=hd-8;
  • hf=hf-8;
  • total_heure=total_heure-hd+hf;
  • document.user.total_cong.value=total_heure;
  • }
  • else
  • document.user.total_cong.value="";
  • }
jd=document.user.jdebut.value;
md=document.user.mdebut.value;
ad=document.user.adebut.value;
jf=document.user.jfin.value;
mf=document.user.mfin.value;
af=document.user.afin.value;
hd=document.user.temp_debut.value;
hf=document.user.temp_fin.value;
jd=jd-1;
md=md-1;
jf=jf-1;
mf=mf-1;

<% reqferrie="select * from FERRIES"
set rsferrie=conn.execute(reqferrie)%>
okf=true;
date_debut=new Date(ad,md,jd);
date_debut_seconde=date_debut.getTime();
date_fin=new Date(af,mf,jf);
date_fin_seconde=date_fin.getTime();
if ((date_fin.getDay()+1==6)||(date_fin.getDay()+1==7)||(date_debut.getDay()+1==6)||(date_fin.getDay()+1==7))
{
alert("oh c'est le week-end");
document.user.total_cong.value="";
}
else
{
resu=date_fin_seconde-date_debut_seconde;
x=24*3600*1000;
resu=resu/x;
c=resu/7;
nbrsem=(Math.round(c*100))/100; 
alert(nbrsem);

entiere=Math.round(nbrsem)+0.60;
if ((nbrsem < entiere)&&(nbrsem != Math.round(nbrsem)+0.00))
{
reste=(resu%7)/7;
reste=(Math.round(reste*100))/100;
nbrsem=nbrsem-reste;
alert(nbrsem);
}
 
nbrsem=Math.round(nbrsem);

if (nbrsem > 0) 
{week=nbrsem*2;
totalcong=resu-week;

}
else
  {
  j=5;
  ok=false;
  for (i=1;i<6;i++)
  {
     if ((date_debut.getDay()+1==i)&&(resu > j))
       {totalcong=resu-2;
        ok=true;
       }j=j-1;
  }

if (ok==false)
    {
	totalcong=resu;}
    }
alert(totalcong);
total_heure=totalcong*8;

<%rsferrie.movefirst
while (not rsferrie.eof)%>
jferrie=new Date(<%=rsferrie("ANNEE_FERRIE")%>,<%=rsferrie("MOIS_FERRIE")%>-1,<%=rsferrie("JOUR_FERRIE")%>-1);
    jferrietime=jferrie.getTime();
  if ((jferrietime==date_fin_seconde)||(jferrietime==date_debut_seconde))
  {
  alert("oh jour ferrier");
  okf=false;
  }
  else
  { if ((jferrietime >= date_debut_seconde)&&(jferrietime<date_fin))
      {total_heure=total_heure-8;
	  alert("erreur");
	  <%rsferrie.movenext%>
	  }
  }
<%wend%>
if (okf==true)
{
hd=hd-8;
hf=hf-8;
total_heure=total_heure-hd+hf;
document.user.total_cong.value=total_heure;
}
else
document.user.total_cong.value="";
}

 Conclusion

ce code sera mis à jour dans une semaine pour pouvoir prendre le resultat de la requete et de le mettre dans un tableau java script


 Sources de la même categorie

Source avec Zip CALENDRIER ANNUEL UNIVERSEL AVEC SAINTS DU CALENDRIER ET FÊT... par 007Julien
OBTENIR LE NOMBRE DE JOURS D'UN MOIS SUIVANT SON ANNÉE par hugolegrand
SAINT DU JOUR par tefa24600
Source avec Zip Source avec une capture NIPCLOCK 1.2 par neep
COMPTE À REBOURS POUR ÉVÉNEMENTS À RÉPÉTITION par CSIBern

Commentaires et avis

Aucun commentaire pour le moment.

 Ajouter un commentaire




Nos sponsors


Sondage...

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

 
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,248 sec (3)

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