*****************************************************
* SUIVI DES HEURES DIF RESTANTES A UNE DATE ARRETEE *
* 14/04/2006                               STEPHANE *
*****************************************************

EXECUTE "SET-THOUS ."
OPEN "","ASSOCIATION" TO F.ASSOCIATION ELSE STOP
OPEN "","CIVILAIDANT" TO F.CIVILAIDANT ELSE STOP
OPEN "","CIVILAIDE" TO F.CIVILAIDE ELSE STOP
OPEN "","CONTRAT" TO F.CONTRAT ELSE STOP
OPEN "","DIFAIDANT" TO F.DIFAIDANT ELSE STOP
OPEN "","STATAIDANT" TO F.STATAIDANT ELSE STOP
OPEN "","GRILLESCC" TO F.GRILLESCC ELSE STOP
OPEN "","SECTEUR" TO F.SECTEUR ELSE STOP
OPEN "","TEMPO" TO F.TEMPO ELSE STOP

EXECUTE "SET-DEC ,"
EXECUTE "DATE.FORMAT"

* VIDE LE FICHIER TEMPO DES ARTICLES = STATDIF... + STATLISTEDIF
EXECUTE 'SELECT TEMPO AVEC @ID = "STATDIF]" OR = "STATLISTEDIF]" OR = "FICHIERDIF"'
W_FIN = 0
LOOP
	READNEXT CLE ELSE W_FIN = 1
	UNTIL W_FIN = 1 DO

	IF CLE[1,7] = "STATDIF" OR CLE[1,12] = "STATLISTEDIF" OR CLE[1,10] = "FICHIERDIF" THEN DELETE F.TEMPO,CLE
REPEAT

*PRINT "DATE D'ARRETE (JJ/MM/AAAA)"
*INPUT W_DATE

*PRINT "CODE ENTITE"
*INPUT W_CODEENTITE

*PRINT "CCN"
*INPUT W_CCN

*PRINT "TRI Q/S/C/T"
*INPUT W_TRI
*INPUT W_SELECTION


PROCREAD PARAMETRES ELSE STOP
W_DATE=FIELD(PARAMETRES,"|",2)
W_CODEENTITE=FIELD(PARAMETRES,"|",3)
W_CCN=FIELD(PARAMETRES,"|",4)
W_TRI=FIELD(PARAMETRES,"|",5)
W_SELECTION=FIELD(PARAMETRES,"|",6)
W_DATE2=ICONV(FIELD(PARAMETRES,"|",7),"D4/")
W_TYPEPERS=FIELD(PARAMETRES,"|",8)

IF W_TYPEPERS = "T" THEN W_TYPEPERS = ' AND AVEC 6 = "P" OR = "A"'
IF W_TYPEPERS = "P" THEN W_TYPEPERS = ' AND AVEC 6 = "P"'
IF W_TYPEPERS = "A" THEN W_TYPEPERS = ' AND AVEC 6 = "A"'

W_DATE = ICONV(W_DATE,"D4/")

*QUALIF PROF
IF W_TRI = "Q" THEN 
	* PAR QUALIF PAR TYPE DE CONTRAT
	IF W_SELECTION # "" THEN
		EXECUTE 'SELECT CONTRAT AVEC 1 = "':W_CCN:'" ':W_TYPEPERS:' AND AVEC 2 = "':W_CODEENTITE:'" AND AVEC 7 <= "':W_DATE:'" AND AVEC 8 >= "':W_DATE:'" OR = "" AND AVEC 65 # "O" AND AVEC DernQualifProf = "':W_SELECTION:'" PAR DernQualifProf PAR NomPrenomAidantContrat'
	END ELSE
		EXECUTE 'SELECT CONTRAT AVEC 1 = "':W_CCN:'" ':W_TYPEPERS:' AND AVEC 2 = "':W_CODEENTITE:'" AND AVEC 7 <= "':W_DATE:'" AND AVEC 8 >= "':W_DATE:'" OR = "" AND AVEC 65 # "O" PAR DernQualifProf PAR NomPrenomAidantContrat'
	END
END
*SECTEUR
IF W_TRI = "S" THEN 
	* PAR SECTEUR PAR TYPE DE CONTRAT
	IF W_SELECTION # "" THEN
		EXECUTE 'SELECT CONTRAT AVEC 1 = "':W_CCN:'" ':W_TYPEPERS:' AND AVEC 2 = "':W_CODEENTITE:'" AND AVEC 7 <= "':W_DATE:'" AND AVEC 8 >= "':W_DATE:'" OR = "" AND AVEC 65 # "O" AND AVEC CodSecteurContrat = "':W_SELECTION:']" PAR CodSecteurContrat PAR NomPrenomAidantContrat'
	END ELSE
		EXECUTE 'SELECT CONTRAT AVEC 1 = "':W_CCN:'" ':W_TYPEPERS:' AND AVEC 2 = "':W_CODEENTITE:'" AND AVEC 7 <= "':W_DATE:'" AND AVEC 8 >= "':W_DATE:'" OR = "" AND AVEC 65 # "O" PAR CodSecteurContrat PAR NomPrenomAidantContrat'
	END
