Télécharger fnomob.eso

Retour à la liste

Numérotation des lignes :

fnomob
  1. C FNOMOB SOURCE PV090527 24/12/19 21:15:01 12103
  2.  
  3. C=======================================================================
  4. C A PARTIR D UNE TABLE DES OBJETS DU TYPE DONNE
  5. C 1-ON APPELLE SNOM2 POUR TESTER SI LE POINTEUR EST DANS LA PILE
  6. C ITLACC
  7. C 2-SI OUI, ON CHERCHE S IL EST DEJA DANS ISGTR ASSOCIE
  8. C 3-SI NON,ON AJOUTE NOM-NOM-INDICE DANS ISGTR ASSOCIE
  9. C
  10. C APPELE PAR : FILLNO HATRIG HATSTR
  11. C APPELE : SNOM1
  12. C : SNOM2
  13. C ---ATTENTION ---------1 TABLE EST DEFINIE PAR 6 VALEURS----------
  14. C SI LA TABLE CHANGE, IL FAUT CHANGER LA VALEUR DU PAS
  15. C DANS LA BOUCLE (6)
  16. C=======================================================================
  17. SUBROUTINE FNOMOB (ITITI,ITLACC,ISGTR,CTYP,ILISNB)
  18.  
  19. IMPLICIT INTEGER(I-N)
  20.  
  21. -INC PPARAM
  22. -INC CCOPTIO
  23. -INC CCNOYAU
  24. -INC TMCOLAC
  25. SEGMENT ILISNB
  26. INTEGER ILISOB(MLON)
  27. CHARACTER*(LONOM) ILISNO(MLON)
  28. ENDSEGMENT
  29.  
  30. CHARACTER*(*) CTYP
  31. CHARACTER*(LONOM) CNOM
  32. EXTERNAL LONG
  33.  
  34. ITITI=0
  35. CALL LISTNO(CTYP,ITITI,ILISNB)
  36.  
  37. IF (ITITI.EQ.0) GOTO 1
  38. DO I = 1, ITITI
  39. IP1=ILISOB(I)
  40. CALL SNOM2(IP1,ITLACC,K)
  41. IF (K.EQ.0) GO TO 2
  42. CNOM=ILISNO(I)
  43. C AVERTISSEMENT SI UN NOM DE VARIABLE EST TRONQUE A 8 CARACTERES
  44. IF (IONIVE.NE.0.AND.IONIVE.LT.22.AND.LONG(CNOM).GT.8) THEN
  45. MOTERR(1:24)=CNOM(1:24)
  46. MOTERR(25:32)=CNOM(1:8)
  47. CALL ERREUR(-360)
  48. ENDIF
  49. CALL SNOM1(CNOM,ISGTR,IRET)
  50. IF (IRET.GT.0) THEN
  51. ISGTRI(IRET)=K
  52. ELSE
  53. KS=ISGTRI(/1)+1
  54. SEGADJ ISGTR
  55. ISGTRC(KS)=CNOM
  56. ISGTRI(KS)=K
  57. ENDIF
  58. 2 CONTINUE
  59. ENDDO
  60.  
  61. 1 CONTINUE
  62. RETURN
  63. END
  64.  
  65.  
  66.  
  67.  

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