EXECUTE "SET-THOUS ."
EXECUTE "SET-DEC ,"
EXECUTE "DATE.FORMAT"
OPEN "", "TPSREMPLACEAIDANT" TO F.TPSREMPLACEAIDANT ELSE STOP
OPEN "", "TPSDETAILSINTERV" TO F.TPSDETAILSINTERV ELSE STOP
OPEN "", "ABSENCESAIDANT" TO F.ABSENCESAIDANT ELSE STOP
OPEN "", "TPSTEMPO" TO F.TPSTEMPO ELSE STOP
OPEN "", "MOULMAJREMPLACEMENTS" TO F.NOUVEAU ELSE
	EXECUTE 'CREER-FICHIER MOULMAJREMPLACEMENTS 1,1'
	OPEN "", "MOULMAJREMPLACEMENTS" TO F.NOUVEAU ELSE STOP
END

OPEN "", "COMPTEUR" TO F.COMPTEUR ELSE STOP
READ ENR_COMPTEUR FROM F.COMPTEUR,"999" THEN
   IF ENR_COMPTEUR<18> # "O" THEN 
	STOP
   END
END

OPEN "DICT","ABSENCESAIDANT" TO F.DICT ELSE STOP
ENR= ""
ENR<1> = "V"
ENR<2> = 'OCONV(@ID,@VM:"TTPSREMPLACEAIDANT;X;;0")' 
ENR<3> = ""
ENR<4> = "Presence TpsRemplaceaidant"
ENR<5> = "12R"
ENR<6> = "S"
WRITE ENR ON F.DICT, "PresenceTps"

W_CleRetour="MiseANiveau360bis"

W_Count = 0
EXECUTE 'SELECT ABSENCESAIDANT AVEC PresenceTps = "" AND AVEC NumMotifAidant # "18" AND # "19" AND # "20" AND # "21" AND AVEC 2 >= "13881"'
EXECUTE 'SAUVE-LISTE W_ReqPrincipale'
EXECUTE 'LISTE W_ReqPrincipale' RETURNING MSGCODE
IF MSGCODE<1> # "209" THEN
  SELECT F.ABSENCESAIDANT TO W_Req
  W_FinPrincipale = "F"
  LOOP
    READNEXT W_Cle FROM W_Req ELSE W_FinPrincipale = "V"
  WHILE W_FinPrincipale = "F"
    READ ENR_TPSREMPLACEAIDANT FROM F.TPSREMPLACEAIDANT, W_Cle ELSE
     GOSUB 200	
     WRITE ENR_NOUVEAU ON F.TPSREMPLACEAIDANT, W_Cle
    END
  REPEAT

END
PRINT W_Count :" artciles crs"
STOP

200 *********************************************************************
*	Renseignement de ala liste des interventions  remplacer :	*
*************************************************************************
ENR_NOUVEAU = ""
READ ENR_ABSENCESAIDANT FROM F.ABSENCESAIDANT, W_Cle  THEN 
W_Count = W_Count + 1
PRINT W_Cle
W_DebAbs = W_Cle[8,5]
W_FinAbs = ENR_ABSENCESAIDANT<2>
W_RequeteDetails = ""
 IF ENR_ABSENCESAIDANT<2> - W_Cle[8,5] <= 60 THEN
   W_ParamsDetails = ""
   W_ParamsDetails = "AFFICHEPLANNING |":W_CleRetour:"||PMIS|":W_Cle[8,5]:"|":ENR_ABSENCESAIDANT<2>:"|":"|":"|":W_Cle[1,5]:"|REMPLACEMENT||":W_Cle
   PRINT W_ParamsDetails
   W_RequeteDetails = ""
   EXECUTE W_ParamsDetails
   READ W_RequeteDetails FROM F.TPSTEMPO, "AFFICHEPLANNING":W_CleRetour ELSE W_RequeteDetails = ""
   IF W_RequeteDetails = "Echec" THEN         
      W_ParamsDetails = ""
      W_ParamsDetails = 'SSELECT TPSDETAILSINTERV AVEC 0 = "':W_Cle[1,5]:']" AND AVEC DateDebInterv <= "':ENR_ABSENCESAIDANT<2>:'" AND AVEC 1 => "':W_Cle[8,5]:'" OR = "" PAR CodeAide PAR CodeActInterv PAR JourInterv PAR HeureInterv'
                   
      EXECUTE W_ParamsDetails
      W_Fin = "F"
      LOOP
	READNEXT W_Cle2 ELSE W_Fin = "V"
      WHILE W_Fin = "F"
		W_RequeteDetails<-1> = W_Cle2
      REPEAT
         
   END

 END ELSE
   W_ParamsDetails = ""
   W_ParamsDetails = 'SSELECT TPSDETAILSINTERV AVEC 0 = "':W_Cle[1,5]:']" AND AVEC DateDebInterv <= "':ENR_ABSENCESAIDANT<2>:'" AND AVEC 1 => "':W_Cle[8,5]:'" OR = "" PAR CodeAide PAR CodeActInterv PAR JourInterv PAR HeureInterv'
                   
   EXECUTE W_ParamsDetails
   W_Fin = "F"
   LOOP
	READNEXT W_Cle2 ELSE W_Fin = "V"
   WHILE W_Fin = "F"
	W_RequeteDetails<-1> = W_Cle2
   REPEAT

 END
 i = 0
 LOOP
  i = i + 1
 WHILE W_RequeteDetails<i> # ""
   ENR_NOUVEAU<1,i> = W_RequeteDetails<i>
 REPEAT

END ELSE
	ENR_NOUVEAU = ""
	W_DebAbs = W_Cle[8,5]
	* Nb : ne devrait pas arriver !
      W_FinAbs = W_Cle[8,5] + 30

END

RETURN
