*************************************************************************
*	   Gnration de DETAILPRESTINV a partir du planning 		*
* (= articles du fichier TPSDETAILSINTERV)				*
* MICHAEL, dcembre 2003						*
* Nb :  on prends par dfaut les rubriques de saisie			* 
* 018 et 019 si elles correspondent au cas gnral, n'importe 		*
* quelle rubrique de type MOD ou MOD Dim JF sinon.			*
* (cas o les interventions ont t saisies sans rubrique de		*
* saisie).								*
* Par contre, les heures d'interventions avec rubriques sont 		*
* considres comme dimanche ou JF selon la rubrique saisie et non	*
* selon le jour d'intervention (dimanche, jour fri).			*
*************************************************************************
EXECUTE "SET-THOUS ."
EXECUTE "SET-DEC ,"
EXECUTE "DATE.FORMAT"
OPEN "", "BESOINSAIDE" TO F.BESOINSAIDE ELSE STOP
OPEN "", "DETAILPRESTINV" TO F.DETAILPRESTINV ELSE STOP
OPEN "", "RUBSAISIE" TO F.RUBSAISIE ELSE STOP
OPEN "", "PAQUES" TO F.PAQUES ELSE STOP
OPEN "", "TPSTEMPO" TO F.TPSTEMPO ELSE STOP

EXECUTE 'VIDER-FICHIER DETAILPRESTINV'

PROCREAD PARAMAPPEL ELSE STOP
User = FIELD(PARAMAPPEL,"|",2)
Periode = FIELD(PARAMAPPEL,"|",3)
Asso = FIELD(PARAMAPPEL,"|",4)
CodeAide = FIELD(PARAMAPPEL,"|",5)
DateDeb = ICONV("01/":Periode[5,2]:"/":Periode[1,4],"D4/")
DateFin = ICONV("01":OCONV(DateDeb+32,"D4/")[3,8],"D4/")-1

W_LanceCalculPreaPrest = PARAMAPPEL[INDEX(PARAMAPPEL,"|",5)+1,LEN(PARAMAPPEL) - INDEX(PARAMAPPEL,"|",5)]
IF CodeAide # "" THEN
	W_LanceCalculPreaPrest=W_LanceCalculPreaPrest:" ":CodeAide
END
GOSUB 1000

W_CleRetour = User:TIME()
PARAMETRES = "AFFICHEPLANNING |":W_CleRetour:"|":Asso:"|P|":DateDeb:"|":DateFin:"|":"|":"|":"|ESA":"|":CodeAide
EXECUTE PARAMETRES
READ W_Sortie FROM F.TPSTEMPO, "AFFICHEPLANNING":W_CleRetour ELSE
	W_Sortie=""
	W_Sortie<1> = "#FIN"
END
DELETE F.TPSTEMPO, "AFFICHEPLANNING":W_CleRetour

