* COMPTE LE NBRE DE BENEFICIAIRE MANDAT + PREST AYANT DES HRES (019 OU 018) SUR UNE PERIODE
* 

EXECUTE "SET-THOUS ."
EXECUTE "SET-DEC ,"
EXECUTE "DATE.FORMAT"
OPEN "","DETAILCALCUL" TO F.DETAILCALCUL ELSE STOP
OPEN "","CONTRAT" TO F.CONTRAT ELSE STOP
OPEN "","CIVILAIDE" TO F.CIVILAIDE ELSE STOP
OPEN "","CIVILAIDANT" TO F.CIVILAIDANT ELSE STOP

PRINT "             Comptage des salaris sur une priode par dpartement"
1
PRINT "PERIODE A TRAITER (AAAAMM) - DEBUT:"
INPUT W_PERIODEDEB
IF W_PERIODEDEB MATCH "6N" ELSE GOSUB 1
2
PRINT "PERIODE A TRAITER (AAAAMM) - FIN:"
INPUT W_PERIODEFIN
IF W_PERIODEFIN MATCH "6N" ELSE GOSUB 2

PRINTER ON

PRINT "                         STATISTIQUES POUR LA DDTE                      "
PRINT ""
******************************************************************
*COMPTE LES EMPLOYEURS SUR L'ANNEE
******************************************************************

* MANDATAIRE 
EXECUTE 'SELECT DETAILCALCUL AVEC @ID>="[':W_PERIODEDEB:'" AND <= "[':W_PERIODEFIN:'" AND AVEC ConvColContratDetailCalcul = "02" AND AVEC TypePersonnel = "P" PAR CodPosAide PAR CodeAideDetailCalcul'
W_FINI="FAUX"
W_COMPTEUR=0
W_ANCIENCODE=""
W_DEP=""
W_HRESPAYEES=0
W_NBEMPLOYEUR=0
W_ANCEMPL=0

LOOP
   READNEXT W_CLE ELSE W_FINI="VRAI"
WHILE W_FINI="FAUX" DO
	READ ENR_CONTRAT FROM F.CONTRAT,W_CLE[1,8] ELSE ENR_CONTRAT=""
    	READ ENR_CIVILAIDE FROM F.CIVILAIDE,ENR_CONTRAT<3> ELSE ENR_CIVILAIDE= ""
    	READ ENR_DETAILCALCUL FROM F.DETAILCALCUL,W_CLE ELSE ENR_DETAILCALCUL= ""
	W_HRESPAYEES=W_HRESPAYEES+ENR_DETAILCALCUL<6>

	W_DEP1=ENR_CIVILAIDE<10>[1,2]
	IF W_DEP1<>W_DEP THEN
		IF W_DEP= "" THEN
			W_DEP=W_DEP1
		END ELSE
*			PRINT "NOMBRE DE SALARIES MANDATAIRE DU DEP             ":W_DEP:" ":W_COMPTEUR
*			W_HRESPAYEES=W_HRESPAYEES/100
*			W_HRESPAYEES=W_HRESPAYEES "R2"
*			PRINT "NOMBRE D'HEURES PAYEES MANDATAIRE DU DEP         ":W_DEP:" ":W_HRESPAYEES
			PRINT "NOMBRE D'EMPLOYEURS DU DEP ":W_DEP:" ":W_NBEMPLOYEUR
			W_HRESPAYEES=0
			W_NBEMPLOYEUR=0
			W_DEP=W_DEP1
			W_COMPTEUR=0
		END
	END
    IF W_ANCIENCODE # W_CLE[1,5] THEN
	W_ANCIENCODE=W_CLE[1,5]
   	W_COMPTEUR=W_COMPTEUR+1
    END
	
    IF W_ANCEMPL # ENR_CONTRAT<3> THEN
	W_ANCEMPL=ENR_CONTRAT<3>
	W_NBEMPLOYEUR=W_NBEMPLOYEUR+1
    END
REPEAT
*PRINT "NOMBRE DE SALARIES MANDATAIRE DU DEP             ":W_DEP:" ":W_COMPTEUR
*W_HRESPAYEES=W_HRESPAYEES/100
*W_HRESPAYEES=W_HRESPAYEES "R2"
*PRINT "NOMBRE D'HEURES PAYEES MANDATAIRE DU DEP         ":W_DEP:" ":W_HRESPAYEES
PRINT "NOMBRE D'EMPLOYEURS DU DEP ":W_DEP:" ":W_NBEMPLOYEUR
PRINT ""



