****************************************
* CREATION DU FICHIER COMPTESTIERS.TXT *
* POUR LA COMPTA CCMX / ASMAD          *
* VANESSA                              * 
* 03/12/2002			       *
****************************************

EXECUTE "SET-THOUS ."
EXECUTE "SET-DEC ,"
EXECUTE "DATE.FORMAT"
OPEN "","ASSOCIATION" TO F.ASSOCIATION ELSE PRINT "OUVERTURE ASSOCIATION" ;* en lecture
OPEN "","BALANCEAUX" TO F.BALANCEAUX ELSE PRINT "OUVERTURE BALANCEAUX" ;* en lecture 
OPEN "","CIVILAIDE" TO F.CIVILAIDE ELSE PRINT "OUVERTURE CIVILAIDE" ;* en lecture
OPEN "","ELTSFACTAIDE" TO F.ELTSFACTAIDE ELSE PRINT "OUVERTURE ELTSFACTAIDE" ;* en lecture
OPEN "","LIENCOMPTA" TO F.LIENCOMPTA ELSE PRINT "OUVERTURE LIENCOMPTA" ;* en lecture criture
OPEN "","PARAMENTITECOMPTA" TO F.PARAMENTITECOMPTA ELSE PRINT "OUVERTURE PARAMENTITECOMPTA" ;* en lecture


LOOP
PRINT "Code entit juridique ?"
INPUT W_CodeAsso 
READ ENR_ASSOCIATION FROM F.ASSOCIATION,W_CodeAsso ELSE W_CodeAsso = ""
WHILE W_CodeAsso = ""
REPEAT


   READ ENR_PARAMENTITECOMPTA FROM F.PARAMENTITECOMPTA,W_CodeAsso ELSE ENR_PARAMENTITECOMPTA=""

   EXECUTE 'SELECT BALANCEAUX AVEC 0 = "N0':W_CodeAsso:']" PAR NomPrenomBalanceAux'

   W_End="FAUX"
   W_Rang=0
   W_Tab=""
   W_Nom=""
   W_NomCourt=""
   W_NomLong=""
   W_Ind=1
   ENR_LIENCOMPTA=""

   LOOP
      READNEXT W_Cle ELSE W_End = "VRAI"
   WHILE W_End = "FAUX" DO

      READ ENR_CIVILAIDE FROM F.CIVILAIDE,W_Cle[6,5] ELSE ENR_CIVILAIDE=""

      W_Temp=""
      W_Nom=""

      * cl
      W_Temp = W_Cle[6,5]:";"

      * compte centralisation
      W_Temp = W_Temp:ENR_PARAMENTITECOMPTA<16>[1,9]:";"

      * nom court
      W_Nom = ENR_CIVILAIDE<2>:" ":ENR_CIVILAIDE<3>
      IF LEN(W_Nom) > 25 THEN
         W_NomCourt=W_Nom[1,25]
      END ELSE
         W_NomCourt=W_Nom
      END

      W_Temp = W_Temp:W_NomCourt:";"

      * nom long
      IF LEN(W_Nom) > 60 THEN
         W_NomLong=W_Nom[1,60]
      END ELSE
         W_NomLong=W_Nom
      END

      W_Temp = W_Temp:W_NomLong:";"

      READ ENR_ELTSFACTAIDE FROM F.ELTSFACTAIDE,W_Cle[6,5] ELSE ENR_ELTSFACTAIDE=""
      IF ENR_ELTSFACTAIDE<2>="" THEN

         * nom du tiers
         W_Nom=ENR_CIVILAIDE<1>:" ":ENR_CIVILAIDE<2>
         IF LEN(W_Nom) > 32 THEN
            W_Nom=W_Nom[1,32]
         END
         W_Temp = W_Temp:W_Nom:";":W_Nom:";"

         * adresse
         W_Tab=ENR_CIVILAIDE
         W_Rang=5
         GOSUB 10

         W_Temp = W_Temp:W_Adresse:";"

         * cplment adresse
         IF LEN(ENR_CIVILAIDE<9>) > 32 THEN
            W_Nom=ENR_CIVILAIDE<9>[1,32]
         END ELSE
            W_Nom=ENR_CIVILAIDE<9>
         END
         W_Temp = W_Temp:W_Nom:";"

         * code postal
         W_Temp = W_Temp:ENR_CIVILAIDE<10>:";"

         * ville
         IF LEN(ENR_CIVILAIDE<11>) > 25 THEN
            W_Nom=ENR_CIVILAIDE<11>[1,25]
         END ELSE
            W_Nom=ENR_CIVILAIDE<11>
         END
         W_Temp = W_Temp:W_Nom:";"

      END ELSE

         * nom du tiers
         W_Nom=ENR_ELTSFACTAIDE<2>

         IF LEN(W_Nom) > 32 THEN
            W_Nom=W_Nom[1,32]
         END
         W_Temp = W_Temp:W_Nom:";;"

         * adresse
         W_Tab=ENR_ELTSFACTAIDE
         W_Rang=3
         GOSUB 10

         W_Temp = W_Temp:W_Adresse:";"

         * cplment adresse
         IF LEN(ENR_ELTSFACTAIDE<7>) > 32 THEN
            W_Nom=ENR_ELTSFACTAIDE<7>[1,32]
         END ELSE
            W_Nom=ENR_ELTSFACTAIDE<7>
         END
         W_Temp = W_Temp:W_Nom:";"

         * code postal
         W_Temp = W_Temp:ENR_ELTSFACTAIDE<8>:";"

         * ville
         IF LEN(ENR_ELTSFACTAIDE<9>) > 25 THEN
            W_Nom=ENR_ELTSFACTAIDE<9>[1,25]
         END ELSE
            W_Nom=ENR_ELTSFACTAIDE<9>
         END
         W_Temp = W_Temp:W_Nom:";"

      END

      W_Temp = W_Temp:ENR_CIVILAIDE<40>[1,3]

      ENR_LIENCOMPTA<W_Ind>=W_Temp
      W_Ind=W_Ind+1

   REPEAT

   
   WRITE ENR_LIENCOMPTA ON F.LIENCOMPTA,W_CodeAsso:"CompteTiers.txt"

STOP

**************************************************************
* mise en forme adresse

10

   W_Adresse = ""
   IF W_Tab<W_Rang> # "" THEN
      W_Adresse = W_Tab<W_Rang>:" "
   END
   IF W_Tab<W_Rang+1> # "" THEN
      W_Adresse = W_Adresse:W_Tab<W_Rang+1>:" "
   END
   IF W_Tab<W_Rang+2> # "" THEN
      W_Adresse = W_Adresse:W_Tab<W_Rang+2>:" "
   END
   IF W_Tab<W_Rang+3> # "" THEN
      W_Adresse = W_Adresse:W_Tab<W_Rang+3>
   END

   IF LEN(W_Adresse) > 32 THEN
      W_Adresse=W_Adresse[1,32]
   END

RETURN
