par Zidi » Ven Juin 15, 2007 5:22 pm
Essayer ce code
PROCEDURE ConvertionMiladiHejri(DateMiladi est une Date)
SI DateMiladi ="" ALORS DateMiladi = DateSys()
y est un entier = DateMiladi..Année
m est un entier = DateMiladi..Mois
d est un entier = DateMiladi..Jour
jd est un entier
SI ((y > 1582) _OU_ (y = 1582 ET m > 10) _OU_ (y = 1582 ET m = 10 ET d > 14)) ALORS
jd=PartieEntière((1461*(y+4800+PartieEntière((m-14)/12)))/4)+PartieEntière((367*(m-2-12*(PartieEntière((m-14)/12))))/12)- PartieEntière((3*(PartieEntière((y+4900+PartieEntière((m-14)/12))/100)))/4)+d-32075
SINON
jd = 367*y-PartieEntière((7*(y+5001+PartieEntière((m-9)/7)))/4)+PartieEntière((275*m)/9)+d+1729777
FIN
l est un entier=jd-1948440+10632
n est un entier=PartieEntière((l-1)/10631)
l=l-10631*n+354
j est un entier=(PartieEntière((10985-l)/5316))*(PartieEntière((50*l)/17719))+(PartieEntière(l/5670))*(PartieEntière((43*l)/15238))
l=l-(PartieEntière((30-j)/15))*(PartieEntière((17719*j)/50))-(PartieEntière(j/16))*(PartieEntière((15238*j)/43))+29
m=PartieEntière((24*l)/709)
d=l-PartieEntière((709*m)/24)
y=30*n+j-30
HMonths_L est une chaîne
SELON m
CAS 1 : HMonths_L = "Muharram"
CAS 2 : HMonths_L = "Safar"
CAS 3 : HMonths_L = "Rabi al-awwal"
CAS 4 : HMonths_L = "Rabi al-thani"
CAS 5 : HMonths_L = "Jumada al-oula"
CAS 6 : HMonths_L = "Jumada al-akhira"
CAS 7 : HMonths_L = "Rajab"
CAS 8 : HMonths_L = "Shaaban"
CAS 9 : HMonths_L = "Ramadan"
CAS 10 : HMonths_L = "Shawwal"
CAS 11 : HMonths_L = "Dhu al-Qidah"
CAS 12 : HMonths_L = "Dhu al-Hijjah"
FIN
DateHejri est une chaîne = d+" "+ HMonths_L +" " + y
DateHejri2 est une chaîne = d +" / "+ m +" / " + y
Info(DateHejri,DateHejri2)//vous pouvez utiliser un renvoyer DateHejri ou DateHejri2