NbLignes = DCOUNT(W_Sortie, CHAR(254))
W_TamponAide = ""
FOR i = 1 TO NbLignes
	IF W_Sortie<i>[1,1] = "#" THEN
		IF W_TamponAide # "" THEN
		   IF ENR_DETAILPRESTINV # "" THEN
			k = 0
			LOOP
			k = k + 1
			WHILE ENR_DETAILPRESTINV<1,k> # "" 
				IF INDEX(ENR_DETAILPRESTINV<9,k>,"1",1) # 0 THEN
					ENR_DETAILPRESTINV=INSERT(ENR_DETAILPRESTINV,1,1;ENR_DETAILPRESTINV<1,k>)
					ENR_DETAILPRESTINV=INSERT(ENR_DETAILPRESTINV,5,1;ENR_DETAILPRESTINV<5,k>)
					ENR_DETAILPRESTINV=INSERT(ENR_DETAILPRESTINV,6,1;ENR_DETAILPRESTINV<6,k>)
					ENR_DETAILPRESTINV=INSERT(ENR_DETAILPRESTINV,7,1;ENR_DETAILPRESTINV<7,k>)
					ENR_DETAILPRESTINV=INSERT(ENR_DETAILPRESTINV,8,1;ENR_DETAILPRESTINV<8,k>)
					ENR_DETAILPRESTINV=INSERT(ENR_DETAILPRESTINV,9,1;ENR_DETAILPRESTINV<9,k>)
					DEL ENR_DETAILPRESTINV<1,k+1>
					DEL ENR_DETAILPRESTINV<5,k+1>
					DEL ENR_DETAILPRESTINV<6,k+1>
					DEL ENR_DETAILPRESTINV<7,k+1>
					DEL ENR_DETAILPRESTINV<8,k+1>
					DEL ENR_DETAILPRESTINV<9,k+1>
				END
			REPEAT
			WRITE ENR_DETAILPRESTINV ON F.DETAILPRESTINV, W_TamponAide:Asso:Periode
		   END
		END
		ENR_DETAILPRESTINV = ""
		W_TamponAide = W_Sortie<i>[8,5]
		W_Jour = "00"
	END ELSE
		W_Jour = W_Jour + 1
		W_Jour = W_Jour"R%2"
	END
	k = 0 
	LOOP
		k = k + 1
	WHILE W_Sortie<i,1,k> # ""
		IF W_Sortie<i,1,k> = "IntervP" THEN
			W_CodeAidant = W_Sortie<i,4,k>[1,5]
			W_NbHeure = W_Sortie<i,5,k>
			W_RubSaisie	= W_Sortie<i,6,k>
			IF W_RubSaisie = "" THEN
				W_JourFerieProsp = W_Jour + DateDeb - 1
				GOSUB 2000
				IF W_JourFerieProsp = "F" THEN
					W_RubSaisie = W_RubMODParDefaut
					W_TypeHeures = "2"
				END ELSE
					W_RubSaisie = W_RubMODDimJFParDefaut
					W_TypeHeures = "1"
				END
			END ELSE
				READ ENR_RUBSAISIE FROM F.RUBSAISIE, W_RubSaisie THEN
				   IF ENR_RUBSAISIE<2> = "4" THEN
				      W_TypeHeures = "1"
				   END ELSE
				      W_TypeHeures = "2"
				   END
				END
			END
			W_Activite = W_Sortie<i,7,k>
			IF INT(W_NbHeure) # 0 AND INDEX(W_LanceCalculPreaPrest,W_Activite,1) # 0 THEN
				GOSUB 100
			END
		END
	REPEAT
NEXT i

GOSUB 3000

EXECUTE W_LanceCalculPreaPrest

