*************************************************************
*  selection des contrats actif en fonction des paramtres  *
*  et insertion du commentaire au bon endroit               *
*                                                           *
*  Fanny                20/05/2005                          *
*************************************************************

* Ouvertures des fichiers

EXECUTE "SET-THOUS ."
EXECUTE "SET-DEC ,"
OPEN "","CONTRAT" TO F.CONTRAT ELSE PRINT "OUVERTURE CONTRAT" ;* en lecture criture

EXECUTE "DATE.FORMAT"

**********************************************
*  Rcupration des arguments                *
**********************************************
PROCREAD ARGUMENTS ELSE STOP

* periode de paie format yyyymm
W_Periode=FIELD(ARGUMENTS,"|",2)
W_Entite=FIELD(ARGUMENTS,"|",3)
W_Convention=FIELD(ARGUMENTS,"|",4)
* type contrat : D,I ou T
W_TypeContrat=FIELD(ARGUMENTS,"|",5)
* Salaire : H, M ou T
W_Salaire=FIELD(ARGUMENTS,"|",6)
* Statut : P, A ou T
W_Statut=FIELD(ARGUMENTS,"|",7)
* selection : C , S ou T
W_Selection=FIELD(ARGUMENTS,"|",8)
* W_CodeSelection est gal  rien si W_Selection est gal  T sinon correspond au code du secteur ou nom de la commune
W_CodeSelection=FIELD(ARGUMENTS,"|",9)
W_Commentaire=FIELD(ARGUMENTS,"|",10)


************************************
* selection des contrats actif     *
************************************

	W_Mois=W_Periode[5,2]
	W_An=W_Periode[1,4]

	W_DateDeb = ICONV("01/":W_Mois:"/":W_An,"D4/")

	W_Mois=W_Mois+1
	IF W_Mois="13" THEN
		W_Mois="01"
		W_An=W_An+1
	END

	W_DateFin = ICONV("01/":W_Mois:"/":W_An,"D4/")-1

	W_Requete = 'SELECT CONTRAT AVEC 65 = "" AND AVEC 7 <= "':W_DateFin:'" AND AVEC 8 >= "':W_DateDeb:'" OR = ""'
	
	IF W_Entite # "" THEN
		W_Requete = W_Requete:' AND AVEC 2="':W_Entite:'"'
	END 
	IF W_Convention # "" THEN
		W_Requete = W_Requete:' AND AVEC 1="':W_Convention:'"'
	END 
	IF W_TypeContrat="D" THEN
		W_Requete = W_Requete:' AND AVEC 4="':W_TypeContrat:'"'
	END ELSE
		IF W_TypeContrat="I" THEN
			W_Requete = W_Requete:' AND AVEC 4="':W_TypeContrat:'"'
		END 
	END 
	IF W_Salaire="H" THEN
		W_Requete = W_Requete:' AND AVEC 5="':W_Salaire:'"'
	END ELSE
		IF W_Salaire="M" THEN
			W_Requete = W_Requete:' AND AVEC 5="':W_Salaire:'"'
		END 
	END
	IF W_Statut="P" THEN
		W_Requete = W_Requete:' AND AVEC 6="':W_Statut:'"'
	END ELSE
		IF W_Statut="A" THEN
			W_Requete = W_Requete:' AND AVEC 6="':W_Statut:'"'
		END 
	END
	IF W_Selection="C" THEN
		W_Requete = W_Requete:' AND AVEC LibCommuneAidant="':W_CodeSelection:'"'
	END ELSE
		IF W_Selection="S" THEN
			W_Requete = W_Requete:' AND AVEC SecteurContrat="':W_CodeSelection:'"'
		END 
	END

	EXECUTE W_Requete

   	W_End="FAUX"

**********************************************
* INSERTION DU COMMENTAIRE AU BON ENDOIT     *
**********************************************
   	LOOP
      	READNEXT W_Cle ELSE W_End = "VRAI"
   	WHILE W_End = "FAUX" DO
         READ ENR_CONTRAT FROM F.CONTRAT,W_Cle ELSE ENR_CONTRAT=""

     	   i=0
	   LOOP
		i=i+1
	   WHILE ENR_CONTRAT<87,i> # "" AND W_Periode > ENR_CONTRAT<87,i> DO
	   REPEAT
 	     
		IF ENR_CONTRAT<87,i> = "" OR ENR_CONTRAT<87,i> = W_Periode THEN
		   ENR_CONTRAT=REPLACE(ENR_CONTRAT,87,i;W_Periode)
		   ENR_CONTRAT=REPLACE(ENR_CONTRAT,88,i;W_Commentaire)			
		END ELSE
		   ENR_CONTRAT=INSERT(ENR_CONTRAT,87,i;W_Periode)
		   ENR_CONTRAT=INSERT(ENR_CONTRAT,88,i;W_Commentaire)
		END 
		WRITE ENR_CONTRAT ON F.CONTRAT,W_Cle

   	REPEAT

STOP
