

**********************
* REMPLI L'ENREGISTREMENT SUIVCONTRAT DE TEMPO POUR PERMETTRE L'EDITION DES SUIVI DE CONTRAT
* 19/04/2001 ALAIN
**********************


***************************
* Ouvertures des fichiers *
***************************

EXECUTE "SET-THOUS ."
EXECUTE "DATE.FORMAT"
OPEN "","ASSOCIATION" TO F.ASSOCIATION ELSE STOP
OPEN "","CIVILAIDE" TO F.CIVILAIDE ELSE STOP
OPEN "","CIVILAIDANT" TO F.CIVILAIDANT ELSE STOP
OPEN "","CONTRAT" TO F.CONTRAT ELSE STOP
OPEN "","DIFAIDANT" TO F.DIFAIDANT ELSE STOP
OPEN "","TABLES" TO F.TABLES ELSE STOP
OPEN "","TEMPO" TO F.TEMPO ELSE STOP
OPEN "","SECTEUR" TO F.SECTEUR ELSE STOP
OPEN "","COMMUNES" TO F.COMMUNES ELSE STOP
OPEN "","CONVENTIONCOL" TO F.CONVENTIONCOL ELSE STOP
OPEN "","ETABLISSEMENT" TO F.ETABLISSEMENT ELSE STOP

******************************
* Recuperation des arguments *
******************************

PROCREAD ARGUMENTS ELSE PRINT "Procread"
W_RESULTAT=""

W_USER = FIELD(ARGUMENTS,"|",2)
W_TRAIT = FIELD(ARGUMENTS,"|",3)
W_DATE = FIELD(ARGUMENTS,"|",4)
IF W_TRAIT = "T" THEN
	W_ASSOC = FIELD(ARGUMENTS,"|",5)
	W_TYPACT = FIELD(ARGUMENTS,"|",6)
	W_TYPPERS = FIELD(ARGUMENTS,"|",7)
	W_SELECT = FIELD(ARGUMENTS,"|",8)
	W_TRI = FIELD(ARGUMENTS,"|",9)
	W_CODSELECT = FIELD(ARGUMENTS,"|",10)
END ELSE
	W_LISTCONTRATS=FIELD(ARGUMENTS,"|",5)
	W_RESULTAT=""
	I=1
	LOOP
		W_DETAILCONTRAT=FIELD(W_LISTCONTRATS,"/",I)
	UNTIL W_DETAILCONTRAT="" DO
		W_RESULTAT<I>=W_DETAILCONTRAT
		I=I+1
	REPEAT
END
*********************
* TRAITEMENT GLOBAL *
*********************

ENR_TEMPO =""
W_REGUL=0
WRITE ENR_TEMPO TO F.TEMPO,"DIFINFOAIDANT":W_USER

EXECUTE 'SET-DEC ,' 

W_SELECTION = ""