IF CodeAide # "" THEN
OPEN "", "ASSOCIATION" TO F.ASSOCIATION THEN
OPEN "", "TEMPCALCULPREAPREST" TO F.TEMPCALCULPREAPREST THEN
 OPEN "", "CIVILAIDE" TO F.CIVILAIDE THEN
  OPEN "","CIVILAIDANT" TO F.CIVILAIDANT THEN 
   READ ENR_TEMPCALCULPREAPREST FROM F.TEMPCALCULPREAPREST, Asso THEN
    READ ENR_ASSOCIATION FROM F.ASSOCIATION, Asso ELSE ENR_ASSOCIATION = ""
     READ ENR_DETAILPRESTINV FROM F.DETAILPRESTINV, CodeAide:Asso:Periode ELSE ENR_DETAILPRESTINV = ""
	ENR_TEMP = ""
	
	READ ENR_CIVILAIDE FROM F.CIVILAIDE, CodeAide ELSE ENR_CIVILAIDE = ""
	GOSUB 2500
	ENR_TEMP<1> = "Aid : ":CodeAide:" ":(ENR_CIVILAIDE<2>:" ":ENR_CIVILAIDE<3>)[1,40]:SPACE(41-LEN((ENR_CIVILAIDE<2>:" ":ENR_CIVILAIDE<3>)[1,40])):"Periode : ":PeriodeClair
	ENR_TEMP<2> = ""
	ENR_TEMP<3> = "Association : ":Asso:" - ":ENR_ASSOCIATION<1>
	ENR_TEMP<-1> = " "
	k = 0
	LOOP
	k = k + 1
	WHILE ENR_DETAILPRESTINV<1,k> # ""
	   READ ENR_CIVILAIDANT FROM F.CIVILAIDANT, ENR_DETAILPRESTINV<1,k>[1,5] THEN
		IF ENR_DETAILPRESTINV<3,k> # "" THEN
		* Saisie globale
		END ELSE
		* Saisie Dtaille
			W_TabSaisieDetail = ""
                  m = 1
                  LOOP WHILE ENR_DETAILPRESTINV<5, k, m> # ""
                      iDetail = 1
                      LOOP WHILE W_TabSaisieDetail<iDetail, 1> # "" AND W_TabSaisieDetail<iDetail, 1> # ENR_DETAILPRESTINV<6, k, m>
                          iDetail = iDetail + 1
                      REPEAT
                      IF W_TabSaisieDetail<iDetail, 1> = "" THEN
                          W_TabSaisieDetail<iDetail> = ENR_DETAILPRESTINV<6, k, m>
                          W_TabSaisieDetail<iDetail, 2> = ENR_DETAILPRESTINV<7, k, m>
                      END ELSE
                          W_TabSaisieDetail<iDetail, 2> = W_TabSaisieDetail<iDetail, 2> + ENR_DETAILPRESTINV<7, k, m>
                      END
                      m = m + 1
                  REPEAT
                  iDetail = 1
                  LOOP WHILE W_TabSaisieDetail<iDetail, 1> # ""
                      READ ENR_RUBSAISIE FROM F.RUBSAISIE,W_TabSaisieDetail<iDetail, 1> THEN
                         W_CodeLibRubSaisie = " " : W_TabSaisieDetail<iDetail, 1> : " " : ENR_RUBSAISIE<1>[1,36]
                         W_CodeLibRubSaisie = W_CodeLibRubSaisie : SPACE(41 - LEN(W_CodeLibRubSaisie))
                         W_HeuresSaisiesStr = OCONV(W_TabSaisieDetail<iDetail, 2> ,"MR2")
                         ENR_TEMP<-1> = "     Aidant : ":ENR_DETAILPRESTINV<1,k>[1,5]:" ":ENR_CIVILAIDANT<2>:" ":ENR_CIVILAIDANT<3>:SPACE(31 - LEN(ENR_CIVILAIDANT<2>:" ":ENR_CIVILAIDANT<3>)):W_CodeLibRubSaisie:SPACE(8 - LEN(W_HeuresSaisiesStr)):W_HeuresSaisiesStr:" Heures"
					  END
                      iDetail = iDetail + 1
                  REPEAT
				
		END
	   END
	   
	REPEAT
	ENR_TEMP<-1> = " "
	IF ENR_TEMPCALCULPREAPREST<6,1> # "" THEN
	i = 0
	LOOP
	i = i + 1
	WHILE ENR_TEMPCALCULPREAPREST<6,i> # ""
		W_Heures = ENR_TEMPCALCULPREAPREST<5, i, 1>/100"R2"
            IF ENR_TEMPCALCULPREAPREST<8, i, 1> = "1" THEN
               W_TypeHeure = " heure(s) dimanche"
            END ELSE
               W_TypeHeure = " heure(s) semaine"
            END     
            W_StrTemp =  SPACE(6 - LEN(W_Heures)):W_Heures:W_TypeHeure
		BEGIN CASE
       	   CASE ENR_TEMPCALCULPREAPREST<7, i, 1> = "1"
           		W_StrTemp = W_StrTemp : " en dpassement d'accord"
       	   CASE ENR_TEMPCALCULPREAPREST<7, i, 1> = "2"
           			W_StrTemp = W_StrTemp : " lies  une demande d'accord"
       	   CASE ENR_TEMPCALCULPREAPREST<7, i, 1> = "3"
           			W_StrTemp = W_StrTemp : " en dpassement de demande d'accord"
       	   CASE ENR_TEMPCALCULPREAPREST<7, i, 1> = "4"
           			W_StrTemp = W_StrTemp : " sans accord ni demande"
   		END CASE
		ENR_TEMP<-1> = W_StrTemp
		
		k = 0
		LOOP
	   		k = k + 1
		WHILE FIELD(ENR_TEMPCALCULPREAPREST<9,i>,"|",k) # ""
			IF k = 1 THEN
				ENR_TEMP<-1> = " "
           		ENR_TEMP<-1> =  "Accord(s)                                Date debut Date fin    Nb Heures Droits       Type Heure Rang"
			END
         	ENR_TEMP<-1> = FIELD(ENR_TEMPCALCULPREAPREST<9,i>,"|",k)
      	REPEAT
	REPEAT
	END ELSE
		ENR_TEMP<-1> = "Aucune anomalie dtecte."
	END
	WRITE ENR_TEMPCALCULPREAPREST ON F.TEMPCALCULPREAPREST, "Sauve"
	WRITE ENR_TEMP ON F.TEMPCALCULPREAPREST, Asso
	
   END
  END
 END
