EXECUTE "SET-THOUS ."
EXECUTE "SET-DEC ,"
EXECUTE "DATE.FORMAT"
OPEN "","CONTRAT" TO F.CONTRAT ELSE STOP
OPEN "","DETAILCALCUL" TO F.DETAILCALCUL ELSE STOP
OPEN "","HISTORCUMUL" TO F.HISTORCUMUL ELSE STOP
OPEN "", "RUBSAISIE" TO F.RUBSAISIE ELSE STOP
OPEN "", "PERIODESPAIE" TO F.PERIODESPAIE ELSE STOP

PRINT "******************************************************************"
PRINT "*      Intgration du chomage partiel aux traitements DADS		*"
PRINT "******************************************************************"

LOOP
PRINT "Code de la rubrique chmage partiel ? (3 chiffres)"
INPUT W_CodeRub
READ ENR_RUBSAISIE FROM F.RUBSAISIE, W_CodeRub ELSE W_CodeRub = ""
WHILE W_CodeRub= ""

REPEAT

READ ENR_PERIODESPAIE  FROM F.PERIODESPAIE, "1" ELSE 
	PRINT "Erreur : lcture priode de paie en cours"
END

W_ReqGENECHOMAGEPARTIEL = ""
EXECUTE 'SELECT DETAILCALCUL AVEC PeriodeDetailCalcul >= "200201" AND AVEC PeriodeDetailCalcul < "':ENR_PERIODESPAIE<1>:'" AND AVEC 17 = "':W_CodeRub:'" OR AVEC PeriodeDetailCalcul = "':ENR_PERIODESPAIE<1>:'" AND AVEC DernPaieClotContrat = "':ENR_PERIODESPAIE<1>:'" AND AVEC 17 = "':W_CodeRub:'" PAR @ID'
EXECUTE 'SAUVE-LISTE W_ReqGENECHOMAGEPARTIEL'
EXECUTE 'LISTE W_ReqGENECHOMAGEPARTIEL' RETURNING MSGCODE

IF MSGCODE<1> # "209" THEN

	SELECT F.DETAILCALCUL TO W_ReqGENECHOMAGEPARTIEL
	
	W_Fin = "F"
	W_ContratEnCours = ""
	LOOP
		READNEXT W_Cle FROM W_ReqGENECHOMAGEPARTIEL ELSE W_Fin = "V"
	WHILE W_Fin = "F"
		IF W_Cle[1,8] # W_ContratEnCours THEN
			IF W_ContratEnCours # "" THEN
				GOSUB 100
			END
			W_CumulChomage = 0
			W_ContratEnCours = W_Cle[1,8]
		END
		READ ENR_DETAILCALCUL FROM F.DETAILCALCUL, W_Cle THEN
			W_COUNT = DCOUNT(ENR_DETAILCALCUL<17>, CHAR(253))
			FOR i = 1 TO W_COUNT
				IF ENR_DETAILCALCUL<17,i> = W_CodeRub THEN
					W_CumulChomage = W_CumulChomage + ENR_DETAILCALCUL<20,i>
				END
			NEXT i 

		END
	REPEAT
	GOSUB 100

END
EXECUTE 'EFFACER-LISTE W_ReqGENECHOMAGEPARTIEL'
STOP

100
****************************************************
* criture dans HISTORCUMUL
READ ENR_CONTRAT FROM F.CONTRAT, W_ContratEnCours THEN
	IF LEN(ENR_CONTRAT<3>) = 5 THEN
	    W_Empl = ENR_CONTRAT<3>
	END ELSE
	    W_Empl = ENR_CONTRAT<2>
	END
	READ ENR_HISTORCUMUL FROM F.HISTORCUMUL, W_ContratEnCours[1,5]:"2002":W_Empl THEN
		IF ENR_HISTORCUMUL<20> = "" THEN ENR_HISTORCUMUL<20> = 0
		ENR_HISTORCUMUL<20> = ENR_HISTORCUMUL<20> + W_CumulChomage
		WRITE ENR_HISTORCUMUL ON F.HISTORCUMUL, W_ContratEnCours[1,5]:"2002":W_Empl
	END
END
RETURN
