Télécharger erreur.eso

Retour à la liste

Numérotation des lignes :

erreur
  1. C ERREUR SOURCE PV090527 25/01/10 21:15:03 12121
  2. C
  3. C EDITION DES MESSAGES D'ERREURS
  4. C
  5. SUBROUTINE ERREUR(ITYYP)
  6.  
  7. IMPLICIT INTEGER(I-N)
  8. IMPLICIT REAL*8(A-H,O-Z)
  9.  
  10.  
  11. -INC PPARAM
  12. -INC CCOPTIO
  13. -INC CCNOYAU
  14. -INC SMBLOC
  15. -INC CCASSIS
  16.  
  17. EXTERNAL LONG
  18. CHARACTER*10 FMT
  19. CHARACTER*1000 CHERR(2),CHEN(2)
  20. CHARACTER*1000 CHLU(2)
  21.  
  22. DATA FMT/'(1X,A...) '/
  23.  
  24.  
  25. C ETAIT-ON DEJA EN ERREUR
  26. C On positionne JERR au MAXI entre l'erreur par ASSISTANT et l'erreur GLOBALE
  27. jerr=MAX(IERR,IERGLB)
  28. C On positionne aussi IERR pour ne pas sortir avec ierr=0
  29. ierr=MAX(IERR,IERGLB)
  30.  
  31. C
  32. C EN TETE DE MESSAGE D'ERREUR
  33. ITYP = ITYYP
  34. C NIVEAU=0
  35. CALL ERREU1(0,CHLU,NIVEAU,NBL)
  36. * on n'emet qu'un seul message d'erreur avant nouvelle instruction
  37. IF(jerr .NE. 0.and.niveau.GT.0) RETURN
  38. IF (NBL.EQ.0) GOTO 10
  39. CALL ERREU2(CHLU,CHEN,NBL,ITYP)
  40. C
  41. C DANS LE CAS DE MESSAGE ISSU DE LIRE ON REGARDE SI MESLIR A ETE
  42. C UTILISE.
  43. C
  44. ITYPAN=ITYP
  45. IF( ITYP.EQ.37) THEN
  46. IF( MESERR.NE.0) ITYP= MESERR
  47. MESERR=0
  48. ENDIF
  49.  
  50. C MESSAGE D'ERREUR
  51. CALL ERREU1(ITYP,CHLU,NIVEAU,NBL)
  52. * on n'emet qu'un seul message d'erreur avant nouvelle instruction
  53. IF(jerr .NE. 0.and.niveau.GT.0) RETURN
  54. IF(ITYPAN.EQ.37) NIVEAU=2
  55. IF (NBL.EQ.0) GOTO 10
  56. CALL ERREU2(CHLU,CHERR,NBL,ITYP)
  57. C
  58. if (niveau.gt.3) return
  59. IERR =NIVEAU
  60. IERGLB=NIVEAU
  61.  
  62. C - pour les ASSISTANTS
  63. ith=0
  64. if (nbesc.ne.0) ith=oothrd
  65. if (ith.ne.0) then
  66. if ( (IERR .GT. 0) .and. (ierper.lt.3) ) then
  67. MERRES = ierres
  68. SEGACT MERRES*MOD
  69. LOSIER = .TRUE.
  70. IASSER = ith
  71. SEGDES MERRES
  72. mescla = imescl(ith)
  73. jjjerr = ITYYP
  74. end if
  75. end if
  76. IERMAX=MAX0(IERR,IERMAX)
  77. C est on dans le mode erreur controle ??
  78. if (ierper.eq.4.and.ierr.ne.0) return
  79. C
  80. IF (NIVEAU.NE.0) THEN
  81. ILON=LONG(CHEN(1))
  82. WRITE (FMT(6:8),FMT='(I3)') ILON
  83. WRITE (IOIMP,FMT=FMT) CHEN(1)
  84. ENDIF
  85.  
  86. ILON=LONG(CHERR(1))
  87.  
  88. C Les Warnings ne sont pas affichés en OPTI ECHO -1
  89. IF ((IECHO .GT. -1) .OR. (ITYYP .GE. 0)) THEN
  90.  
  91. C Affichage du message d'erreur ici (Ligne 1)
  92. WRITE (FMT(6:8),FMT='(I3)') ILON
  93. WRITE (IOIMP,FMT=FMT) CHERR(1)
  94.  
  95. IF (NBL.GE.2) THEN
  96. C Affichage du message d'erreur ici (Ligne 2)
  97. ILON=LONG(CHERR(2))
  98. WRITE (FMT(6:8),FMT='(I3)') ILON
  99. WRITE (IOIMP,FMT=FMT) CHERR(2)
  100. ENDIF
  101. ENDIF
  102.  
  103. C CB : Entry dans depmac qui ne fait rien à ce jour (09/02/2015)
  104. C IF (IIMPI.NE.0.AND.ITYP.GE.1) CALL GIBTRB
  105.  
  106. 10 CONTINUE
  107.  
  108. C CB : Entry dans depmac qui ne fait rien à ce jour (09/02/2015)
  109. C if (ierr.gt.1) call GIBTRB
  110.  
  111. IF (IERMAX.GT.2.AND.NIVEAU.GT.0) CALL FIN
  112. C cas erreur fatale
  113. IF (IERR.GT.0.AND.IERPER.EQ.1.AND.NIVEAU.GT.0) CALL FIN
  114. C cas ou on ignore les erreurs
  115. IF (IERPER.GE.3) RETURN
  116. IF (IERR.GT.0) THEN
  117. MBERR=MAX(IERR,MBERR)
  118. IF (IOLEC.NE.IOTER) THEN
  119. CALL ERREU1(-1,CHLU,NIVEAU,NBL)
  120. IF (NBL.EQ.0) RETURN
  121. CALL ERREU2(CHLU,CHERR,NBL,ITYP)
  122. ILON=LONG(CHERR(1))
  123. WRITE (FMT(6:8),FMT='(I3)') ILON
  124. WRITE (IOIMP,FMT=FMT) CHERR(1)
  125. IOLEC=IOTER
  126. CALL GINT2
  127. ENDIF
  128. ENDIF
  129. END
  130.  
  131.  
  132.  
  133.  
  134.  
  135.  
  136.  
  137.  
  138.  
  139.  
  140.  
  141.  
  142.  
  143.  
  144.  
  145.  
  146.  
  147.  
  148.  
  149.  
  150.  
  151.  
  152.  

© Cast3M 2003 - Tous droits réservés.
Mentions légales