END
END
END

STOP

100 *********************************************************
* 		     Insertion DETAILPRESTINV				*
*************************************************************
IF ENR_DETAILPRESTINV<1> = "" THEN
	ENR_DETAILPRESTINV<1> = W_CodeAidant
	ENR_DETAILPRESTINV<5,1> = W_Jour
	ENR_DETAILPRESTINV<6,1> = W_RubSaisie
	ENR_DETAILPRESTINV<7,1> = W_NbHeure
	ENR_DETAILPRESTINV<8,1> = W_Activite
	ENR_DETAILPRESTINV<9,1> = W_TypeHeures
END ELSE
	t = 0
	W_Trouve = "F"
	LOOP
	   IF W_Trouve ="F" THEN
		t = t + 1
	   END
	WHILE ENR_DETAILPRESTINV<1,t> # "" AND W_Trouve = "F"
		IF ENR_DETAILPRESTINV<1,t> = W_CodeAidant THEN
			W_Trouve = "V"
		END
	REPEAT
	ENR_DETAILPRESTINV<1,t> = W_CodeAidant
	IF ENR_DETAILPRESTINV<5,t> # "" THEN
	   j = 0
	   W_Trouve = "F"
	   LOOP
		IF W_Trouve = "F" THEN
		   j = j + 1
		END
	   WHILE ENR_DETAILPRESTINV<5,t,j> <= W_Jour AND W_Trouve = "F" AND ENR_DETAILPRESTINV<5,t,j> # ""
		IF ENR_DETAILPRESTINV<5,t,j> = W_Jour AND ENR_DETAILPRESTINV<6,t,j> = W_RubSaisie THEN
			W_Trouve = "V"
		END
	   REPEAT
	   IF ENR_DETAILPRESTINV<5,t,j> = "" THEN
		W_Trouve = "F"
	   END
	END ELSE
	   j = 1
	   W_Trouve = "F"
	END
	IF W_Trouve = "F" THEN
	  IF ENR_DETAILPRESTINV<5,t,j-1> = W_Jour AND ENR_DETAILPRESTINV<8,t,j-1> = "2" AND W_TypeHeures = "1" THEN
		LOOP
			j = j - 1
		WHILE ENR_DETAILPRESTINV<5,t,j> = W_Jour AND ENR_DETAILPRESTINV<8,t,j> = "2"
		REPEAT
		j = j + 1
		ENR_DETAILPRESTINV=INSERT(ENR_DETAILPRESTINV,5,t,j;W_Jour)
		ENR_DETAILPRESTINV=INSERT(ENR_DETAILPRESTINV,6,t,j;W_RubSaisie)
		ENR_DETAILPRESTINV=INSERT(ENR_DETAILPRESTINV,7,t,j;W_NbHeure)
		ENR_DETAILPRESTINV=INSERT(ENR_DETAILPRESTINV,8,t,j;W_Activite)
		ENR_DETAILPRESTINV=INSERT(ENR_DETAILPRESTINV,9,t,j;W_TypeHeures)
	  END ELSE
		ENR_DETAILPRESTINV<5,t,j> = W_Jour
		ENR_DETAILPRESTINV<6,t,j> = W_RubSaisie
		ENR_DETAILPRESTINV<7,t,j> = W_NbHeure
		ENR_DETAILPRESTINV<8,t,j> = W_Activite
		ENR_DETAILPRESTINV<9,t,j> = W_TypeHeures
	  END
	END ELSE
		ENR_DETAILPRESTINV<5,t,j> = W_Jour
		ENR_DETAILPRESTINV<6,t,j> = W_RubSaisie
		ENR_DETAILPRESTINV<7,t,j> = ENR_DETAILPRESTINV<7,t,j>+W_NbHeure
		ENR_DETAILPRESTINV<8,t,j> = W_Activite
		ENR_DETAILPRESTINV<9,t,j> = W_TypeHeures
	END
