***********************************************************
*
* TRANSPOSITION DU FICHIER ACCORD D'UN MODULE GARDE
* VERS FICHIER ACCORD
*
* NOVEMBRE 1998                           DIDIER
***********************************************************
EXECUTE 'DATE.FORMAT'
PROCREAD VARIABLES ELSE STOP
MODULE=FIELD(VARIABLES," ",2)
OPEN "","VOC" TO F.VOC ELSE STOP
ENRVOC=""
ENRVOC=REPLACE(ENRVOC,1;"F")
CHEMIN="D:\TRANSFERT\":MODULE
ENRVOC=REPLACE(ENRVOC,2;CHEMIN:"\CAISSE")
ENRVOC=REPLACE(ENRVOC,3;CHEMIN:"\D_CAISSE")
WRITE ENRVOC ON F.VOC,"CAISSE"
ENRVOC=REPLACE(ENRVOC,2;CHEMIN:"\EMPLOYEURS")
ENRVOC=REPLACE(ENRVOC,3;CHEMIN:"\D_EMPLOYEURS")
WRITE ENRVOC ON F.VOC,"EMPLOYEURS"
ENRVOC=REPLACE(ENRVOC,2;CHEMIN:"\ACCORD")
ENRVOC=REPLACE(ENRVOC,3;CHEMIN:"\D_ACCORD")
WRITE ENRVOC ON F.VOC,"ACCORDG"
OPEN "DICT","ACCORDG" TO F.ACCORDG ELSE STOP
ENREG=""
ENREG=REPLACE(ENREG,1;'D')
ENREG=REPLACE(ENREG,2;'3')
ENREG=REPLACE(ENREG,3;'D4/')
ENREG=REPLACE(ENREG,4;'D.DEBUT')
ENREG=REPLACE(ENREG,5;'10R')
ENREG=REPLACE(ENREG,6;'M')
WRITE ENREG ON F.ACCORDG,"3BIS"
ENREG=REPLACE(ENREG,2;'4')
ENREG=REPLACE(ENREG,4;'D.FIN')
WRITE ENREG ON F.ACCORDG,"4BIS"
OPEN "","ACCORDG" TO F.ACCORDG ELSE STOP
OPEN "","EMPLOYEURS" TO F.EMPLOYEURS ELSE STOP
OPEN "","ACCORD" TO F.ACCORD ELSE STOP
OPEN "","CAISSE" TO F.CAISSE ELSE STOP
OPEN "","PERIODESPAIE" TO F.PERIODESPAIE ELSE STOP
READ ENRPERIODESPAIE FROM F.PERIODESPAIE,"1" ELSE STOP
PERIODEPAIECOURS=EXTRACT(ENRPERIODESPAIE,1)
CODEPB1=""
DATESYSTEME=DATE()
DATESYSTEME=OCONV(DATESYSTEME,"D4 ")
MOIS=DATESYSTEME[4,2]
ANNEE=DATESYSTEME[7,4]
IF MOIS="01" THEN
 ANNEE=ANNEE-1
END ELSE
 MOIS=MOIS-1
 IF MOIS MATCH "1N" THEN MOIS="0":MOIS
END
ANNEE=DATESYSTEME[7,4]-1
APRENDRE="01/01/":ANNEE
*** TRAITEMENT
EXECUTE 'TSELECT ACCORDG AVEC 4BIS >= "':APRENDRE:'" PAR @ID PAR-DECR 3BIS PAR-DECR 4BIS'
10 READNEXT CLEACC ELSE
 DELETE F.VOC,"CAISSE"
 DELETE F.VOC,"EMPLOYEURS"
 DELETE F.VOC,"ACCORDG"
 STOP