END
*COMMUNE
IF W_TRI = "C" THEN 
	* PAR COMMUNE PAR TYPE DE CONTRAT
	IF W_SELECTION # "" THEN
		EXECUTE 'SELECT CONTRAT AVEC 1 = "':W_CCN:'" ':W_TYPEPERS:' AND AVEC 2 = "':W_CODEENTITE:'" AND AVEC 7 <= "':W_DATE:'" AND AVEC 8 >= "':W_DATE:'" OR = "" AND AVEC 65 # "O" AND AVEC LibCommuneAidant = "':W_SELECTION:'" PAR LibCommuneAidant PAR NomPrenomAidantContrat'
	END ELSE
		EXECUTE 'SELECT CONTRAT AVEC 1 = "':W_CCN:'" ':W_TYPEPERS:' AND AVEC 2 = "':W_CODEENTITE:'" AND AVEC 7 <= "':W_DATE:'" AND AVEC 8 >= "':W_DATE:'" OR = "" AND AVEC 65 # "O" PAR LibCommuneAidant PAR NomPrenomAidantContrat'
	END
END
*TOTALITE
IF W_TRI = "T" THEN 
	EXECUTE 'SELECT CONTRAT AVEC 1 = "':W_CCN:'" ':W_TYPEPERS:' AND AVEC 2 = "':W_CODEENTITE:'" AND AVEC 7 <= "':W_DATE:'" AND AVEC 8 >= "':W_DATE:'" OR = "" AND AVEC 65 # "O" PAR NomPrenomAidantContrat'
END 


W_FIN = 0

* PRODUCTION
W_TOTALHRESCDIP = ""
W_TOTALHRESCDDP = ""

* ADMINISTRATIF
W_TOTALHRESCDIA = ""
W_TOTALHRESCDDA = ""

* TOTAL CDI
W_TOTALCDIP = 0
W_TOTALCDIA = 0

* TOTAL CDD
W_TOTALCDDP = 0
W_TOTALCDDA = 0

W_DIFCONSO = 0
W_DIFACQUIS = 0
W_DIFACQUISPREC = 0

* VARIABLES INITIALISEES
ENR_FICHIERDIF = ""
W_DERNQUALIF = ""
W_DERNSECTEUR = ""
W_DERNCOMMUNE = ""
W_ANCIENAIDANT = ""
W_CAT = ""
READ ENR_ASSOCIATION FROM F.ASSOCIATION,W_CODEENTITE ELSE ENR_ASSOCIATION = ""

ENR_TEMPOSTAT = ""
ENR_TEMPOLISTE = ""
ENR_TEMPOLISTE = "Code;Nom prenom aidant;Employeur;Type contrat;Type personnel;Categorie;Taux horaire;Qualification professionnelle;Secteur;Commune;Droits acquis au ":OCONV(W_DATE2,"D4/"):";Droits acquis au ":OCONV(W_DATE,"D4/"):";Droits consommes;Droits restants"

