PRINT "1"
OPEN "", "UNIDATA" TO F.UNIDATA ELSE 
	EXECUTE 'CREER-FICHIER DIR UNIDATA'
	OPEN "", "VOC" TO F.VOC ELSE
		STOP
	END
	READ ENR_VOC FROM F.VOC, "UNIDATA" ELSE
		STOP
	END
	* Ci dessous : chane  remplacer selon chemin fichier BASES.txt
	ENR_VOC<2> = "C:\Unidata"
	WRITE ENR_VOC ON F.VOC, "UNIDATA"
	OPEN "", "UNIDATA" TO F.UNIDATA ELSE
		STOP
	END
END
PRINT "2"
OPEN "COMMANDESBATCH" TO F.COMMANDESBATCH THEN
	READ ENR_COMMANDESBATCH FROM F.COMMANDESBATCH, "1" ELSE ENR_COMMANDESBATCH = ""	
END ELSE
	ENR_COMMANDESBATCH = ""	
END
PRINT "3"
OPEN "","ASSOCIATION" TO F.ASSOCIATION ELSE STOP
OPEN "","COMPTEUR" TO F.COMPTEUR THEN
	READ ENR_COMPTEUR FROM F.COMPTEUR, "999" THEN
		IF ENR_COMPTEUR<24,1> = "LEMANS" THEN
			EXECUTE 'RUN PRMOUL LeMansAjoutAide'
		END		
	END
END
PRINT "4"

READ CHEMINSBASES.TXT FROM F.UNIDATA,"CheminsBases.txt" ELSE
	STOP
END
PRINT "5"
ENR_RAPPORT = ""

EXECUTE "SET-DEC ,"
EXECUTE "UDT.OPTIONS 11 ON"
EXECUTE "DATE.FORMAT"
EXECUTE "SET-THOUS ."