IF W_TRAIT = "T" THEN

	W_STR = 'SSELECT CONTRAT AVEC 65 = "" AND AVEC 2 = "':W_ASSOC:'" '

	IF W_TYPACT = "M" THEN
		W_STR = W_STR:'AND AVEC 1 = "02" '
	END ELSE
		W_STR = W_STR:'AND AVEC 1 # "02" '
		IF W_TYPACT = "P" THEN
			W_STR = W_STR:'AND AVEC TypeActivite = "P" OR = "M" '
		END ELSE
			W_STR = W_STR:'AND AVEC TypeActivite = "':W_TYPACT:'" '
		END
	END

	IF W_TYPPERS # "T" THEN
		W_STR = W_STR:'AND AVEC 6 = "':W_TYPPERS:'" '
	END

	W_STR = W_STR:'AND AVEC 7 <= "':W_DATE:'" AND AVEC 8 >= "':W_DATE:'" OR = "" '

	IF W_TRI = "1" THEN
		IF W_SELECT = "A" THEN
			W_STR = W_STR:' PAR NomPrenomAidantContrat'
		END ELSE
			IF W_CODSELECT = "" THEN
				IF W_SELECT = "S" THEN
					W_STR = W_STR:'PAR LibSecteurContrat PAR NomPrenomAidantContrat'
				END ELSE
					W_STR = W_STR:'PAR LibCommuneAidant PAR NomPrenomAidantContrat'
				END
			END ELSE
				IF W_SELECT = "S" THEN
					W_STR = W_STR:'AND AVEC CodSecteurContrat = "':W_CODSELECT:'" PAR NomPrenomAidantContrat'
				END ELSE
					W_STR = W_STR:'AND AVEC LibCommuneAidant = "':W_CODSELECT:'" PAR NomPrenomAidantContrat'
				END
			END
		END
	END ELSE
		IF W_SELECT = "A" THEN
			W_STR = W_STR:' PAR NomAideContrat PAR PrenomAideContrat'
		END ELSE
			IF W_CODSELECT = "" THEN
				IF W_SELECT = "S" THEN
					W_STR = W_STR:'PAR LibSecteurEmployeur PAR NomAideContrat PAR PrenomAideContrat'
				END ELSE
					IF W_SELECT = "C" THEN
						W_STR = W_STR:'PAR LibCommuneAide PAR NomAideContrat PAR PrenomAideContrat'
					END ELSE
						W_STR = W_STR:'PAR NomResponsable PAR NomAideContrat PAR PrenomAideContrat'
					END
				END
			END ELSE
				IF W_SELECT = "S" THEN
					W_STR = W_STR:'AND AVEC CodSecteurContratAide = "':W_CODSELECT:'" PAR NomAideContrat PAR PrenomAideContrat'
				END ELSE
					IF W_SELECT = "C" THEN
						W_STR = W_STR:'AND AVEC LibCommuneAide = "':W_CODSELECT:'" PAR NomAideContrat PAR PrenomAideContrat'
					END ELSE
						W_STR = W_STR:'AND AVEC CodeRespAideContrat = "':W_CODSELECT:'" PAR NomAideContrat PAR PrenomAideContrat'
					END
				END
			END
		END
	END

	EXECUTE W_STR 

	EXECUTE 'SAUVE-LISTE W_RESULTAT' 
	EXECUTE "LISTE W_RESULTAT" RETURNING MSGCODE

	IF MSGCODE<1> # 209 THEN
		SELECT F.CONTRAT TO W_RESULTAT
	END ELSE
		ENR_TEMPO<1> = "VIDE"
		WRITE ENR_TEMPO TO F.TEMPO,"DIFINFOAIDANT":W_USER
		STOP
	END
END ELSE
	IF W_RESULTAT = "" THEN
		ENR_TEMPO<1> = "VIDE"
		WRITE ENR_TEMPO TO F.TEMPO,"DIFINFOAIDANT":W_USER
		STOP
	END
END

W_FINI = "FAUX"	
	
ENR_TITRE = ""
ENR_FORMPRO = ""
READ ENR_TITRE FROM F.TABLES,"TITRES" ELSE ENR_TITRE = ""
READ ENR_FORMPRO FROM F.TABLES,"FORMPRO" ELSE ENR_FORMPRO = ""

J = 0	
W_AIDE=""
CLE.CONTRAT=""
CLE.DIF=""
IRES = 1

LOOP
	IF W_TRAIT = "T" THEN
		READNEXT CLE.CONTRAT FROM W_RESULTAT ELSE W_FINI="VRAI"
	END ELSE
		IF W_RESULTAT<IRES> # "" THEN
			CLE.CONTRAT = W_RESULTAT<IRES>
			IRES = IRES + 1
		END ELSE
			W_FINI = "VRAI"
		END
	END