LOOP
	READNEXT CLE ELSE W_FIN = 1
	UNTIL W_FIN = 1 DO

	W_DIFCONSO = 0
	W_DIFACQUIS = 0
	W_DIFACQUISPREC = 0

	W_CAT = 26
	READ ENR_CONTRAT FROM F.CONTRAT,CLE ELSE ENR_CONTRAT = ""
	READ ENR_CIVILAIDANT FROM F.CIVILAIDANT,CLE[1,5] ELSE ENR_CIVILAIDANT = ""
	READ ENR_SECTEUR FROM F.SECTEUR,ENR_CIVILAIDANT<31> ELSE ENR_SECTEUR = ""

	* TESTE SI RUPTURE QUALIF PRO
	IF W_DERNQUALIF = "" THEN W_DERNQUALIF = ENR_CONTRAT<16,DCOUNT(ENR_CONTRAT<16>,CHAR(253))>
	IF W_DERNQUALIF # ENR_CONTRAT<16,DCOUNT(ENR_CONTRAT<16>,CHAR(253))> AND W_TRI = "Q" THEN 
		GOSUB 10
		W_DERNQUALIF = ENR_CONTRAT<16,DCOUNT(ENR_CONTRAT<16>,CHAR(253))>
	END

	* TESTE SI RUPTURE SECTEUR
	IF W_DERNSECTEUR = "" THEN W_DERNSECTEUR = ENR_CIVILAIDANT<31>
	IF W_DERNSECTEUR # ENR_CIVILAIDANT<31> AND W_TRI = "S" THEN 
		GOSUB 10
		W_DERNSECTEUR = ENR_CIVILAIDANT<31>
	END

	* TESTE SI RUPTURE COMMUNE
	IF W_DERNCOMMUNE = "" THEN W_DERNCOMMUNE = ENR_CIVILAIDANT<11>
	IF W_DERNCOMMUNE # ENR_CIVILAIDANT<11> AND W_TRI = "C" THEN 
		GOSUB 10
		W_DERNCOMMUNE = ENR_CIVILAIDANT<11>
	END

	IF W_CCN # "02" THEN
		* SI PRESTATAIRE
		* RECUPERE DERNIERE GRILLE
		W_DERNGRILLE = ENR_CONTRAT<20,DCOUNT(ENR_CONTRAT<20>,CHAR(253))>
		READ ENR_GRILLESCC FROM F.GRILLESCC,W_DERNGRILLE ELSE ENR_GRILLESCC = ""
		W_CAT = ENR_GRILLESCC<7>
		READ ENR_DIFAIDANT FROM F.DIFAIDANT,CLE[1,5]:ENR_CONTRAT<2> ELSE ENR_DIFAIDANT = ""
		IF W_CAT = "" THEN W_CAT = "Z"
	END ELSE
		* SI MANDATAIRE
		READ ENR_DIFAIDANT FROM F.DIFAIDANT,CLE[1,5]:ENR_CONTRAT<3> ELSE ENR_DIFAIDANT = ""
		W_CAT = "Z"
	END
	
	* PARCOURS DU FICHIER DIFAIDANT (RECUPERE LE RESTANT)
	I = DCOUNT(ENR_DIFAIDANT<1>,CHAR(253))
	LOOP
		UNTIL ENR_DIFAIDANT<1,I> <= W_DATE OR ENR_DIFAIDANT<1,I> = "" DO
		I = I - 1
	REPEAT

	* PARCOURS DU FICHIER DIFAIDANT (RECUPERE LE CONSOMME)
	J = DCOUNT(ENR_DIFAIDANT<1>,CHAR(253))
	LOOP
		UNTIL ENR_DIFAIDANT<1,J> = "" OR J = 0 DO
		IF ENR_DIFAIDANT<1,J> <= W_DATE AND ENR_DIFAIDANT<1,J> >= W_DATE2 THEN W_DIFCONSO = W_DIFCONSO + ENR_DIFAIDANT<3,J>
		J = J - 1
	REPEAT

	* PARCOURS DU FICHIER DIFAIDANT (RECUPERE LE ACQUIS)
	J = DCOUNT(ENR_DIFAIDANT<1>,CHAR(253))
	LOOP
		UNTIL ENR_DIFAIDANT<1,J> = "" OR J = 0 DO
		IF ENR_DIFAIDANT<1,J> <= W_DATE AND ENR_DIFAIDANT<1,J> >= W_DATE2 THEN W_DIFACQUIS = W_DIFACQUIS + ENR_DIFAIDANT<2,J>
		J = J - 1
	REPEAT

	* PARCOURS DU FICHIER DIFAIDANT (RECUPERE LE RESTANT AU DEBUT PERIODE)
	J = DCOUNT(ENR_DIFAIDANT<1>,CHAR(253))
	LOOP
		UNTIL ENR_DIFAIDANT<1,J> = "" OR J = 0 OR W_DIFACQUISPREC # 0 DO
		IF ENR_DIFAIDANT<1,J> <= W_DATE2 THEN W_DIFACQUISPREC = W_DIFACQUISPREC + ENR_DIFAIDANT<4,J>
		J = J - 1
	REPEAT

	IF ENR_DIFAIDANT<1,I> # "" THEN 
		IF ENR_CIVILAIDANT<36> = "" THEN
			IF ENR_DIFAIDANT<6> = "" THEN
				IF ENR_CONTRAT<6> = "P" THEN
					W_TOTALHRESCDIP<SEQ(W_CAT)-64,1,1> = W_TOTALHRESCDIP<SEQ(W_CAT)-64,1,1> + W_DIFACQUISPREC
					W_TOTALHRESCDIP<SEQ(W_CAT)-64,1,2> = W_TOTALHRESCDIP<SEQ(W_CAT)-64,1,2> + W_DIFACQUIS 
					W_TOTALHRESCDIP<SEQ(W_CAT)-64,1,3> = W_TOTALHRESCDIP<SEQ(W_CAT)-64,1,3> + W_DIFCONSO 
					W_TOTALHRESCDIP<SEQ(W_CAT)-64,1,4> = W_TOTALHRESCDIP<SEQ(W_CAT)-64,1,4> + ENR_DIFAIDANT<4,I>
				END ELSE
					W_TOTALHRESCDIA<SEQ(W_CAT)-64,1,1> = W_TOTALHRESCDIA<SEQ(W_CAT)-64,1,1> + W_DIFACQUISPREC
					W_TOTALHRESCDIA<SEQ(W_CAT)-64,1,2> = W_TOTALHRESCDIA<SEQ(W_CAT)-64,1,2> + W_DIFACQUIS 
					W_TOTALHRESCDIA<SEQ(W_CAT)-64,1,3> = W_TOTALHRESCDIA<SEQ(W_CAT)-64,1,3> + W_DIFCONSO 
					W_TOTALHRESCDIA<SEQ(W_CAT)-64,1,4> = W_TOTALHRESCDIA<SEQ(W_CAT)-64,1,4> + ENR_DIFAIDANT<4,I>
				END
			END ELSE
				IF ENR_CONTRAT<6> = "P" THEN
					W_TOTALHRESCDDP<SEQ(W_CAT)-64,1,1> = W_TOTALHRESCDDP<SEQ(W_CAT)-64,1,1> + W_DIFACQUISPREC
					W_TOTALHRESCDDP<SEQ(W_CAT)-64,1,2> = W_TOTALHRESCDDP<SEQ(W_CAT)-64,1,2> + W_DIFACQUIS 
					W_TOTALHRESCDDP<SEQ(W_CAT)-64,1,3> = W_TOTALHRESCDDP<SEQ(W_CAT)-64,1,3> + W_DIFCONSO 
					W_TOTALHRESCDDP<SEQ(W_CAT)-64,1,4> = W_TOTALHRESCDDP<SEQ(W_CAT)-64,1,4> + ENR_DIFAIDANT<4,I>
				END ELSE
					W_TOTALHRESCDDA<SEQ(W_CAT)-64,1,1> = W_TOTALHRESCDDA<SEQ(W_CAT)-64,1,1> + W_DIFACQUISPREC
					W_TOTALHRESCDDA<SEQ(W_CAT)-64,1,2> = W_TOTALHRESCDDA<SEQ(W_CAT)-64,1,2> + W_DIFACQUIS 
					W_TOTALHRESCDDA<SEQ(W_CAT)-64,1,3> = W_TOTALHRESCDDA<SEQ(W_CAT)-64,1,3> + W_DIFCONSO 
					W_TOTALHRESCDDA<SEQ(W_CAT)-64,1,4> = W_TOTALHRESCDDA<SEQ(W_CAT)-64,1,4> + ENR_DIFAIDANT<4,I>
				END
			END
			
			* GENERE FICHIER LISTE
			IF ENR_CONTRAT<1> # "02" THEN
