C CHIDBD    SOURCE    OF166741  23/10/16    21:15:03     11754          

CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
C        DEFINITION ET OUVERTURE D'UN FICHIER BASE DE DONNEES
C        IOCHI NUMERO DU FICHIER
C        CHA  NOM DU FICHIER
C         ON VERIFIE QUE  LE NO IOCHI N'EST PAS DEJA ATRIBUE
C         SINON ON INCREMENTE DE 1
CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
      SUBROUTINE CHIDBD(IOCHI,CHA)

      IMPLICIT INTEGER(I-N)
      IMPLICIT REAL*8(A-H,O-Z)

-INC PPARAM
-INC CCOPTIO

      CHARACTER*(*) CHA

      LOGICAL IEX
      external long

   10 CONTINUE
      IEX=.FALSE.
      INQUIRE(UNIT=IOCHI,OPENED=IEX)
      IF(IEX)THEN
           IOCHI=IOCHI+1
           IF(IOCHI.GT.100)THEN
                INTERR(1)=IOCHI
                CALL ERREUR(424)
                RETURN
           ENDIF
           GO TO 10
      ENDIF
      L=LONG(CHA)
      OPEN(UNIT=IOCHI,FILE=CHA(1:L),ERR=100)
C*dbg      write(ioimp,*) 'CHIDBD = ouverture',iochi,L,' =>'//CHA(1:L)//'<='
      RETURN

  100 CONTINUE
      INTERR(1)=IOCHI
      L1=MIN(L,40)
      MOTERR(1:40)='                                        '
      MOTERR(1:L1)= CHA(1:L1)
      IF (L.GT.40) MOTERR(38:40)='...'
      CALL ERREUR(424)
      RETURN

      END

 