*LOOP
*   SLEEP ("04:00")
	i = 0
	LOOP
		i = i + 1
	WHILE CHEMINSBASES.TXT<i> # "" 
		ENR_RAPPORT<-1> = "Connexion a ":CHEMINSBASES.TXT<i>:"..."
		EXECUTE 'LOGTO ':CHEMINSBASES.TXT<i>
		PRINT "6"
		************* 1er trt : Vidr fichiers tampon
		ENR_RAPPORT<-1> = "Apuration fichiers temporaires":"...":"  ":INT(TIME()/3600):"h":INT(MOD(TIME(),3600)/60)"R%2"
		EXECUTE 'VIDER-FICHIER TPSTEMPO'
		EXECUTE 'VIDER-FICHIER TEMPO'
		ENR_RAPPORT<-1> = " "
		WRITE ENR_RAPPORT ON F.UNIDATA, "RapportBatch":MOD(DATE(),7):".txt"
		
		********** 2eme trt : Vider les articles du dossier _ph_ engendrs par la commande "LOCK"...
		ENR_RAPPORT<-1> = "Apuration fichier _ph_":"...":"  ":INT(TIME()/3600):"h":INT(MOD(TIME(),3600)/60)"R%2"
		WRITE ENR_RAPPORT ON F.UNIDATA, "RapportBatch":MOD(DATE(),7):".txt"
		
		OPEN "","_PH_" TO F.PH THEN
			EXECUTE 'SELECT _PH_ # "O_]"'
			W_Fin = "F"
			LOOP
				READNEXT W_Cle ELSE W_Fin = "V"
			WHILE W_Fin = "F"
				DELETE F.PH, W_Cle
			REPEAT
		END
		
		********* 3eme trt : retailler les fichiers + cart plan d'aide
		W_Heure=INT(TIME()/3600)
		IF OCONV(DATE(),"D4/")[1,2] >= 20 THEN
			* modif vanessa 27/01/10
			W_Mois=OCONV(DATE(),"D4/")[4,2]
			W_An=OCONV(DATE(),"D4/")[7,4]
			W_Mois=W_Mois+1
			IF W_Mois="13" THEN
				W_Mois="01"
				W_An=W_An+1
			END
			W_DateRef = ICONV("01/":W_Mois:"/":W_An,"D4/")-1
			* W_DateRef = ICONV("01/":OCONV(DATE()+32,"D4/")[4,7],"D4/")-1
			* modif vanessa 12/10/09
			IF (W_DateRef - DATE() <= 7 AND MOD(DATE(),7) = 0 AND W_Heure > 21) OR (W_DateRef - DATE() <= 7 AND MOD(DATE(),7) = 0 AND W_Heure < 7) THEN
				* Dernier dimanche du mois entre 21 et 7 h (pour les assos qui n'teignent pas le serveur): 
				GOSUB 100
			END ELSE
				* modif vanessa 29/01/10
				IF (W_DateRef - DATE() <= 7 AND MOD(DATE(),7) = 5 AND W_Heure < 21) OR (W_DateRef - DATE() <= 7 AND MOD(DATE(),7) = 5 AND W_Heure > 7) THEN
					* Dernier vendredi du mois entre 7 et 21 h (pour les assos qui teignent le serveur le soir): 
					GOSUB 100
				END
			END
		END
		
		************* 4eme trt : gnration du suivi de contrat de prospective
		* modif vanessa 10/11/10		
		ENR_RAPPORT<-1> = "Suivi de contrat de prospective - traitement quotidien":"...":"  ":INT(TIME()/3600):"h":INT(MOD(TIME(),3600)/60)"R%2"
		WRITE ENR_RAPPORT ON F.UNIDATA, "RapportBatch":MOD(DATE(),7):".txt"
		EXECUTE 'GENERESUIVCONTRATPROSP Q'		
		
 		OPEN "","INSTALLMAJ" TO F.INSTALLMAJ THEN
			* modif vanessa 08/10/10 - lance le PRMOUL BATCHMAJTPSREMPLACEAIDANT pour regnrer le fichier TPSREMPLACEAIDANT en cas de MV en att 1  vide
			READ ENR_MAJTPSREMPLACEAIDANT FROM F.INSTALLMAJ, "MAJTPSREMPLACEAIDANT480" THEN
				* dj fait ne pas refaire
			END ELSE
				ENR_RAPPORT<-1> = "Regnre fichier TPSREMPLACEAIDANT - traitement exceptionnel suite  MAJ 480":"...":"  ":INT(TIME()/3600):"h":INT(MOD(TIME(),3600)/60)"R%2"
				WRITE ENR_RAPPORT ON F.UNIDATA, "RapportBatch":MOD(DATE(),7):".txt"
				EXECUTE 'RUN PRMOUL BATCHMAJTPSREMPLACEAIDANT'
				WRITE "" ON F.INSTALLMAJ,"MAJTPSREMPLACEAIDANT480"
			END
		END
		
		************* 5eme trt : Calcul des ecarts sur les plans d'aide
		ENR_RAPPORT<-1> = "Ecarts sur les plans d'aide - traitement quotidien":"...":"  ":INT(TIME()/3600):"h":INT(MOD(TIME(),3600)/60)"R%2"
		WRITE ENR_RAPPORT ON F.UNIDATA, "RapportBatch":MOD(DATE(),7):".txt"	
		* Parametre Q pour execution du programme quotidien
		EXECUTE 'BATCHPREAPREST Q'
		
		************* 6eme trt : Generation du fichier HEURESAIDANTSPLG	
		ENR_RAPPORT<-1> = "Generation du fichier HEURESAIDANTSPLG":"...":"  ":INT(TIME()/3600):"h":INT(MOD(TIME(),3600)/60)"R%2"		
		WRITE ENR_RAPPORT ON F.UNIDATA, "RapportBatch":MOD(DATE(),7):".txt"	
		EXECUTE 'RUN PR GENEREPLGCPPREV'
		
		k = 0
		LOOP
		k = k + 1
		WHILE ENR_COMMANDESBATCH<k> # ""	
			ENR_RAPPORT<-1> = ENR_COMMANDESBATCH<k,2>:"...":"  ":INT(TIME()/3600):"h":INT(MOD(TIME(),3600)/60)"R%2"
			WRITE ENR_RAPPORT ON F.UNIDATA, "RapportBatch":MOD(DATE(),7):".txt"		
			EXECUTE ENR_COMMANDESBATCH<k,1>
			
		REPEAT
		
		************* SPECIF FONDATIONCE : mise  jour automatique des donnes aidant et contrat 	
		OPEN "FUSION" TO F.FUSION THEN
			READ ENR_FUSION FROM F.FUSION,"INTF01I.csv" THEN
				W_Params="INTF01I.csv"
				ENR_RAPPORT<-1> = "Mise  jour aidant et contrat (Fondation CE)...  ":INT(TIME()/3600):"h":INT(MOD(TIME(),3600)/60)"R%2"
				WRITE ENR_RAPPORT ON F.UNIDATA, "RapportBatch":MOD(DATE(),7):".txt"
				CALL IMPORTAIDANTCONTRATFCE(RETURNVAL,W_Params,W_Sortie)
			END
		END
		
	REPEAT
*REPEAT

ENR_RAPPORT<-1> = "Traitement termin le ":OCONV(DATE(),"D4/"):"  ":INT(TIME()/3600):"h":INT(MOD(TIME(),3600)/60)"R%2"
WRITE ENR_RAPPORT ON F.UNIDATA, "RapportBatch":MOD(DATE(),7):".txt"
STOP

100 **************************************

	ENR_RAPPORT<-1> = "Archivage fichiers planning":"...":"  ":INT(TIME()/3600):"h":INT(MOD(TIME(),3600)/60)"R%2"
	WRITE ENR_RAPPORT ON F.UNIDATA, "RapportBatch":MOD(DATE(),7):".txt"
	EXECUTE 'RUN PR ARCHIVEPLANNING'
	*Modif Clement DA10128 09/06/2010
	READ ENR_ASSO FROM F.ASSOCIATION,"001" THEN
		IF ENR_ASSO<38> <> "" THEN
			EXECUTE 'RUN PR ARCHIVAGETLGPOINTAGE'
		END
	END
	*Fin modif clement DA10128
	OPEN "", "FICARETAILLER" TO F.FICARETAILLER THEN
		GOSUB 200
	END					
	ENR_RAPPORT<-1> = "Ecarts sur les plans d'aide - traitement mensuel":"...":"  ":INT(TIME()/3600):"h":INT(MOD(TIME(),3600)/60)"R%2"
	WRITE ENR_RAPPORT ON F.UNIDATA, "RapportBatch":MOD(DATE(),7):".txt"	
	* Parametre M pour execution du programme mensuel : gnration du mois+3
	EXECUTE 'BATCHPREAPREST M'
	ENR_RAPPORT<-1> = "Suivi contrat prospective - traitement mensuel":"...":"  ":INT(TIME()/3600):"h":INT(MOD(TIME(),3600)/60)"R%2"
	WRITE ENR_RAPPORT ON F.UNIDATA, "RapportBatch":MOD(DATE(),7):".txt"							
	EXECUTE 'GENERESUIVCONTRATPROSP M'

RETURN

200 **************************************
READ ENR FROM F.FICARETAILLER, "MENSUEL" THEN
ENR_RAPPORT<-1> = "Debut Resize du ":OCONV(DATE(),"D4/")
WRITE ENR_RAPPORT ON F.UNIDATA, "RapportBatchResize.txt"

i2 = 0
LOOP
i2 = i2 + 1
WHILE ENR<i2> # ""
	EXECUTE 'FICSTAT ':ENR<i2> CAPTURING W_Stat
	ENR_RAPPORT<-1> = ENR<i2>:" : "
	FOR t = 1 TO 25
		ENR_RAPPORT<-1> = t"R%3":" : ":W_Stat<t>
	NEXT t
	ENR_RAPPORT<-1> = " -*- "
	IF W_Stat<25> # "" THEN
		W_Long=LEN(W_Stat<25>)-27
		W_Modulo=W_Stat<25>
		W_Modulo=W_Modulo[27,W_Long]
		EXECUTE 'RESIZE ':ENR<i2>:' ':W_Modulo
		ENR_RAPPORT<-1> = "RESIZE effectu  -":W_Modulo:"-"
	END
REPEAT

END
RETURN
***************