**				ENR_TEMPOLISTE<-1> = CLE[1,5]:";":ENR_CIVILAIDANT<2>:" ":ENR_CIVILAIDANT<3>:";":ENR_ASSOCIATION<1>:";":ENR_CONTRAT<4>:";":ENR_CONTRAT<6>:";":W_CAT:";":ENR_CONTRAT<23,DCOUNT(ENR_CONTRAT<23>,CHAR(253))>/1000:";":ENR_CONTRAT<16,DCOUNT(ENR_CONTRAT<16>,CHAR(253))>:";":ENR_SECTEUR<1>:";":ENR_CIVILAIDANT<11>:";":ENR_DIFAIDANT<2,I>/100:";":ENR_DIFAIDANT<3,I>/100:";":ENR_DIFAIDANT<4,I>/100
				ENR_TEMPOLISTE<-1> = CLE[1,5]:";":ENR_CIVILAIDANT<2>:" ":ENR_CIVILAIDANT<3>:";":ENR_ASSOCIATION<1>:";":ENR_CONTRAT<4>:";":ENR_CONTRAT<6>:";":W_CAT:";":ENR_CONTRAT<23,DCOUNT(ENR_CONTRAT<23>,CHAR(253))>/1000:";":ENR_CONTRAT<16,DCOUNT(ENR_CONTRAT<16>,CHAR(253))>:";":ENR_SECTEUR<1>:";":ENR_CIVILAIDANT<11>:";":W_DIFACQUISPREC/100:";":W_DIFACQUIS/100:";":W_DIFCONSO/100:";":ENR_DIFAIDANT<4,I>/100
			END ELSE
				READ ENR_CIVILAIDE FROM F.CIVILAIDE,ENR_CONTRAT<3> ELSE ENR_CIVILAIDE = ""
				ENR_TEMPOLISTE<-1> = CLE[1,5]:";":ENR_CIVILAIDANT<2>:" ":ENR_CIVILAIDANT<3>:";":ENR_CIVILAIDE<2>:" ":ENR_CIVILAIDE<3>:";":ENR_CONTRAT<4>:";":ENR_CONTRAT<6>:";":W_CAT:";":ENR_CONTRAT<23,DCOUNT(ENR_CONTRAT<23>,CHAR(253))>/1000:";":ENR_CONTRAT<16,DCOUNT(ENR_CONTRAT<16>,CHAR(253))>:";":ENR_SECTEUR<1>:";":ENR_CIVILAIDANT<11>:";":W_DIFACQUISPREC/100:";":W_DIFACQUIS/100:";":W_DIFCONSO/100:";":ENR_DIFAIDANT<4,I>/100
			END
		END
	END
REPEAT

* SI PAS D'ENREGISTREMENT ALORS QUITTE
IF ENR_TEMPOLISTE<2> = "" THEN STOP

GOSUB 10
GOSUB 20
GOSUB 30
GOSUB 40
WRITE ENR_FICHIERDIF ON F.TEMPO,"FICHIERDIF"
STOP


*******************************************************************
* ENREGISTREMENT DE L'ARTICLE POUR LES STATISTIQUES (edition statistiques)
10 *

ENR_TEMPOSTAT = ""
ENR_TEMPOSTAT<1> = OCONV(W_DATE,"D4/")
ENR_TEMPOSTAT<2> = W_CODEENTITE
ENR_TEMPOSTAT<3> = W_CCN

