W_FichierNonCree = "Faux"
EXECUTE "SET-THOUS ."
EXECUTE "SET-DEC ,"
EXECUTE "DATE.FORMAT"
OPEN "", "PROVISIONDNT" TO F.PROVISIONDNT ELSE W_FichierNonCree = "Vrai" 
OPEN "", "DETAILCHGPARTEMP" TO F.DETAILCHGPARTEMP ELSE STOP
OPEN "", "CIVILAIDE" TO F.CIVILAIDE ELSE STOP
OPEN "", "TEMPO" TO F.RESULTAT ELSE STOP

PROCREAD PARAMETRES ELSE STOP

W_Rang = INDEX(PARAMETRES," ",1)
W_SELECTION = PARAMETRES[W_Rang+1,4]
W_Rang = INDEX(PARAMETRES," ",2)
W_CODESELECTION = PARAMETRES[W_Rang+1,3]

IF W_SELECTION = "RESP" OR W_SELECTION = "SECT" THEN
	
	IF W_SELECTION = "RESP" THEN
		IF W_CODESELECTION # "XXX" THEN
			W_CRITERE = "AND AVEC ResponsableAide = ":CHAR(34):W_CODESELECTION:CHAR(34):" " 
			W_TRI = ""
		END ELSE
			W_CRITERE = ""
			W_TRI = "PAR ResponsableAide "
		END
	END ELSE
		IF W_CODESELECTION # "XXX" THEN
			W_CRITERE = "AND AVEC CodeSecteur = ":CHAR(34):W_CODESELECTION:CHAR(34):" " 
			W_TRI = ""
		END ELSE
			W_CRITERE = ""
			W_TRI = "PAR CodeSecteur "
		END
	END
END ELSE 
	IF W_SELECTION = "COMM" THEN
		W_CODESELECTION = PARAMETRES[W_Rang+1,INDEX(PARAMETRES,"|",1)-W_Rang-1]
		IF W_CODESELECTION # "XXXXX" THEN
			W_CRITERE = "AND AVEC CommuneAide = ":CHAR(34):W_CODESELECTION:CHAR(34):" " 
			W_TRI = ""
		END ELSE
			W_CRITERE = ""
			W_TRI = "PAR CommuneAide "
		END
	END ELSE
		W_CODESELECTION = ""
		W_CRITERE = ""
		W_TRI = ""
	END
END

W_Rang = INDEX(PARAMETRES,"|",1)
W_PERIODE = PARAMETRES[W_Rang+1,6] 


W_REQUETE = "SELECT DETAILCHGPARTEMP AVEC @ID = ":CHAR(34):"[":W_PERIODE:CHAR(34):" "
W_REQUETE = W_REQUETE:W_CRITERE
W_REQUETE = W_REQUETE:W_TRI:"PAR NomAideDetailChgPartemp PAR PrenomAideDetailChgPartemp"

