OPEN "", "DETAILCALCUL" TO F.DETAILCALCUL ELSE STOP
OPEN "", "RUBCHARGE" TO F.RUBCHARGE ELSE STOP
OPEN "", "RUBSAISIE" TO F.RUBSAISIE ELSE STOP
OPEN "", "CONTRAT" TO F.CONTRAT ELSE STOP
OPEN "", "CIVILAIDANT" TO F.CIVILAIDANT ELSE STOP
OPEN "","FUSION" TO F.FUSION ELSE STOP
OPEN "","CIVILAIDE" TO F.CIVILAIDE ELSE STOP
EXECUTE "SET-THOUS ."
EXECUTE "SET-DEC ,"
EXECUTE "DATE.FORMAT"
W_PerDeb = ""
LOOP
PRINT "Periode debut ? (AAAAMM)"
INPUT W_PerDeb
IF W_PerDeb = "" THEN
	PRINT "Abandon."
	STOP
END
W_Date = "01/":W_PerDeb[5,2]:"/":W_PerDeb[1,4]
IF ICONV(W_Date,"D4/") = "" OR LEN(W_PerDeb) # 6 THEN
	PRINT "Saisie incorrecte"
	W_PerDeb = ""
END 
WHILE W_PerDeb = ""
REPEAT

W_PerFin = ""
LOOP
PRINT "Periode fin ? (AAAAMM)"
INPUT W_PerFin
IF W_PerFin = "" THEN
	PRINT "Abandon."
	STOP
END
W_Date = "01/":W_PerFin[5,2]:"/":W_PerFin[1,4]
IF ICONV(W_Date,"D4/") = "" OR LEN(W_PerFin) # 6 THEN
	PRINT "Saisie incorrecte"
	W_PerFin = ""
END 
WHILE W_PerFin = ""
REPEAT

W_TypeAct = ""
LOOP
PRINT "Type activite (P/M) ?"
INPUT W_TypeAct
IF W_TypeAct = "" THEN
	PRINT "Abandon."
	STOP
END
IF W_TypeAct = "m" THEN W_TypeAct = "M"
IF W_TypeAct = "p" THEN W_TypeAct = "P"
IF W_TypeAct #"P" AND W_TypeAct # "M" THEN
	W_TypeAct = ""
END
WHILE W_TypeAct = ""
REPEAT

W_CodeRub = ""
LOOP
PRINT "Code rubrique (3N) ?"
INPUT W_CodeRub
IF W_CodeRub = "" THEN
	PRINT "Abandon."
	STOP
END
READ ENR_RUB FROM F.RUBCHARGE, W_CodeRub ELSE 
	W_CodeRub = ""
	PRINT "Saisie incorrecte."
END
WHILE W_CodeRub = ""

REPEAT
IF W_TypeAct = "P" THEN
	EXECUTE 'SELECT DETAILCALCUL AVEC PeriodeDetailCalcul >= "':W_PerDeb:'" AND <= "':W_PerFin:'" AND AVEC ConvColContratDetailCalcul # "02" PAR NomPrenomAidantDetailCalcul PAR @ID'
END ELSE
	EXECUTE 'SELECT DETAILCALCUL AVEC PeriodeDetailCalcul >= "':W_PerDeb:'" AND <= "':W_PerFin:'" AND AVEC ConvColContratDetailCalcul = "02" PAR NomPrenomAidantDetailCalcul PAR @ID'
END
Result = ""
IF W_TypeAct = "P" THEN
Result<1> = "Code aidant;Nom prenom;Rubrique;Periode;Base salariale;Taux salarial;Montant salarial;Base patronale;Taux patronal;Montant patronal"
END ELSE
Result<1> = "Code aidant;Nom prenom;Code employeur;Nom prenom employeur;Rubrique;Periode;Base salariale;Taux salarial;Montant salarial;Base patronale;Taux patronal;Montant patronal"
END
LOOP
READNEXT W_Cle ELSE W_Fin = "V"
WHILE W_Fin # "V"
   READ ENR FROM F.DETAILCALCUL, W_Cle THEN
	W_Ind = 8
	i = 0
	LOOP
		i = i + 1
	WHILE ENR<W_Ind,i># ""
		IF ENR<W_Ind,i> = W_CodeRub THEN
		  READ ENR_CIVILAIDANT FROM F.CIVILAIDANT, W_Cle[1,5] ELSE ENR_CIVILAIDANT = ""
		  READ ENR_CONTRAT FROM F.CONTRAT, W_Cle[1,8] ELSE ENR_CONTRAT = ""
		  IF ENR_CONTRAT<1> = "02" THEN
			READ ENR_CIVILAIDE FROM F.CIVILAIDE, ENR_CONTRAT<3> ELSE ENR_CIVILAIDE = ""
			Result<-1> = W_Cle[1,5]:";":ENR_CIVILAIDANT<2>:" ":ENR_CIVILAIDANT<3>:";":ENR_CONTRAT<3>:";":ENR_CIVILAIDE<2>:" ":ENR_CIVILAIDE<3>:";":ENR_RUB<1>:";":W_Cle[9,6]:";":ENR<W_Ind+1,i>/100:";":ENR<W_Ind+2,i>/1000:";":ENR<W_Ind+3,i>/100:";":ENR<W_Ind+4,i>/100:";":ENR<W_Ind+5,i>/1000:";":ENR<W_Ind+6,i>/100
		  END ELSE
			Result<-1> = W_Cle[1,5]:";":ENR_CIVILAIDANT<2>:" ":ENR_CIVILAIDANT<3>:";":ENR_RUB<1>:";":W_Cle[9,6]:";":ENR<W_Ind+1,i>/100:";":ENR<W_Ind+2,i>/1000:";":ENR<W_Ind+3,i>/100:";":ENR<W_Ind+4,i>/100:";":ENR<W_Ind+5,i>/1000:";":ENR<W_Ind+6,i>/100

		  END
		END
	REPEAT
   END	
REPEAT
WRITE Result ON F.FUSION, "ListeRub":W_CodeRub:W_PerDeb:".csv"
PRINT " "
PRINT "Le fichier ":"ListeRub":W_CodeRub:W_PerDeb:".csv":" a bien ete genere dans le dossier FUSION de la base de donnees."
STOP