ENR_TEMPOSTAT<4> = "*PRODUCTION*"
FOR J = 1 TO 26
	IF W_TOTALHRESCDIP<J,1,4> # "" OR W_TOTALHRESCDDP<J,1,4> # "" THEN
		ENR_TEMPOSTAT<5, -1> = CHAR((J) + 64)
		IF W_TOTALHRESCDIP<J,1,4> # "" THEN	
			ENR_TEMPOSTAT<6, -1> = W_TOTALHRESCDIP<J>
		END ELSE
			ENR_TEMPOSTAT<6, -1> = "0000"
		END
		IF W_TOTALHRESCDDP<J,1,4> # "" THEN	
			ENR_TEMPOSTAT<7, -1> = W_TOTALHRESCDDP<J>
		END ELSE
			ENR_TEMPOSTAT<7, -1> = "0000"
		END
		W_TOTALCDIP<1,1> = W_TOTALCDIP<1,1> + W_TOTALHRESCDIP<J,1,1> 
		W_TOTALCDIP<1,2> = W_TOTALCDIP<1,2> + W_TOTALHRESCDIP<J,1,2> 
		W_TOTALCDIP<1,3> = W_TOTALCDIP<1,3> + W_TOTALHRESCDIP<J,1,3> 
		W_TOTALCDIP<1,4> = W_TOTALCDIP<1,4> + W_TOTALHRESCDIP<J,1,4> 
		W_TOTALCDDP<1,1> = W_TOTALCDDP<1,1> + W_TOTALHRESCDDP<J,1,1> 
		W_TOTALCDDP<1,2> = W_TOTALCDDP<1,2> + W_TOTALHRESCDDP<J,1,2> 
		W_TOTALCDDP<1,3> = W_TOTALCDDP<1,3> + W_TOTALHRESCDDP<J,1,3> 
		W_TOTALCDDP<1,4> = W_TOTALCDDP<1,4> + W_TOTALHRESCDDP<J,1,4> 
	END
NEXT J

ENR_TEMPOSTAT<8> = "*ADMINISTRATIF*"
FOR J = 1 TO 26
	IF W_TOTALHRESCDIA<J> # "" OR W_TOTALHRESCDDA<J> # "" THEN
		ENR_TEMPOSTAT<9, -1> = CHAR((J) + 64)
		IF W_TOTALHRESCDIA<J,1,4> # "" THEN	
			ENR_TEMPOSTAT<10, -1> = W_TOTALHRESCDIA<J>
		END ELSE
			ENR_TEMPOSTAT<10, -1> = "0000"
		END
		IF W_TOTALHRESCDDA<J,1,4> # "" THEN	
			ENR_TEMPOSTAT<11, -1> = W_TOTALHRESCDDA<J>
		END ELSE
			ENR_TEMPOSTAT<11, -1> = "0000"
		END
		W_TOTALCDIA<1,1> = W_TOTALCDIA<1,1> + W_TOTALHRESCDIA<J,1,1> 
		W_TOTALCDIA<1,2> = W_TOTALCDIA<1,2> + W_TOTALHRESCDIA<J,1,2> 
		W_TOTALCDIA<1,3> = W_TOTALCDIA<1,3> + W_TOTALHRESCDIA<J,1,3> 
		W_TOTALCDIA<1,4> = W_TOTALCDIA<1,4> + W_TOTALHRESCDIA<J,1,4> 
		W_TOTALCDDA<1,1> = W_TOTALCDDA<1,1> + W_TOTALHRESCDDA<J,1,1> 
		W_TOTALCDDA<1,2> = W_TOTALCDDA<1,2> + W_TOTALHRESCDDA<J,1,2> 
		W_TOTALCDDA<1,3> = W_TOTALCDDA<1,3> + W_TOTALHRESCDDA<J,1,3> 
		W_TOTALCDDA<1,4> = W_TOTALCDDA<1,4> + W_TOTALHRESCDDA<J,1,4> 
	END
NEXT J

ENR_TEMPOSTAT<12> = "*TOTAL CDI PRODUCTION*"
ENR_TEMPOSTAT<13> = W_TOTALCDIP
ENR_TEMPOSTAT<14> = "*TOTAL CDD PRODUCTION*"
ENR_TEMPOSTAT<15> = W_TOTALCDDP
ENR_TEMPOSTAT<16> = "*TOTAL CDI ADMINISTRATIF*"
ENR_TEMPOSTAT<17> = W_TOTALCDIA
ENR_TEMPOSTAT<18> = "*TOTAL CDD ADMINISTRATIF*"
ENR_TEMPOSTAT<19> = W_TOTALCDDA
ENR_TEMPOSTAT<20> = "*TOTAL GENERAL*"
ENR_TEMPOSTAT<21,1> = W_TOTALCDIP<1,1> + W_TOTALCDDP<1,1> + W_TOTALCDIA<1,1> + W_TOTALCDDA<1,1>
ENR_TEMPOSTAT<21,2> = W_TOTALCDIP<1,2> + W_TOTALCDDP<1,2> + W_TOTALCDIA<1,2> + W_TOTALCDDA<1,2>
ENR_TEMPOSTAT<21,3> = W_TOTALCDIP<1,3> + W_TOTALCDDP<1,3> + W_TOTALCDIA<1,3> + W_TOTALCDDA<1,3>
ENR_TEMPOSTAT<21,4> = W_TOTALCDIP<1,4> + W_TOTALCDDP<1,4> + W_TOTALCDIA<1,4> + W_TOTALCDDA<1,4>