END
RETURN

1000 ********************************************************
*		Initialisation des rubriques par dfaut		*
*  		   + Initialisation de ENR_PAQUES			*
*************************************************************
READ ENR_RUBSAISIE FROM F.RUBSAISIE, "019" THEN
   IF ENR_RUBSAISIE<2> # "3" THEN
	W_RubMODParDefaut = ""
   END ELSE
	W_RubMODParDefaut = "019"
   END
END ELSE
   W_RubMODParDefaut = ""
END
IF W_RubMODParDefaut = "" THEN
   EXECUTE 'SELECT RUBSAISIE AVEC 2 = "3" PAR 0'
   READNEXT W_Cle ELSE 
      ENR_TPSDETAILSINTERV= ""
      ENR_TPSDETAILSINTERV<1> = "Pas de rubrique en MOD, avec base = 100% du taux horaire."
      WRITE ENR_DETAILPRESTINV ON F.DETAILPRESTINV, "Erreur"
      STOP
   END
   W_RubMODParDefaut = W_Cle
   W_Fin = "F"
   LOOP
	READNEXT W_Cle ELSE W_Fin = "V"
   WHILE W_Fin = "F"
   REPEAT
END
READ ENR_RUBSAISIE FROM F.RUBSAISIE, "018" THEN
   IF ENR_RUBSAISIE<2> # "4" THEN
		W_RubMODDimJFParDefaut = ""
   END ELSE
		W_RubMODDimJFParDefaut = "018"
   END
END ELSE
   W_RubMODDimJFParDefaut = ""
END
IF W_RubMODDimJFParDefaut = "" THEN
	EXECUTE 'SELECT RUBSAISIE AVEC 2 = "4" PAR 0'
	READNEXT W_Cle ELSE
	   ENR_TPSDETAILSINTERV= ""
	   ENR_TPSDETAILSINTERV<1> = "Pas de rubrique en MOD Dim JF, avec base = 125% du taux horaire."
	   WRITE ENR_DETAILPRESTINV ON F.DETAILPRESTINV, "Erreur"
	   STOP
	END
	W_RubMODDimJFParDefaut = W_Cle
	W_Fin = "F"
	LOOP
		READNEXT W_Cle ELSE W_Fin = "V"
	WHILE W_Fin = "F"
	REPEAT
END

*READ ENR_PAQUES FROM F.PAQUES, Periode[1,4] THEN
*   ENR_PAQUES<2> = ICONV(ENR_PAQUES<1>[1,2]:"/":ENR_PAQUES<1>[3,2]:"/":Periode[1,4],"D4/")
*END ELSE
*   ENR_PAQUES = ""
*   ENR_PAQUES<2> = 0
*END