EXECUTE W_REQUETE


	
	W_FinListe = "Faux"	
	ENR_RESULTAT = ""	
	W_IndResultat = 1
	W_TamponRupture = ""
	W_PremiereLigne="Vrai"
	W_TotalChargesGroupe = 0
	W_TotalProvisionGroupe = 0
	W_TotalEcartGroupe = 0
	W_TotalChargesGene = 0
	W_TotalProvisionGene = 0
	W_TotalEcartGene = 0

	LOOP

		READNEXT W_Cle ELSE W_FinListe = "Vrai"

	WHILE W_FinListe # "Vrai"

		READ ENR_DETAIL FROM F.DETAILCHGPARTEMP, W_Cle ELSE ENR_DETAIL = ""
		W_CumulCharges = 0
		
		FOR I=6 TO 13
			W_CumulCharges= W_CumulCharges + ENR_DETAIL<I>
		NEXT I
		
		READ ENR_PROVISION FROM F.PROVISIONDNT, W_Cle ELSE ENR_PROVISION = ""
		W_CumulProvision = 0
		
		FOR I=1 TO 3
			W_CumulProvision = W_CumulProvision + ENR_PROVISION<I>
		NEXT I
		W_CumulProvision = W_CumulProvision/100

		READ ENR_AIDE FROM F.CIVILAIDE, W_Cle[1,5] ELSE ENR_AIDE = ""

		IF W_TRI # "" THEN
			IF W_SELECTION = "RESP" THEN
				IF ENR_AIDE<39> # W_TamponRupture THEN
					IF W_PremiereLigne = "Faux" THEN
						GOSUB 100
					END ELSE
						W_PremiereLigne = "Faux"
					END	
					ENR_RESULTAT<W_IndResultat,1> = "*":ENR_AIDE<39>
					W_IndResultat = W_IndResultat + 1
					W_TamponRupture=ENR_AIDE<39>
				END
			END 		
			IF W_SELECTION = "SECT" THEN
				W_SECTEURAIDE = ENR_AIDE<40>
				IF W_SECTEURAIDE[1,3] # W_TamponRupture THEN
					IF W_PremiereLigne = "Faux" THEN
						GOSUB 100
					END ELSE
						W_PremiereLigne = "Faux"
					END	
					ENR_RESULTAT<W_IndResultat,1> = "*":W_SECTEURAIDE[1,3]
					W_IndResultat = W_IndResultat + 1
					W_TamponRupture=W_SECTEURAIDE[1,3]
				END
			END 		
			IF W_SELECTION = "COMM" THEN
				IF ENR_AIDE<11> # W_TamponRupture THEN
					IF W_PremiereLigne = "Faux" THEN
						GOSUB 100
					END ELSE
						W_PremiereLigne = "Faux"
					END	
					ENR_RESULTAT<W_IndResultat,1> = "*":ENR_AIDE<11>
					W_IndResultat = W_IndResultat + 1
					W_TamponRupture=ENR_AIDE<11>
				END
			END 		
		END

		W_NomPrenom = ENR_AIDE<2>:" ":ENR_AIDE<3>
		W_Ecart = W_CumulCharges  - W_CumulProvision

		W_TotalChargesGroupe = W_TotalChargesGroupe + W_CumulCharges
		W_TotalProvisionGroupe = W_TotalProvisionGroupe + W_CumulProvision
		W_TotalEcartGroupe = W_TotalEcartGroupe + W_Ecart
		
		IF W_Ecart # 0 THEN
			ENR_RESULTAT<W_IndResultat,1> = W_Cle[1,5]
			ENR_RESULTAT<W_IndResultat,2> =W_NomPrenom"L 51"
			ENR_RESULTAT<W_IndResultat,3> =W_CumulCharges"R2"
			ENR_RESULTAT<W_IndResultat,4> =W_CumulProvision"R2"
			ENR_RESULTAT<W_IndResultat,5> =W_Ecart"R2"
			W_IndResultat = W_IndResultat + 1	
		END
		
	REPEAT

	IF W_TRI # "" THEN
		GOSUB 100
	END ELSE
		W_TotalChargesGene = W_TotalChargesGroupe
		W_TotalProvisionGene = W_TotalProvisionGroupe
		W_TotalEcartGene = W_TotalEcartGroupe
	END

	ENR_RESULTAT<W_IndResultat,1> = "Total general : "
	ENR_RESULTAT<W_IndResultat,3> = W_TotalChargesGene"R2"
	ENR_RESULTAT<W_IndResultat,4> = W_TotalProvisionGene"R2"
	ENR_RESULTAT<W_IndResultat,5> = W_TotalEcartGene"R2"
	W_IndResultat = W_IndResultat + 1	
	
	WRITE ENR_RESULTAT ON F.RESULTAT, "Comparaison"

STOP

***********************
* Ligne total groupe  *
***********************
100

ENR_RESULTAT<W_IndResultat,1> = "Total : "
ENR_RESULTAT<W_IndResultat,3> =W_TotalChargesGroupe"R2"
ENR_RESULTAT<W_IndResultat,4> =W_TotalProvisionGroupe"R2"
ENR_RESULTAT<W_IndResultat,5> =W_TotalEcartGroupe"R2"
W_IndResultat = W_IndResultat + 1

W_TotalChargesGene = W_TotalChargesGene + W_TotalChargesGroupe
W_TotalProvisionGene = W_TotalProvisionGene + W_TotalProvisionGroupe
W_TotalEcartGene = W_TotalEcartGene + W_TotalEcartGroupe
W_TotalChargesGroupe = 0
W_TotalProvisionGroupe = 0
W_TotalEcartGroupe = 0

RETURN