* CONVERSION DATE INTERNE -> EXTERNE SANS SEPARATEUR
W_DATEEXT = OCONV(W_DATE,"D4/")
W_DATEEXT = CONVERT("/","",W_DATEEXT)

IF W_SELECTION = "" THEN
	IF W_TRI = "Q" THEN WRITE ENR_TEMPOSTAT ON F.TEMPO,"STATDIF":W_DATEEXT:W_CODEENTITE:W_CCN:W_TRI:W_DERNQUALIF
	IF W_TRI = "S" THEN WRITE ENR_TEMPOSTAT ON F.TEMPO,"STATDIF":W_DATEEXT:W_CODEENTITE:W_CCN:W_TRI:W_DERNSECTEUR
	IF W_TRI = "C" THEN WRITE ENR_TEMPOSTAT ON F.TEMPO,"STATDIF":W_DATEEXT:W_CODEENTITE:W_CCN:W_TRI:W_DERNCOMMUNE
	IF W_TRI = "T" THEN WRITE ENR_TEMPOSTAT ON F.TEMPO,"STATDIF":W_DATEEXT:W_CODEENTITE:W_CCN:W_TRI

	IF W_TRI = "Q" THEN ENR_FICHIERDIF<1,-1> = "STATDIF":W_DATEEXT:W_CODEENTITE:W_CCN:W_TRI:W_DERNQUALIF
	IF W_TRI = "S" THEN ENR_FICHIERDIF<1,-1> = "STATDIF":W_DATEEXT:W_CODEENTITE:W_CCN:W_TRI:W_DERNSECTEUR
	IF W_TRI = "C" THEN ENR_FICHIERDIF<1,-1> = "STATDIF":W_DATEEXT:W_CODEENTITE:W_CCN:W_TRI:W_DERNCOMMUNE
	IF W_TRI = "T" THEN ENR_FICHIERDIF<1,-1> = "STATDIF":W_DATEEXT:W_CODEENTITE:W_CCN:W_TRI
	
END ELSE
	WRITE ENR_TEMPOSTAT ON F.TEMPO,"STATDIF":W_DATEEXT:W_CODEENTITE:W_CCN:W_TRI
	ENR_FICHIERDIF<1,-1> = "STATDIF":W_DATEEXT:W_CODEENTITE:W_CCN:W_TRI
END

* PRODUCTION
W_TOTALHRESCDIP = ""
W_TOTALHRESCDDP = ""

* ADMINISTRATIF
W_TOTALHRESCDIA = ""
W_TOTALHRESCDDA = ""

* TOTAL CDI
W_TOTALCDIP = 0
W_TOTALCDIA = 0

* TOTAL CDD
W_TOTALCDDP = 0
W_TOTALCDDA = 0

RETURN

*******************************************************************
* ENREGISTREMENT DE L'ARTICLE POUR LES STATISTIQUES .csv (edition graphique)
20 *
IF W_TRI # "S" AND W_TRI # "T" AND W_SELECTION # "" THEN WRITE ENR_TEMPOLISTE ON F.STATAIDANT,"STATDIFau":W_DATEEXT:"-":W_CODEENTITE:"-":W_CCN:"-":W_TRI:"-":W_SELECTION:".CSV"
IF W_TRI # "S" AND W_TRI # "T" AND W_SELECTION = "" THEN WRITE ENR_TEMPOLISTE ON F.STATAIDANT,"STATDIFau":W_DATEEXT:"-":W_CODEENTITE:"-":W_CCN:"-":W_TRI:".CSV"
IF W_TRI = "S" AND W_SELECTION # "" THEN WRITE ENR_TEMPOLISTE ON F.STATAIDANT,"STATDIFau":W_DATEEXT:"-":W_CODEENTITE:"-":W_CCN:"-":W_TRI:"-":ENR_SECTEUR<1>:".CSV"
IF W_TRI = "S" AND W_SELECTION = "" THEN WRITE ENR_TEMPOLISTE ON F.STATAIDANT,"STATDIFau":W_DATEEXT:"-":W_CODEENTITE:"-":W_CCN:"-":W_TRI:".CSV"
IF W_TRI = "T" THEN WRITE ENR_TEMPOLISTE ON F.STATAIDANT,"STATDIFau":W_DATEEXT:"-":W_CODEENTITE:"-":W_CCN:".CSV"

