C OOOUNI    SOURCE    PV090527  26/04/24    08:23:25     12524          
      SUBROUTINE OOOUNI(imod)
C  Initialisation des branchements des  unites de sortie :
C  sortie listing : JLST : stdout par defaut
C  sortie erreur : JERR : stderr par defaut
C  sortie resultat : JOUT : esope.out par defaut
C  sortie debormdement : JDEB : unite 20

%INC ILHDCOM
%INC IOOUNIT
      CHARACTER*500 cvarenv
      integer       lcvarenv
      CHARACTER*500 cficout
      integer       lcficout
C      CHARACTER*500 cficinp
C      integer       lcficinp
      CHARACTER*500 cficerr
      integer       lcficerr
      CHARACTER*500 cficlst
      integer       lcficlst
      CHARACTER*500 cmesserr
      DATA JOUT/0/

C Unite du fichier de debordement
      JDEB =20

C     Nom par defaut

      cvarenv='ESOPE_LST'//char(0)
      lcvarenv=500
      call ooozen(cvarenv,lcvarenv)
      if (lcvarenv.gt.0) then
         jlst = 47
         cficlst=cvarenv(1:lcvarenv)
         lcficlst = lcvarenv
         OPEN (UNIT=JLST,FILE=cficlst(1:lcficlst),ERR=995)
      else
         jlst = 6
         cficlst='stdout'
         lcficlst = 6
      endif

      cvarenv='ESOPE_ERR'//char(0)
      lcvarenv=500
      call ooozen(cvarenv,lcvarenv)
      if (lcvarenv.gt.0) then
         jerr = 44
         cficerr=cvarenv(1:lcvarenv)
         lcficerr = lcvarenv
         open (unit=jerr,file=cficerr(1:lcficerr),err=995)
      else
         jerr = 0
         cficerr='stderr'
         lcficerr = 6
      endif

C  Prevision d'ouverture directe de fichier
C      cvarenv='ESOPE_IN'//char(0)
C      lcvarenv=500
C      call ooozen(cvarenv,lcvarenv)
C      if (lcvarenv.gt.0) then
C         jinp = 3
C         cficinp=cvarenv(1:lcvarenv)
C         lcficinp = lcvarenv
C         open (unit=jinp,file=cficinp(1:lcficinp),err=995,
C     &   action="read",status="old")
C      else
C         jinp = 5
C         cficinp='stdin'
C         lcficinp = 5
C      endif

      if (imod.ne.0) then
      cvarenv='ESOPE_OUT'//char(0)
      lcvarenv=500
      call ooozen(cvarenv,lcvarenv)
      if (lcvarenv.gt.0) then
         jout = 98
         cficout=cvarenv(1:lcvarenv)
         lcficout = lcvarenv
         open (unit=jout,file=cficout(1:lcficout),err=995)
      elseif (jout.lt.0) then
         jout = 98
         cficout = 'esope.out'
         lcficout = 9
         open (unit=jout,file=cficout(1:lcficout),err=995)
      endif
      endif


**    write(jlst,*) 'Detail des sorties :'
**    write(jlst,*) '   Listing : ', cficlst(1:lcficlst)
**    write(jlst,*) '   Erreur  : ', cficerr(1:lcficerr)
C      write(jlst,*) '   Entree  : ',cficinp(1:lcficinp)
**    write(jlst,*) '   Sortie  : ',cficout(1:lcficout)
      return
 995  heanom = 'OOOUNI'
      cmesserr = 'Impossible d''ouvrir le fichier'//cvarenv(1:lcvarenv)
      write (jerr,*) cmesserr
      STOP 12
      end
 