WHILE W_FINI = "FAUX" DO

	READ ENR_CONTRAT FROM F.CONTRAT,CLE.CONTRAT ELSE ENR_CONTRAT = ""
	IF ENR_CONTRAT<1> = "02" THEN
		CLE.DIF = CLE.CONTRAT[1,5]:ENR_CONTRAT<3>
	END ELSE
		CLE.DIF = CLE.CONTRAT[1,5]:ENR_CONTRAT<2>
	END
	READ ENR_DIFAIDANT FROM F.DIFAIDANT,CLE.DIF ELSE ENR_DIFAIDANT = "VIDE"
	
	IF ENR_DIFAIDANT # "VIDE" THEN
		IF ENR_DIFAIDANT<1,1> <= W_DATE THEN
			W_AIDE = CLE.CONTRAT[1,5]
			READ ENR_CIVILAIDANT FROM F.CIVILAIDANT,W_AIDE ELSE ENR_CIVILAIDANT = ""
			
			J = J+1
			IF ENR_CONTRAT<1> # "02" THEN
				READ ENR_ASSO FROM F.ASSOCIATION,ENR_CONTRAT<2> ELSE ENR_ASSO = ""
				ENR_TEMPO<J,1> = ENR_ASSO<1>
				IF ENR_ASSO<3> # "" THEN
					W_ADR = ENR_ASSO<3>:' '
				END ELSE
					W_ADR = ""
				END
				IF ENR_ASSO<4> # "" THEN
					W_ADR = W_ADR:ENR_ASSO<4>:' '
				END
				IF ENR_ASSO<5> # "" THEN
					W_ADR = W_ADR:ENR_ASSO<5>:' '
				END
				IF ENR_ASSO<6> # "" THEN
					W_ADR = W_ADR:ENR_ASSO<6>
				END
				ENR_TEMPO<J,2> = W_ADR
				ENR_TEMPO<J,3> = ENR_ASSO<7>
				IF ENR_ASSO<8> # "" THEN
					W_ADR = ENR_ASSO<8>:' '
				END ELSE
					W_ADR = ""
				END
				IF ENR_ASSO<9> # "" THEN
					W_ADR = W_ADR:ENR_ASSO<9>:' '
				END
				IF ENR_ASSO<10> = "1" THEN
					W_ADR = W_ADR:'CEDEX '
					IF ENR_ASSO<11> # "" THEN
						W_ADR = W_ADR:ENR_ASSO<11>
					END
				END
				ENR_TEMPO<J,4> = W_ADR
				ENR_TEMPO<J,5> = ENR_ASSO<12>
				ENR_TEMPO<J,6> = ENR_ASSO<9>
			END ELSE
				READ ENR_CIVILAIDE FROM F.CIVILAIDE,ENR_CONTRAT<3> ELSE ENR_CIVILAIDE = ""
				ENR_TEMPO<J,1> = ENR_CIVILAIDE<1>:' ':ENR_CIVILAIDE<2>:' ':ENR_CIVILAIDE<3>
				IF ENR_CIVILAIDE<5> # "" THEN
					W_ADR = ENR_CIVILAIDE<5>:' '
				END ELSE
					W_ADR = ""
				END
				IF ENR_CIVILAIDE<6> # "" THEN
					W_ADR = W_ADR:ENR_CIVILAIDE<6>:' '
				END
				IF ENR_CIVILAIDE<7> # "" THEN
					W_ADR = W_ADR:ENR_CIVILAIDE<7>:' '
				END
				IF ENR_CIVILAIDE<8> # "" THEN
					W_ADR = W_ADR:ENR_CIVILAIDE<8>
				END
				ENR_TEMPO<J,2> = W_ADR
				ENR_TEMPO<J,3> = ENR_CIVILAIDE<9>
				IF ENR_CIVILAIDE<10> # "" THEN
					W_ADR = ENR_CIVILAIDE<10>:' '
				END ELSE
					W_ADR = ""
				END
				IF ENR_CIVILAIDE<11> # "" THEN
					W_ADR = W_ADR:ENR_CIVILAIDE<11>:' '
				END
				IF ENR_CIVILAIDE<12> = "1" THEN
					W_ADR = W_ADR:'CEDEX '
					IF ENR_CIVILAIDE<13> # "" THEN
						W_ADR = W_ADR:ENR_CIVILAIDE<13>
					END
				END
				ENR_TEMPO<J,4> = W_ADR
				ENR_TEMPO<J,5> = ""
				ENR_TEMPO<J,6> = ENR_CIVILAIDE<11>
			END

			ENR_TEMPO<J,7> = ENR_CIVILAIDANT<1>:' ':ENR_CIVILAIDANT<2>:' ':ENR_CIVILAIDANT<3>
			IF ENR_CIVILAIDANT<5> # "" THEN
				W_ADR = ENR_CIVILAIDANT<5>:' '
			END ELSE
				W_ADR = ""
			END
			IF ENR_CIVILAIDANT<6> # "" THEN
				W_ADR = W_ADR:ENR_CIVILAIDANT<6>:' '
			END
			IF ENR_CIVILAIDANT<7> # "" THEN
				W_ADR = W_ADR:ENR_CIVILAIDANT<7>:' '
			END
			IF ENR_CIVILAIDANT<8> # "" THEN
				W_ADR = W_ADR:ENR_CIVILAIDANT<8>
			END
			ENR_TEMPO<J,8> = W_ADR
			ENR_TEMPO<J,9> = ENR_CIVILAIDANT<9>
			IF ENR_CIVILAIDANT<10> # "" THEN
				W_ADR = ENR_CIVILAIDANT<10>:' '
			END ELSE
				W_ADR = ""
			END
			IF ENR_CIVILAIDANT<11> # "" THEN
				W_ADR = W_ADR:ENR_CIVILAIDANT<11>:' '
			END
			ENR_TEMPO<J,10> = W_ADR
			
			I = 0
			LOOP
				I = I + 1
			WHILE ENR_TITRE<2,I> # "" DO
				IF ENR_TITRE<2,I> = ENR_CIVILAIDANT<1> THEN
					ENR_TEMPO<J,11> = ENR_TITRE<3,I>
				END
			REPEAT

			IF ENR_TEMPO<J,11> = "" THEN
				ENR_TEMPO<J,11> = "Monsieur"
			END
			
			I=0
			LOOP
				I = I + 1
			WHILE ENR_DIFAIDANT<1,I> # "" AND ENR_DIFAIDANT<1,I> <= W_DATE DO
				ENR_TEMPO<J,(I+11)> = OCONV(ENR_DIFAIDANT<1,I>,"D4/"):SPACE(1)
				IF ENR_DIFAIDANT<2,I> #  "" THEN
					HRES = (ENR_DIFAIDANT<2,I>/100)
					HRES = HRES "R2"
					HRES = HRES "R(#10)"
					ENR_TEMPO<J,(I+11)> = ENR_TEMPO<J,(I+11)>:HRES:SPACE(1)
				END ELSE
					ENR_TEMPO<J,(I+11)> = ENR_TEMPO<J,(I+11)>:SPACE(11)
				END

				IFORM = 0
				W_TROUV = "FAUX"
				W_FORM = ""
				LOOP
					IFORM = IFORM + 1
				WHILE W_TROUV = "FAUX" AND ENR_FORMPRO<2,IFORM> # "" DO
					IF ENR_FORMPRO<2,IFORM> = ENR_DIFAIDANT<5,I> THEN
						W_TROUV = "VRAI"
						W_FORM = ENR_FORMPRO<3,IFORM>[1,35]:SPACE(36-LEN(ENR_FORMPRO<3,IFORM>[1,35]))
					END
				REPEAT

				IF W_TROUV = "VRAI" THEN
					ENR_TEMPO<J,(I+11)> = ENR_TEMPO<J,(I+11)>:W_FORM
				END ELSE
					ENR_TEMPO<J,(I+11)> = ENR_TEMPO<J,(I+11)>:SPACE(36)
				END

				IF ENR_DIFAIDANT<3,I> #  "" THEN
					HRES = (ENR_DIFAIDANT<3,I>/100)
					HRES = HRES "R2"
					HRES = HRES "R(#10)"
					ENR_TEMPO<J,(I+11)> = ENR_TEMPO<J,(I+11)>:HRES:SPACE(1)
				END ELSE
					ENR_TEMPO<J,(I+11)> = ENR_TEMPO<J,(I+11)>:SPACE(11)
				END

				IF ENR_DIFAIDANT<4,I> #  "" THEN
					HRES = (ENR_DIFAIDANT<4,I>/100)
					HRES = HRES "R2"
					HRES = HRES "R(#10)"
					ENR_TEMPO<J,(I+11)> = ENR_TEMPO<J,(I+11)>:HRES:SPACE(1)
				END ELSE
					ENR_TEMPO<J,(I+11)> = ENR_TEMPO<J,(I+11)>:SPACE(11)
				END

			REPEAT
			
		END
	END
REPEAT

IF ENR_TEMPO = "" THEN
	ENR_TEMPO<1> = "VIDE"
END

WRITE ENR_TEMPO TO F.TEMPO,"DIFINFOAIDANT":W_USER

EXECUTE 'EFFACER-LISTE W_RESULTAT'

STOP