IF W_TRI # "S" AND W_TRI # "T" AND W_SELECTION # "" THEN ENR_FICHIERDIF<2,-1> = "STATDIFau":W_DATEEXT:"-":W_CODEENTITE:"-":W_CCN:"-":W_TRI:"-":W_SELECTION:".CSV"
IF W_TRI # "S" AND W_TRI # "T" AND W_SELECTION = "" THEN ENR_FICHIERDIF<2,-1> = "STATDIFau":W_DATEEXT:"-":W_CODEENTITE:"-":W_CCN:"-":W_TRI:".CSV"
IF W_TRI = "S" AND W_SELECTION # "" THEN ENR_FICHIERDIF<2,-1> = "STATDIFau":W_DATEEXT:"-":W_CODEENTITE:"-":W_CCN:"-":W_TRI:"-":ENR_SECTEUR<1>:".CSV"
IF W_TRI = "S" AND W_SELECTION = "" THEN ENR_FICHIERDIF<2,-1> = "STATDIFau":W_DATEEXT:"-":W_CODEENTITE:"-":W_CCN:"-":W_TRI:".CSV"
IF W_TRI = "T" THEN ENR_FICHIERDIF<2,-1> = "STATDIFau":W_DATEEXT:"-":W_CODEENTITE:"-":W_CCN:".CSV"
WRITE ENR_FICHIERDIF ON F.TEMPO,"FICHIERDIF"

RETURN

*******************************************************************
* ENREGISTREMENT DE L'ARTICLE POUR LES LISTES (edition detail)
30 *

* BOUCLE EN FAISANT UN CONVERT DE ; EN SEP DE MV
M = 1
LOOP
UNTIL ENR_TEMPOLISTE<M> = "" DO
	ENR_TEMPOLISTE<M> = CONVERT(";",CHAR(253),ENR_TEMPOLISTE<M>)
	M = M + 1
REPEAT

IF W_TRI # "S" AND W_TRI # "T" AND W_SELECTION # "" THEN WRITE ENR_TEMPOLISTE ON F.TEMPO,"STATLISTEDIF":W_DATEEXT:"-":W_CODEENTITE:"-":W_CCN:"-":W_TRI:"-":W_SELECTION
IF W_TRI # "S" AND W_TRI # "T" AND W_SELECTION = "" THEN WRITE ENR_TEMPOLISTE ON F.TEMPO,"STATLISTEDIF":W_DATEEXT:"-":W_CODEENTITE:"-":W_CCN:"-":W_TRI
IF W_TRI = "S" AND W_SELECTION # "" THEN WRITE ENR_TEMPOLISTE ON F.TEMPO,"STATLISTEDIF":W_DATEEXT:"-":W_CODEENTITE:"-":W_CCN:"-":W_TRI:"-":ENR_SECTEUR<1>
IF W_TRI = "S" AND W_SELECTION = "" THEN WRITE ENR_TEMPOLISTE ON F.TEMPO,"STATLISTEDIF":W_DATEEXT:"-":W_CODEENTITE:"-":W_CCN:"-":W_TRI
IF W_TRI = "T" THEN WRITE ENR_TEMPOLISTE ON F.TEMPO,"STATLISTEDIF":W_DATEEXT:"-":W_CODEENTITE:"-":W_CCN

IF W_TRI # "S" AND W_TRI # "T" AND W_SELECTION # "" THEN ENR_FICHIERDIF<3,-1> = "STATLISTEDIF":W_DATEEXT:"-":W_CODEENTITE:"-":W_CCN:"-":W_TRI:"-":W_SELECTION
IF W_TRI # "S" AND W_TRI # "T" AND W_SELECTION = "" THEN ENR_FICHIERDIF<3,-1> = "STATLISTEDIF":W_DATEEXT:"-":W_CODEENTITE:"-":W_CCN:"-":W_TRI
IF W_TRI = "S" AND W_SELECTION # "" THEN ENR_FICHIERDIF<3,-1> = "STATLISTEDIF":W_DATEEXT:"-":W_CODEENTITE:"-":W_CCN:"-":W_TRI:"-":ENR_SECTEUR<1>
IF W_TRI = "S" AND W_SELECTION = "" THEN ENR_FICHIERDIF<3,-1> = "STATLISTEDIF":W_DATEEXT:"-":W_CODEENTITE:"-":W_CCN:"-":W_TRI
IF W_TRI = "T" THEN ENR_FICHIERDIF<3,-1> = "STATLISTEDIF":W_DATEEXT:"-":W_CODEENTITE:"-":W_CCN
WRITE ENR_FICHIERDIF ON F.TEMPO,"FICHIERDIF"

RETURN



40 *

EXECUTE 'SELECT TEMPO AVEC 0 = "STATDIF]" PAR 0'

ENR_TEMPOGLOBAL = ""
W_TOTALGLOBAL = ""