RETURN

2000 ********************************************************
*  On dtermine si W_JourFerieProsp (date interne) est 	*
* un jour fri...							*
*************************************************************
* ATTENTION : ne pas utiliser variables i, k, j, t,...

W_JourClairFerieProsp = OCONV(W_JourFerieProsp,"D4/")

IF OCONV(W_JourFerieProsp,"DWA") = "Sunday" OR OCONV(W_JourFerieProsp,"DWA") = "Dimanche" THEN
   *	W_JourFerieProsp = "F"
END ELSE

  	W_Param=W_JourClairFerieProsp:"|":Asso
  	CALL DIMJF(RETURNVAL,W_Param,Ferie)
	
  	IF Ferie[1,5] # "FERIE" THEN
		W_JourFerieProsp = "F"
  	END
END

*IF OCONV(W_JourFerieProsp,"DWA") = "Sunday" OR OCONV(W_JourFerieProsp,"DWA") = "Dimanche" THEN
*   W_JourFerieProsp = "F"
*END ELSE
*   W_JourClairFerieProsp = OCONV(W_JourFerieProsp,"D4/")
*   BEGIN CASE
*	CASE W_JourClairFerieProsp[1,5] = "01/01"
*	CASE W_JourClairFerieProsp[1,5] = "01/05"
*	CASE W_JourClairFerieProsp[1,5] = "08/05"
*	CASE W_JourClairFerieProsp[1,5] = "14/07"
*	CASE W_JourClairFerieProsp[1,5] = "15/08"
*	CASE W_JourClairFerieProsp[1,5] = "01/11"
*	CASE W_JourClairFerieProsp[1,5] = "11/11"
*	CASE W_JourClairFerieProsp[1,5] = "25/12"
*	CASE W_JourFerieProsp = ENR_PAQUES<2> + 1
*	CASE W_JourFerieProsp = ENR_PAQUES<2> + 39
*	CASE W_JourFerieProsp = ENR_PAQUES<2> + 39 + 11
*	On ne considre plus le lundi de pentecote comme un jour fri 
*	Sera probablement  revoir (paramtre ?)
*		W_JourFerieProsp = "F"
*	CASE 1
*		W_JourFerieProsp = "F"
*   END CASE
*END

RETURN

2500 ************************************************************
*		Indication de la priode en clair						*
*****************************************************************

BEGIN CASE
	CASE Periode[5,2] = "01"
		PeriodeClair = "Janvier ":Periode[1,4]
	CASE Periode[5,2] = "02"
		PeriodeClair = "Fvrier ":Periode[1,4]
	CASE Periode[5,2] = "03"
		PeriodeClair = "Mars ":Periode[1,4]
	CASE Periode[5,2] = "04"
		PeriodeClair = "Avril ":Periode[1,4]
	CASE Periode[5,2] = "05"
		PeriodeClair = "Mai ":Periode[1,4]
	CASE Periode[5,2] = "06"
		PeriodeClair = "Juin ":Periode[1,4]
	CASE Periode[5,2] = "07"
		PeriodeClair = "Juillet ":Periode[1,4]
	CASE Periode[5,2] = "08"
		PeriodeClair = "Aout ":Periode[1,4]
	CASE Periode[5,2] = "09"
		PeriodeClair = "Septembre ":Periode[1,4]
	CASE Periode[5,2] = "10"
		PeriodeClair = "Octobre ":Periode[1,4]
	CASE Periode[5,2] = "11"
		PeriodeClair = "Novembre ":Periode[1,4]
	CASE Periode[5,2] = "12"
		PeriodeClair = "Dcembre ":Periode[1,4]
END CASE

RETURN