END
READ ENRACCORDANC FROM F.ACCORDG,CLEACC ELSE GOTO 10
CODEPB=CLEACC[1,4]
IF CODEPB1#CODEPB THEN
 CODEPB1=CODEPB
 NOORDRE=0
 READ ENRBENEF FROM F.EMPLOYEURS,CODEPB ELSE ENRBENEF=""
 CLECIVILAIDE=EXTRACT(ENRBENEF,50)
 NUMPREST=EXTRACT(ENRBENEF,28)
 NUMPREST=""
 I=1
 LOOP
  IF I MATCH "1N" THEN I="00":I
  IF I MATCH "2N" THEN I="0":I
  READ ENRACCORD FROM F.ACCORD,CLECIVILAIDE:I ELSE ENRACCORD=""
  UNTIL ENRACCORD="" DO
   I=I+1
 REPEAT
 NOORDRE=I-1
END
ENRACCORD=""
CODECAISSE=EXTRACT(ENRACCORDANC,1)
READ ENRCAISSE FROM F.CAISSE,CODECAISSE ELSE ENRCAISSE=""
ACCORDSMENSUELS=EXTRACT(ENRCAISSE,20)
TYPEPARTICIPATION=EXTRACT(ENRCAISSE,21)
REPORTCREDIT=EXTRACT(ENRCAISSE,22)
MUTUELLEMFPACC=""
CODEORGCHG=EXTRACT(ENRCAISSE,30)
DATEACC=EXTRACT(ENRACCORDANC,2)
DATEDEBACC=EXTRACT(ENRACCORDANC,3)
HISTPERIODEACC=OCONV(DATEDEBACC,"D4 ")
HISTPERIODEACC=HISTPERIODEACC[7,4]:HISTPERIODEACC[4,2]
DATEFINACC=EXTRACT(ENRACCORDANC,4)
HHMONTACC=EXTRACT(ENRACCORDANC,5)
DATEEFFETACC=DATEDEBACC
PARTBENEFORGCHG=EXTRACT(ENRACCORDANC,6)
IF ACCORDSMENSUELS="O" AND REPORTCREDIT="O" THEN
 IF TYPEPARTICIPATION="H" THEN
  HISTREPRESACC=EXTRACT(ENRACCORDANC,8)
 END ELSE
  HISTREPRESACC=EXTRACT(ENRACCORDANC,8)
 END
END
ENRACCORD=REPLACE(ENRACCORD,1;CODEORGCHG)
ENRACCORD=REPLACE(ENRACCORD,2;NUMPREST)
ENRACCORD=REPLACE(ENRACCORD,4;MUTUELLEMFPACC)
ENRACCORD=REPLACE(ENRACCORD,5;DATEDEBACC)
ENRACCORD=REPLACE(ENRACCORD,6;DATEFINACC)
ENRACCORD=REPLACE(ENRACCORD,7;DATEACC)
ENRACCORD=REPLACE(ENRACCORD,8;"1")
ENRACCORD=REPLACE(ENRACCORD,9;HHMONTACC)
ENRACCORD=REPLACE(ENRACCORD,10,1;"0")
ENRACCORD=REPLACE(ENRACCORD,11,1;DATEEFFETACC)
ENRACCORD=REPLACE(ENRACCORD,12,1;"0")
ENRACCORD=REPLACE(ENRACCORD,13,1;PARTBENEFORGCHG)
IF HISTPERIODEACC<PERIODEPAIECOURS THEN
 ENRACCORD=REPLACE(ENRACCORD,14,1;HISTPERIODEACC)
 ENRACCORD=REPLACE(ENRACCORD,15,1;"0")
 ENRACCORD=REPLACE(ENRACCORD,16,1;"0")
 IF ACCORDSMENSUELS="O" AND REPORTCREDIT="O" THEN
  ENRACCORD=REPLACE(ENRACCORD,17,1;HISTREPRESACC)
 END ELSE
  ENRACCORD=REPLACE(ENRACCORD,17,1;HHMONTACC) 
 END
END
NOORDRE=NOORDRE+1
IF NOORDRE MATCH "1N" THEN NOORDRE="00":NOORDRE
IF NOORDRE MATCH "2N" THEN NOORDRE="0":NOORDRE
WRITE ENRACCORD ON F.ACCORD,CLECIVILAIDE:NOORDRE
GOTO 10
