Télécharger fnomob.eso

Retour à la liste

Numérotation des lignes :

  1. C FNOMOB SOURCE JC220346 18/12/04 21:15:26 9991
  2. SUBROUTINE FNOMOB (ITITI,ITLACC,ISGTR,CTYP,ILISNB)
  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. IMPLICIT INTEGER(I-N)
  18.  
  19. -INC PPARAM
  20. -INC CCOPTIO
  21. -INC CCNOYAU
  22. -INC TMCOLAC
  23. SEGMENT ILISNB
  24. INTEGER ILISOB(MLON)
  25. CHARACTER*(LONOM) ILISNO(MLON)
  26. ENDSEGMENT
  27. CHARACTER*(*) CTYP
  28. CHARACTER*(LONOM) CNOM
  29. EXTERNAL LONG
  30. C
  31. ITITI=0
  32. CALL LISTNO(CTYP,ITITI,ILISNB)
  33. C
  34. IF (ITITI.EQ.0) GO TO 1
  35. DO 2 I=1,ITITI
  36. IP1=ILISOB(I)
  37. CALL SNOM2(IP1,ITLACC,K)
  38. IF (K.EQ.0) GO TO 2
  39. CNOM=ILISNO(I)
  40. IF (IONIVE.LT.22.AND.LONG(CNOM).GT.8) THEN
  41. C AVERTISSEMENT SI UN NOM DE VARIABLE EST TRONQUE A 8 CARACTERES
  42. MOTERR(1:24)=CNOM(1:24)
  43. MOTERR(25:32)=CNOM(1:8)
  44. CALL ERREUR(-360)
  45. ENDIF
  46. CALL SNOM1(CNOM,ISGTR,IRET)
  47. IF (IRET.GT.0) THEN
  48. ISGTRI(IRET)=K
  49. ELSE
  50. KS=ISGTRI(/1)+1
  51. SEGADJ ISGTR
  52. ISGTRC(KS)=CNOM
  53. ISGTRI(KS)=K
  54. ENDIF
  55. 2 CONTINUE
  56. 1 RETURN
  57. END
  58.  
  59.  
  60.  
  61.  
  62.  
  63.  
  64.  
  65.  
  66.  
  67.  

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