> Tech > Figure 2A

Figure 2A

Tech - Par iTPro - Publié le 24 juin 2010
email

Extraire la valeur week-of-year ISO avec RPG seulement

* ===================================================================
* = Description... Retrieve ISO week-of-year
* ===================================================================
D RtvDayOfWeek 	PR 		5I 0
D 						D Value
D RtvISOWeek 	PR 		5I 0
D 						D Value
D SomeDate 		S 			D Inz( D'2001-10-23' )
D ISOWeek 		S 		5I 0
C 				Eval ISOWeek = RtvISOWeek(

Figure 2A

SomeDate )
C Eval *InLR = *On
P RtvDayOfWeek B Export
D RtvDayOfWeek PI 5I 0
D DateIn D Value
D BaseMonday S D Inz( D’2001-05-21′ )
D Days S 10I 0
C DateIn SubDur BaseMonday Days : *D
C Return ( %Rem( %Rem( Days : 7 ) + 7 : 7 ) )
P RtvDayOfWeek E
P RtvISOWeek B Export
D RtvISOWeek PI 5I 0
D DateIn D Value
D DS
D Jan4Date D Inz( D’0001-01-04′ )
D Jan4Year 4S 0 Overlay( Jan4Date )
D MondayDate S D
D Jan4Day S 5I 0
D Days S 10I 0
D SundayDate S D
D ISOWeek S 5I 0
C Eval Days = 6 – RtvDayOfWeek( DateIn )
C DateIn AddDur Days:*D SundayDate
C Extrct SundayDate:*Y Jan4Year
C Eval Jan4Day = RtvDayOfWeek( Jan4Date )
C Jan4Date SubDur Jan4Day:*D MondayDate
C SundayDate SubDur MondayDate Days:*D
C If Days < 0 C Eval Jan4Year = Jan4Year - 1 C Eval Jan4Day = RtvDayOfWeek( Jan4Date ) C Jan4Date SubDur Jan4Day:*D MondayDate C SundayDate SubDur MondayDate Days:*D C EndIf C Eval ISOWeek = Days/7 C If ISOWeek >= *Zero
C Eval ISOWeek = ISOWeek + 1
C Else
C Eval ISOWeek = 53
C EndIf
C Return ISOWeek
P RtvISOWeek E

Téléchargez gratuitement cette ressource

IBMi et Cloud : Table ronde Digitale

IBMi et Cloud : Table ronde Digitale

Comment faire évoluer son patrimoine IBMi en le rendant Cloud compatible ? Comment capitaliser sur des bases saines pour un avenir serein ? Faites le point et partagez l'expertise Hardis Group et IBM aux côtés de Florence Devambez, DSI d'Albingia.

Tech - Par iTPro - Publié le 24 juin 2010