*****************************************************************************
* RECHERCHE LE NBRE D'HEURES PREVUES EN CAS D'ABSENCE AIDE
3000

	W_CleRetour = User:TIME()
	IF CodeAide="" THEN
		PARAMETRES = "AFFICHEPLANNING |":W_CleRetour:"|":Asso:"|P|":DateDeb:"|":DateFin:"|":"|":"|":"|EXTRACTA":"|":CodeAide
	END ELSE
		PARAMETRES = "AFFICHEPLANNING |":W_CleRetour:"|":Asso:"|P|":DateDeb:"|":DateFin:"|":"|":"|":"|AA":"|":CodeAide	
	END
	EXECUTE PARAMETRES
	READ W_Sortie2 FROM F.TPSTEMPO, "AFFICHEPLANNING":W_CleRetour ELSE
		W_Sortie2=""
		W_Sortie2<1> = "#FIN"
	END
	DELETE F.TPSTEMPO, "AFFICHEPLANNING":W_CleRetour
	
NbLignes = DCOUNT(W_Sortie2,CHAR(254))

W_TamponAide = ""

FOR i = 1 TO NbLignes
	IF W_Sortie2<i>[1,1] = "#" THEN
		IF CodeAide = "" THEN
			W_TamponAide = W_Sortie2<i>[8,5]
		END
		READ ENR_DETAILPRESTINV FROM F.DETAILPRESTINV, W_TamponAide:Asso:Periode ELSE ENR_DETAILPRESTINV=""
		ENR_DETAILPRESTINV<10>=0
		ENR_DETAILPRESTINV<11>=0
		W_Jour = "00"
	END ELSE
		IF i = 1 THEN
			W_TamponAide = CodeAide
			READ ENR_DETAILPRESTINV FROM F.DETAILPRESTINV, W_TamponAide:Asso:Periode ELSE ENR_DETAILPRESTINV=""
			ENR_DETAILPRESTINV<10>=0
			ENR_DETAILPRESTINV<11>=0
			W_Jour = "00"
		END 
			W_Jour = W_Jour + 1
			W_Jour = W_Jour"R%2"
			IF W_Sortie2<i,1,1> = "AbsAide" THEN
				k = 0
				LOOP
					k = k + 1
				WHILE W_Sortie2<i,1,k> # ""
					IF W_Sortie2<i,1,k> = "IntervP" THEN
						W_NbHeure = W_Sortie2<i,5,k>
						W_RubSaisie	= W_Sortie2<i,6,k>
						IF W_RubSaisie = "" THEN
							W_JourFerieProsp = W_Jour + DateDeb - 1
							GOSUB 2000
							IF W_JourFerieProsp = "F" THEN
								W_RubSaisie = W_RubMODParDefaut
								W_TypeHeures = "2"
							END ELSE
								READ ENR_BESOINSAIDE FROM F.BESOINSAIDE,W_TamponAide ELSE ENR_BESOINSAIDE=""
								IF ENR_BESOINSAIDE<7>="O" THEN
									W_RubSaisie = W_RubMODDimJFParDefaut
									W_TypeHeures = "1"
								END ELSE
									W_NbHeure=0
								END
							END
						END ELSE
							READ ENR_RUBSAISIE FROM F.RUBSAISIE, W_RubSaisie THEN
							   IF ENR_RUBSAISIE<2> = "4" THEN
							      W_TypeHeures = "1"
							   END ELSE
							      W_TypeHeures = "2"
							   END
							END
						END
						W_Activite = W_Sortie2<i,7,k>
						IF INT(W_NbHeure) # 0 AND INDEX(W_LanceCalculPreaPrest,W_Activite,1) # 0 THEN
							IF W_TypeHeures = "2" THEN
								ENR_DETAILPRESTINV<10>=ENR_DETAILPRESTINV<10>+W_NbHeure
							END ELSE
								ENR_DETAILPRESTINV<11>=ENR_DETAILPRESTINV<11>+W_NbHeure
							END
							WRITE ENR_DETAILPRESTINV ON F.DETAILPRESTINV,W_TamponAide:Asso:Periode
						END
					END
				REPEAT
			END
	END
NEXT i

RETURN