************************************************************
* compte salaries sur l'annee
************************************************************
EXECUTE 'SELECT DETAILCALCUL AVEC @ID>="[':W_PERIODEDEB:'" AND <= "[':W_PERIODEFIN:'" AND AVEC ConvColContratDetailCalcul="02" PAR CodDepAide PAR @ID'
W_FINI="FAUX"
W_COMPTEUR=0
W_ANCIENCODE=""
W_DEP=""

LOOP
   READNEXT W_CLE ELSE W_FINI="VRAI"
WHILE W_FINI="FAUX" DO
    	READ ENR_CONTRAT FROM F.CONTRAT,W_CLE[1,8] ELSE ENR_CONTRAT= ""
    	READ ENR_CIVILAIDE FROM F.CIVILAIDE,ENR_CONTRAT<3> ELSE ENR_CIVILAIDE= ""

	W_DEP1=ENR_CIVILAIDE<10>[1,2]
	IF W_DEP1<>W_DEP THEN
		IF W_DEP= "" THEN
			W_DEP=W_DEP1
		END ELSE

			PRINT "NOMBRE DE SALARIES MANDATAIRE POUR LE DEP ":W_DEP:" ":W_COMPTEUR
			W_COMPTEUR=0

			W_DEP=W_DEP1
			W_COMPTEUR=0
		END
	END

    IF W_ANCIENCODE # W_CLE[1,5] THEN
	W_ANCIENCODE=W_CLE[1,5]
   	W_COMPTEUR=W_COMPTEUR+1
    END
REPEAT
PRINT "NOMBRE DE SALARIES MANDATAIRE POUR LE DEP ":W_DEP:" ":W_COMPTEUR
PRINT ""


**************************************************************************
*CALCUL SALARIE AU 31/12 DE L'ANNEE EN COURS
**************************************************************************

*W_DATEFINCONTRAT=""
*W_DATEFINCONTRAT= "31/12/"
*W_DATEFINCONTRAT=W_DATEFINCONTRAT:W_PERIODEFIN[1,4]


W_MOISFIN=W_PERIODEFIN[5,2]
W_ANNEEFIN=W_PERIODEFIN[1,4]
W_MOISFIN=W_MOISFIN+1
IF W_MOISFIN="13"THEN
	W_MOISFIN="01"
	W_ANNEEFIN=W_ANNEEFIN+1
END

W_MOISFIN=W_MOISFIN "R(%2)"
W_DATEFIN="01/":W_MOISFIN:"/":W_ANNEEFIN
W_DATEFIN=ICONV(W_DATEFIN,"D4/")
W_DATEFIN=W_DATEFIN-1
W_DATEFIN=OCONV(W_DATEFIN,"D4/")

EXECUTE 'SELECT DETAILCALCUL AVEC @ID>="[':W_PERIODEDEB:'" AND <= "[':W_PERIODEFIN:'" AND AVEC ConvColContratDetailCalcul = "02" AND AVEC TypePersonnel = "P" AND AVEC DateFinClair >="':W_DATEFIN:'" OR = "" PAR CodDepAide PAR @ID '
W_FINI="FAUX"
W_COMPTEUR=0
W_ANCIENCODE=""
W_DEP=""


LOOP
   READNEXT W_CLE ELSE W_FINI="VRAI"
WHILE W_FINI="FAUX" DO
	READ ENR_CONTRAT FROM F.CONTRAT,W_CLE[1,8] ELSE ENR_CONTRAT=""
    	READ ENR_CIVILAIDE FROM F.CIVILAIDE,ENR_CONTRAT<3> ELSE ENR_CIVILAIDE= ""

	W_DEP1=ENR_CIVILAIDE<10>[1,2]
	IF W_DEP1<>W_DEP THEN
		IF W_DEP= "" THEN
			W_DEP=W_DEP1
		END ELSE

			PRINT "NOMBRE DE SALARIES MANDATAIRE AU ":W_DATEFIN:" DU DEP ":W_DEP:" ":W_COMPTEUR
			W_COMPTEUR=0

			W_DEP=W_DEP1
			W_COMPTEUR=0
		END
	END

    IF W_ANCIENCODE # W_CLE[1,5] THEN
	W_ANCIENCODE=W_CLE[1,5]
   	W_COMPTEUR=W_COMPTEUR+1
    END
	
REPEAT

PRINT "NOMBRE DE SALARIES MANDATAIRE AU ":W_DATEFIN:" DU DEP ":W_DEP:" ":W_COMPTEUR


STOP



