EXECUTE "SET-THOUS ."
EXECUTE "SET-DEC ,"
EXECUTE "DATE.FORMAT"
OPEN "", "DETAILCALCUL" TO F.DETAILCALCUL ELSE STOP
OPEN "", "HISTORCUMUL" TO F.HISTORCUMUL ELSE STOP
OPEN "", "CIVILAIDANT" TO F.CIVILAIDANT ELSE STOP
OPEN "", "CONTRAT" TO F.CONTRAT ELSE STOP
PRINT "Mois de debut de l'anne de dclaration (AAAAMM)"
INPUT W_MoisDeb
PRINT "Mois de fin de l'anne de dclaration (AAAAMM)"
INPUT W_MoisFin
PRINT "Code entit juridique"
INPUT W_CodeAsso
W_DateFinPer = ICONV("01/":W_MoisFin[5,2]:"/":W_MoisFin[1,4],"D4/")
EXECUTE 'COMO ON VerifBrutNetImpDADS.txt'
W_Str =  'SELECT DETAILCALCUL AVEC CodAssoContratDetailCalcul = "':W_CodeAsso:'" AND AVEC ConvColContratDetailCalcul # "02" AND AVEC PeriodeDetailCalcul >= "':W_MoisDeb:'" AND AVEC PeriodeDetailCalcul <= "':W_MoisFin:'" PAR CodeAidantDetailCalcul PAR CodeAideDetailCalcul PAR PeriodeDetailCalcul'
EXECUTE W_Str
W_TamponAidant = ""
W_CumulBrut = 0
W_CumulNet = 0
W_NbAidants = 0
W_NbAidantsMod = 0
W_CleCont = ""
W_IndCont = 1
W_SommeBullbrut = 0
W_SommeDADSbrut = 0
W_SommeDADSArrondieBrut = 0
W_SommeBullBrut = 0
W_SommeDADSBrut = 0
W_SommeDADSArrondieBrut = 0
W_SommeDADSArrondieNet = 0
W_SommeBullNet = 0
W_SommeDADSNet = 0
W_SommeDADSArrondieNet = 0
W_TamponAide = ""
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] ELSE ENR_CONTRAT = ""
	IF ENR_CONTRAT<3> # W_TamponAide OR W_Cle[1,5] # W_TamponAidant THEN
		IF W_TamponAide # "" THEN
			READ ENR_CIVILAIDANT FROM F.CIVILAIDANT, W_TamponAidant THEN
			GOSUB 400
			END
		END
		W_TamponAidant = W_Cle[1,5]
		W_TamponAide = ENR_CONTRAT<3>
	END
	READ ENR_DETAILCALCUL FROM F.DETAILCALCUL, W_Cle ELSE ENR_DETAILCALCUL = ""
		
		
	W_CumulNet = W_CumulNet + ENR_DETAILCALCUL<15>
	W_CumulBrut = W_CumulBrut + ENR_DETAILCALCUL<7>
REPEAT

GOSUB 400

PRINT 	W_NbAidants:" parcourus, ":W_NbAidantsMod:" prsentaient une anomalie "
PRINT "Totaux :"
PRINT "   - DADS Brut               : ":W_SommeDADSBrut/100
PRINT "   - DADS arrondie Brut      : ":W_SommeDADSArrondieBrut
PRINT "   - Bulletins Brut          : ":W_SommeBullBrut/100
PRINT
PRINT "   - DADS Net Impos.         : ":W_SommeDADSNet/100
PRINT "   - DADS arrondie Net impos.: ":W_SommeDADSArrondieNet
PRINT "   - Bulletins Net impos.    : ":W_SommeBullNet/100
EXECUTE 'COMO OFF'

STOP

100
W_Diff = W_CumulBrut - ENR_HISTORCUMUL<5>
IF W_Diff > 1 OR W_Diff < -1 THEN
 W_NbAidantsMod = W_NbAidantsMod + 1
 PRINT W_TamponAidant:" ":ENR_CIVILAIDANT<4>:" ":ENR_CIVILAIDANT<2>:" ":ENR_CIVILAIDANT<3>:" ":W_TamponAide
 PRINT " Brut DADS : ":ENR_HISTORCUMUL<5>/100"R2 8":"   Brut bulletins : ":W_CumulBrut/100"R2 8":"   Diff. : ":W_Diff/100"R2 8"
 PRINT
END
RETURN

110
W_Diff = W_CumulNet - ENR_HISTORCUMUL<6>
IF W_Diff > 1 OR W_Diff < -1 THEN
 W_NbAidantsMod = W_NbAidantsMod + 1
 PRINT W_TamponAidant:" ":ENR_CIVILAIDANT<4>:" ":ENR_CIVILAIDANT<2>:" ":ENR_CIVILAIDANT<3>:" ":W_TamponAide
 PRINT " Imposable DADS : ":ENR_HISTORCUMUL<6>/100"R2 8":"   Imposable bulletins : ":W_CumulNet/100"R2 8":"   Diff. : ":W_Diff/100"R2 8"
 PRINT
END
RETURN

200
* Pas de DADS
IF W_CumulBrut > 1 OR W_CumulBrut < -1 THEN
	W_NbAidantsMod = W_NbAidantsMod + 1
	PRINT W_TamponAidant:" ":ENR_CIVILAIDANT<4>:" ":ENR_CIVILAIDANT<2>:" ":ENR_CIVILAIDANT<3>:" ":W_TamponAide
	PRINT "Cet aidant n'a pas de DADS ! Cumul des nets imposables : ":W_CumulBrut/100"R2 8"	
END
RETURN

***************************************
* Total Aide
******************************************			
400 W_SommeBullBrut = W_SommeBullBrut + W_CumulBrut
W_SommeBullNet = W_SommeBullNet + W_CumulNet		
W_NbAidants = W_NbAidants + 1
READ ENR_HISTORCUMUL FROM F.HISTORCUMUL, W_TamponAidant[1,5]:W_MoisFin[1,4]:W_TamponAide[1,3] THEN
	W_SommeDADSBrut = W_SommeDADSBrut + ENR_HISTORCUMUL<5>
	W_SommeDADSNet = W_SommeDADSNet + ENR_HISTORCUMUL<6>
	W_SommeDADSArrondieBrut = W_SommeDADSArrondieBrut + INT(ENR_HISTORCUMUL<5>/100 + 1/2)
	W_SommeDADSArrondieNet = W_SommeDADSArrondieNet + INT(ENR_HISTORCUMUL<6>/100 + 1/2)
	IF W_CumulBrut # ENR_HISTORCUMUL<5> THEN GOSUB 100		
	IF W_CumulNet # ENR_HISTORCUMUL<6> THEN GOSUB 110
END ELSE
	ENR_HISTORCUMUL = ""
	GOSUB 200
END
W_CumulBrut = 0
W_CumulNet = 0
W_CleCont = ""
W_IndCont = 1
RETURN

