EXECUTE "SET-THOUS ."
EXECUTE "SET-DEC ,"
EXECUTE "DATE.FORMAT"
OPEN "", "DETAILCALCUL" TO F.DETAILCALCUL ELSE STOP
OPEN "", "ARCHIVEBULL" TO F.ARCHIVEBULL ELSE STOP
OPEN "", "CONTRAT" TO F.CONTRAT ELSE STOP
OPEN "", "ETABLISSEMENT" TO F.ETABLISSEMENT ELSE STOP
OPEN "", "RUBSAISIE" TO F.RUBSAISIE ELSE STOP
OPEN "", "REEDITEBULLEXO" TO F.REEDITEBULLEXO ELSE
	EXECUTE 'CREER-FICHIER REEDITEBULLEXO 1,1'
	OPEN "", "REEDITEBULLEXO" TO F.REEDITEBULLEXO ELSE
		PRINT "Impossible d'ouvrir fichier temporaire."
		STOP
	END
END
W_Rub = ""
LOOP
PRINT "Rubrique exo activit ?"
INPUT W_Rub
IF W_Rub = "" THEN
	PRINT "Traitement abandonn"
	STOP
END
WHILE W_Rub = ""
REPEAT

W_Per = ""
LOOP
PRINT "Periode dbut ? (AAAAMM)"
INPUT W_Per
IF W_Per = "" THEN
	PRINT "Abandon."
	STOP
END
IF W_Per[5,2] < 01 OR W_Per[5,2] > 12 THEN
	W_Per = ""
END ELSE
	IF LEN(W_Per) #6 THEN
		W_Per = ""
	END ELSE
		IF W_Per < "200401" OR W_Per >= "201012" THEN
			W_Per = ""
		END ELSE
			W_DateDeb = ICONV("01/":W_Per[5,2]:"/":W_Per[1,4],"D4/")
			W_DateFin = ICONV("01/":OCONV(W_DateDeb+32,"D4/")[4,7],"D4/") - 1
		END
	END
END
WHILE W_Per = ""
REPEAT
W_PerDeb = W_Per

W_Per = ""
LOOP
PRINT "Periode fin ? (AAAAMM)"
INPUT W_Per
IF W_Per = "" THEN
	PRINT "Abandon."
	STOP
END
IF W_Per[5,2] < 01 OR W_Per[5,2] > 12 THEN
	W_Per = ""
END ELSE
	IF LEN(W_Per) #6 THEN
		W_Per = ""
	END ELSE
		IF W_Per < "200401" OR W_Per >= "201012" THEN
			W_Per = ""
		END ELSE
			W_DateDeb = ICONV("01/":W_Per[5,2]:"/":W_Per[1,4],"D4/")
			W_DateFin = ICONV("01/":OCONV(W_DateDeb+32,"D4/")[4,7],"D4/") - 1
		END
	END
END
WHILE W_Per = ""
REPEAT
W_PerFin = W_Per

W_TypePers = ""
LOOP
PRINT "Type personnel (P/A) ?"
INPUT W_TypePers
IF W_TypePers = "" THEN
	PRINT "Traitement abandonn"
	STOP
END
IF W_TypePers = "a" THEN W_TypePers = "A"
IF W_TypePers = "p" THEN W_TypePers = "P"
IF W_TypePers #"A" AND W_TypePers # "P" THEN
	W_TypePers = ""
END
WHILE W_TypePers = ""
REPEAT

EXECUTE 'SELECT ETABLISSEMENT'
W_Fin = "F"
W_35H = ""
LOOP
READNEXT W_Cle ELSE W_Fin = "V"
WHILE W_Fin = "F"
READ ENR_ETABLISSEMENT FROM F.ETABLISSEMENT, W_Cle THEN
	W_35H<W_Cle[1,3],W_Cle[4,3]> = INT(ENR_ETABLISSEMENT<16> *52/12 + 1/2)
END	
REPEAT

EXECUTE 'SELECT DETAILCALCUL AVEC PeriodeDetailCalcul >= "':W_PerDeb:'" AND <= "':W_PerFin:'" AND AVEC 8 = "':W_Rub:'" AND AVEC TypePersonnel = "':W_TypePers:'" AND AVEC ConvColContratDetailCalcul # "02"'
W_Fin = "F"
LOOP
READNEXT W_Cle ELSE W_Fin = "V"
WHILE W_Fin = "F"
   READ ENR_CONTRAT FROM F.CONTRAT, W_Cle[1,8] THEN
	READ ENR_ARCHIVEBULL FROM F.ARCHIVEBULL, W_Cle:ENR_CONTRAT<2> THEN
		READ ENR_DETAILCALCUL FROM F.DETAILCALCUL, W_Cle THEN
			i = 0
			W_TrouveTxHor = "F" 
			W_Coef = 0
			LOOP
			i = i + 1
			WHILE ENR_DETAILCALCUL<2,i> # "" AND W_TrouveTxHor = "F" 
			   READ ENR_RUBSAISIE FROM F.RUBSAISIE, ENR_DETAILCALCUL<2,i> THEN
				IF ENR_RUBSAISIE<2> = "3" OR ENR_RUBSAISIE<2> = "5" THEN
				   IF ENR_RUBSAISIE<8> = "2" AND ENR_RUBSAISIE<9> = "1000000" THEN
					
					W_TrouveTxHor = "V" 
					W_Coef = INT((ENR_DETAILCALCUL<4,i>/10000*W_35H<ENR_CONTRAT<2>,ENR_CONTRAT<3>[4,3]>/100)/(5115/1000) + 1/2)
					
				   END
				END
			   END
			REPEAT
			IF W_TrouveTxHor = "V"  THEN
			END ELSE
				W_PARAMS=""
				W_SORTIE=""
		 		W_PARAMS<1>=W_Cle[1,8]
		 		W_PARAMS<2>="0"
		 		W_PARAMS<3>=W_Cle[9,6]
		 		CALL CALCCOEFFTXHOR("",W_PARAMS,W_SORTIE)
				W_Coef = W_SORTIE<1>/1000

					
			END
			i = 0
			W_IndiceLigne = 0
			LOOP
			i = i + 1
			WHILE ENR_ARCHIVEBULL<i> #"" AND W_IndiceLigne = 0
				IF INDEX(ENR_ARCHIVEBULL<i>,"COEFF/NIVEAU  : ",1) # 0 THEN
					W_IndiceLigne = i
				END
			REPEAT
			IF W_IndiceLigne # 0 THEN
				W_Place = INDEX(ENR_ARCHIVEBULL<W_IndiceLigne>,"COEFF/NIVEAU  : ",1)
				IF ENR_ARCHIVEBULL<W_IndiceLigne>[W_Place+16,3] # W_Coef THEN
					ENR_ARCHIVEBULL<W_IndiceLigne> = ENR_ARCHIVEBULL<W_IndiceLigne>[1,W_Place+15]:W_Coef:ENR_ARCHIVEBULL<W_IndiceLigne>[W_Place+19,LEN(ENR_ARCHIVEBULL<W_IndiceLigne>)-W_Place+19+1]
					WRITE ENR_ARCHIVEBULL ON F.ARCHIVEBULL, W_Cle:ENR_CONTRAT<2>
					ENRTEMP = ""
					WRITE ENRTEMP ON F.REEDITEBULLEXO, W_Cle:ENR_CONTRAT<2>
				END
			END
		END
	END
   END 
REPEAT
STOP