W_FIN = 0
LOOP
	READNEXT CLE ELSE W_FIN = 1
	UNTIL W_FIN = 1 DO

	READ ENR_TEMPO FROM F.TEMPO,CLE ELSE ENR_TEMPO = ""

	IF W_SELECTION = "" THEN 
		ENR_TEMPOGLOBAL<-1> = "R-":CLE[22,99]
	END ELSE
		ENR_TEMPOGLOBAL<-1> = "R-":W_SELECTION
	END
	ENR_TEMPOGLOBAL<-1> = ENR_TEMPO<13>
	ENR_TEMPOGLOBAL<-1> = ENR_TEMPO<15>
	ENR_TEMPOGLOBAL<-1> = ENR_TEMPO<17>
	ENR_TEMPOGLOBAL<-1> = ENR_TEMPO<19>
	ENR_TEMPOGLOBAL<-1> = ENR_TEMPO<21>

	* PROD
	* CDI
	W_TOTALGLOBAL<1,1> = W_TOTALGLOBAL<1,1> + ENR_TEMPO<13,1> 
	W_TOTALGLOBAL<1,2> = W_TOTALGLOBAL<1,2> + ENR_TEMPO<13,2>
	W_TOTALGLOBAL<1,3> = W_TOTALGLOBAL<1,3> + ENR_TEMPO<13,3> 
	W_TOTALGLOBAL<1,4> = W_TOTALGLOBAL<1,4> + ENR_TEMPO<13,4> 
	* CDD
	W_TOTALGLOBAL<2,1> = W_TOTALGLOBAL<2,1> + ENR_TEMPO<15,1>
	W_TOTALGLOBAL<2,2> = W_TOTALGLOBAL<2,2> + ENR_TEMPO<15,2>
	W_TOTALGLOBAL<2,3> = W_TOTALGLOBAL<2,3> + ENR_TEMPO<15,3>
	W_TOTALGLOBAL<2,4> = W_TOTALGLOBAL<2,4> + ENR_TEMPO<15,4>

	* ADM
	* CDI
	W_TOTALGLOBAL<3,1> = W_TOTALGLOBAL<3,1> + ENR_TEMPO<17,1>
	W_TOTALGLOBAL<3,2> = W_TOTALGLOBAL<3,2> + ENR_TEMPO<17,2> 
	W_TOTALGLOBAL<3,3> = W_TOTALGLOBAL<3,3> + ENR_TEMPO<17,3> 
	W_TOTALGLOBAL<3,4> = W_TOTALGLOBAL<3,4> + ENR_TEMPO<17,4>
	* CDD
	W_TOTALGLOBAL<4,1> = W_TOTALGLOBAL<4,1> + ENR_TEMPO<19,1>
	W_TOTALGLOBAL<4,2> = W_TOTALGLOBAL<4,2> + ENR_TEMPO<19,2>
	W_TOTALGLOBAL<4,3> = W_TOTALGLOBAL<4,3> + ENR_TEMPO<19,3>
	W_TOTALGLOBAL<4,4> = W_TOTALGLOBAL<4,4> + ENR_TEMPO<19,4>

	* GENE
	* PROD
	W_TOTALGLOBAL<5,1> = W_TOTALGLOBAL<5,1> + ENR_TEMPO<13,1> + ENR_TEMPO<15,1>
	W_TOTALGLOBAL<5,2> = W_TOTALGLOBAL<5,2> + ENR_TEMPO<13,2> + ENR_TEMPO<15,2>
	W_TOTALGLOBAL<5,3> = W_TOTALGLOBAL<5,3> + ENR_TEMPO<13,3> + ENR_TEMPO<15,3>
	W_TOTALGLOBAL<5,4> = W_TOTALGLOBAL<5,4> + ENR_TEMPO<13,4> + ENR_TEMPO<15,4>
	* ADM
	W_TOTALGLOBAL<6,1> = W_TOTALGLOBAL<6,1> + ENR_TEMPO<17,1> + ENR_TEMPO<19,1>
	W_TOTALGLOBAL<6,2> = W_TOTALGLOBAL<6,2> + ENR_TEMPO<17,2> + ENR_TEMPO<19,2>
	W_TOTALGLOBAL<6,3> = W_TOTALGLOBAL<6,3> + ENR_TEMPO<17,3> + ENR_TEMPO<19,3>
	W_TOTALGLOBAL<6,4> = W_TOTALGLOBAL<6,4> + ENR_TEMPO<17,4> + ENR_TEMPO<19,4>
	* TOTAL
	W_TOTALGLOBAL<7,1> = W_TOTALGLOBAL<7,1> + ENR_TEMPO<21,1>
	W_TOTALGLOBAL<7,2> = W_TOTALGLOBAL<7,2> + ENR_TEMPO<21,2>
	W_TOTALGLOBAL<7,3> = W_TOTALGLOBAL<7,3> + ENR_TEMPO<21,3>
	W_TOTALGLOBAL<7,4> = W_TOTALGLOBAL<7,4> + ENR_TEMPO<21,4>

REPEAT

ENR_TEMPOGLOBAL<-1> = "TOTAL GENERAL"
ENR_TEMPOGLOBAL<-1> = W_TOTALGLOBAL<1>
ENR_TEMPOGLOBAL<-1> = W_TOTALGLOBAL<2>
ENR_TEMPOGLOBAL<-1> = W_TOTALGLOBAL<3>
ENR_TEMPOGLOBAL<-1> = W_TOTALGLOBAL<4>
ENR_TEMPOGLOBAL<-1> = W_TOTALGLOBAL<5>
ENR_TEMPOGLOBAL<-1> = W_TOTALGLOBAL<6>
ENR_TEMPOGLOBAL<-1> = W_TOTALGLOBAL<7>

WRITE ENR_TEMPOGLOBAL ON F.TEMPO,"STATDIF":W_DATEEXT:W_CODEENTITE:W_CCN:W_TRI:"RECAP"

RETURN
