Télécharger evreco.eso

Retour à la liste

Numérotation des lignes :

  1. C EVRECO SOURCE CB215821 16/12/05 21:39:23 9237
  2. SUBROUTINE EVRECO(LCOUL)
  3. IMPLICIT INTEGER(I-N)
  4. IMPLICIT REAL*8(A-H,O-Z)
  5. C=======================================================================
  6. C OPTION RECO DE L'OPERATEUR EVOL
  7. C
  8. C.1.EVOLUTION D'UN DDL DANS L'OBJET SOLUTION:
  9. C MEVOL = EVOL COUL RECO MSOLUT BASE TYPE PT1 COMP (INSTANTS) ;
  10. C ---- ---- ---- ----
  11. C
  12. C.2.EVOLUTION DE PLUSIEURS DDL DANS L'OBJET SOLUTION:
  13. C MEVOL = EVOL COUL RECO MSOLUT BASE TYPE CHP1 (INSTANTS) ;
  14. C.3.EVOLUTION DE PLUSIEURS DDL DANS L'OBJET TABLE
  15. C MEVOL = EVOL COUL RECO TRESU TBASE TYPE PT1 COMP (INSTANTS) ;
  16. C ---- ---- ---- ----
  17. C
  18. C COUL : COULEUR DE LA (OU DES) COURBE(S)
  19. C MEVOL : OBJET DE TYPE EVOLUTION
  20. C MSOLUT : OBJET SOLUTION
  21. C TYPE : MOT CLE:TYPE DE LA VARIABLE (DEPL,VITE,ACCE,CONT..)
  22. C COMP : NOM DE LA COMPOSANTE CHOISIE
  23. C INSTANTS: PROCEDURE FACULTATIVE POUR CHOISIR LES CAS DE SORTIE
  24. C PROGX :OBJET LISTREEL, LISTE DES TEMPS A SORTIR
  25. C LECTC :OBJET LISTENTI, LISTE DES CAS A SORTIR
  26. C RIEN :L'OBJET EVOLUTION PORTE SUR TOUS LES CAS PRESENTS
  27. C DANS LE MSOLUT
  28. C
  29. C BASE : BASE ELEMENTAIRE
  30. C BASE STRU N
  31. C
  32. C PT1 : POINT OU MELEME A EXTRAIRE
  33. C CHP1 : CHPOINT CONTENANT LES POINTS ET DDL (FABRIQUE PAR
  34. C EXEMPLE PAR MANU CHPO )
  35. C
  36. C LES OBJETS PT1,CHP1 SERVENT A REPERER DANS LES CHAMPS
  37. C CHOISIS, LE(S) POINT(S) QUI INTERESSENT L'EVOLUTION.
  38. C
  39. C CREATION : 16/10/85, FARVACQUE
  40. C
  41. C=======================================================================
  42. -INC CCOPTIO
  43. -INC SMSOLUT
  44. -INC SMTABLE
  45. -INC SMBASEM
  46. -INC SMEVOLL
  47. -INC SMELEME
  48. -INC SMLENTI
  49. -INC SMLMOTS
  50. -INC SMCHPOI
  51. LOGICAL L0,L1
  52. SEGMENT NUMOO
  53. INTEGER NUMO(N),KLIST(N)
  54. CHARACTER*4 NUDDL(N)
  55. ENDSEGMENT
  56. CHARACTER*4 TI1,CHA4
  57. CHARACTER*8 ITYPE,ITYP1,CTYP,TYPRET,CHARRE
  58. CHARACTER*72 TI,MCHA,NOMCO,MTIT1
  59. CHARACTER*4 MOTIT1(1)
  60. DATA MOTIT1/'LEGE'/
  61. POINTEUR LCOUL.MLENTI
  62. C
  63. C LECTURE OPTIONNELLE DU TITRE DE LA SOUS EVOLUTION DE LA COURBE (LEGE) :
  64. MTIT1=' '
  65. ITIT1=0
  66. CALL LIRMOT(MOTIT1,1,ITIT1,0)
  67. IF(ITIT1.EQ.1) THEN
  68. CALL LIRCHA(MTIT1,1,IRETOU)
  69. IF(IERR.NE.0) RETURN
  70. ENDIF
  71.  
  72. C=======================================================================
  73. ICONT=0
  74. KPSMO=0
  75. ISOLU=0
  76. ITABL=0
  77. *
  78. *---- type du prochain objet @ lire ( TABLE ou SOLUTION )
  79. *
  80. CALL QUETYP (CTYP,1,IRETOU)
  81. IF (IERR.NE.0) RETURN
  82.  
  83. c-----SYNTAXE AVEC LISTCHPO
  84. IF (CTYP.EQ.'LISTCHPO') THEN
  85. *
  86. * LISTCHPO DES COEFFICIENTS DE PROJECTION
  87. * =======================================
  88. CALL LIROBJ('LISTCHPO',ILCHP1,1,IRET)
  89. IF (IERR.NE.0) RETURN
  90. *
  91. * LISTE DES INSTANTS
  92. * ==================
  93. CALL LIROBJ('LISTREEL',ILREE1,1,IRET)
  94. IF (IERR.NE.0) RETURN
  95. *
  96. * TABLE DE MODES
  97. * ==============
  98. CALL LIRTAB('BASE_MODALE',ITBAS1,1,IRET)
  99. IF (IERR.NE.0) RETURN
  100. *
  101. * NOMBRE DE MODES
  102. * ===============
  103. CALL LIRENT(NMOD1,0,IRET)
  104. IF (IRET.EQ.0) NMOD1=0
  105. *
  106. * LISTE DES COMPOSANTES
  107. * =====================
  108. ILMOT1=0
  109. CALL LIROBJ('LISTMOTS',ILMOT1,0,IRET)
  110. IF (IRET.EQ.0) THEN
  111. CALL LIRCHA(CHA4,0,IRETOU)
  112. IF (IRETOU.GT.0) THEN
  113. JGN=4
  114. JGM=1
  115. SEGINI,MLMOTS
  116. MOTS(1)=CHA4
  117. ILMOT1=MLMOTS
  118. ENDIF
  119. ENDIF
  120. *
  121. * GEOMETRIE
  122. * =========
  123. CALL LIROBJ('POINT',IPO1,0,IRET)
  124. IF (IRET.NE.0) THEN
  125. NBNN=1
  126. NBELEM=1
  127. NBSOUS=0
  128. NBREF=0
  129. SEGINI,MELEME
  130. ITYPEL=1
  131. NUM(1,1)=IPO1
  132. IMA1=MELEME
  133. ELSE
  134. CALL LIROBJ('MAILLAGE',IMA1,0,IRET)
  135. IF (IRET.EQ.0) THEN
  136. MOTERR(1:40)='POINT MAILLAGE'
  137. CALL ERREUR(471)
  138. RETURN
  139. ENDIF
  140. ENDIF
  141. *
  142. * CALCUL DE LA RECOMBINAISON MODALE
  143. * =================================
  144. CALL RECLCH(ILCHP1,ITBAS1,NMOD1,ILCHP2)
  145. IF (IERR.NE.0) RETURN
  146. *
  147. * CREATION DE L'OBJET EVOLUTION
  148. * =============================
  149. CALL CREVLC(ILREE1,ILCHP2,IMA1,ILMOT1,LCOUL,MTIT1,IEVOL1)
  150. IF (IERR.NE.0) RETURN
  151. CALL ECROBJ('EVOLUTIO',IEVOL1)
  152. *
  153. RETURN
  154.  
  155. ENDIF
  156.  
  157. SEGACT,LCOUL
  158. ICOUL=LCOUL.LECT(1)
  159. SEGDES,LCOUL
  160.  
  161. *
  162. * --- on lit le nom du champ @ traiter et le nom de la composante
  163. CALL LIRCHA(MCHA,1,IRETOU)
  164. IF(IERR.NE.0) RETURN
  165. IF (MCHA.EQ.'CONT') ICONT = 1
  166. IF (MCHA.EQ.'REAC') ICONT = 2
  167. LCHALU=IRETOU
  168. CALL LIRCHA(NOMCO,0,IRETOU)
  169. IF(IRETOU.EQ.0) NOMCO=' '
  170. *
  171. * --- on recup}re le point ou le maillage ou le chpoint
  172. CALL LIROBJ('POINT ',IRET,0,IRETOU)
  173. IF (IRETOU.EQ.0) THEN
  174. CALL LIROBJ('MAILLAGE',IRET,0,IRETOU)
  175. IF (IRETOU.EQ.0) THEN
  176. CALL LIROBJ('CHPOINT ',IRET,0,IRETOU)
  177. IF (IRETOU.EQ.0) THEN
  178. * on ne trouve pas le support qui contient les points
  179. CALL ERREUR(248)
  180. RETURN
  181. ELSE
  182. ITYPE='CHPOINT'
  183. ENDIF
  184. ELSE
  185. ITYPE='MAILLAGE'
  186. ENDIF
  187. ELSE
  188. ITYPE='POINT'
  189. ENDIF
  190. iptu = iret
  191. *--------------------------------------------
  192. *---cas d'un objet de type TABLE ------------
  193. *--------------------------------------------
  194. call lirtab('PASAPAS',ITAP,0,iretou)
  195. if (iretou.gt.0) then
  196. call lirobj('MMODEL', IPMODE,1,iretou)
  197. if (ierr.ne.0) return
  198.  
  199. CALL LIROBJ('MCHAML',IPIN,1,IRETOU)
  200. if (ierr.ne.0) return
  201. CALL REDUAF(IPIN,IPMODE,IPCHA1,0,IR,KER)
  202. IF(IR .NE. 1) CALL ERREUR(KER)
  203. IF(IERR .NE. 0) RETURN
  204.  
  205. if (iretou.gt.0) call evrec6(itap,ipmode,ipcha1,mcha,nomco,
  206. &itype,iptu,ipevo)
  207. if (ierr.ne.0) return
  208. if (ipevo.gt.0) call ecrobj('EVOLUTION',ipevo)
  209. return
  210. endif
  211.  
  212. IF (CTYP(1:5).EQ.'TABLE') THEN
  213. ITABL = 1
  214. CALL LIRTAB ('RESULTAT_DYNE',ISTA,1,IRETOU)
  215. IF (IERR.NE.0) RETURN
  216. CALL LIRTAB ('BASE_MODALE',ISBM,0,IRETOU)
  217. IF (IRETOU.EQ.0) THEN
  218. CALL LIRTAB ('ENSEMBLE_DE_BASES',ISEB,1,IRETOU)
  219. IF (IERR.NE.0) RETURN
  220. IT = 0
  221. 56 CONTINUE
  222. IT = IT + 1
  223. TYPRET = ' '
  224. CALL ACCTAB (ISEB,'ENTIER',IT,X0,' ',L0,IRET0,
  225. & TYPRET,I1,X1,CHARRE,L1,ISBM)
  226. IF (ISBM.NE.0 .AND. TYPRET.EQ.'TABLE ') THEN
  227. CALL ACCTAB (ISBM,'MOT',I0,X0,'MODES',L0,IRET0,
  228. & 'TABLE',I1,X1,' ',L1,ISTB)
  229. CALL ACCTAB (ISTB,'MOT',I0,X0,'MAILLAGE',L0,IRET0,
  230. & 'MAILLAGE',I1,X1,' ',L1,IMAIL)
  231. CALL EXTR12(IMAIL,IRET,IRE12)
  232. IF (IRE12.EQ.0) GOTO 56
  233. TYPRET = ' '
  234. CALL ACCTAB (ISBM,'MOT',I0,X0,'PSEUDO_MODES',L0,IRET0,
  235. & TYPRET,I1,X1,CHARRE,L1,ITPS)
  236. IF (ITPS.NE.0 .AND. TYPRET.EQ.'TABLE ') KPSMO = 1
  237. ELSE
  238. RETURN
  239. ENDIF
  240. ELSE
  241. CALL ACCTAB (ISBM,'MOT',I0,X0,'MODES',L0,IRET0,
  242. & 'TABLE',I1,X1,' ',L1,ISTB)
  243. TYPRET = ' '
  244. CALL ACCTAB (ISBM,'MOT',I0,X0,'PSEUDO_MODES',L0,IRET0,
  245. & TYPRET,I1,X1,CHARRE,L1,ITPS)
  246. IF (ITPS.NE.0 .AND. TYPRET.EQ.'TABLE ') KPSMO = 1
  247. ENDIF
  248. ENDIF
  249. *--------------------------------------------
  250. *---cas d'un objet de type solution ---------
  251. *--------------------------------------------
  252. IF (CTYP(1:8).EQ.'SOLUTION') THEN
  253. CALL LIROBJ('SOLUTION',KSOLU,1,IRETOU)
  254. IF(IERR.NE.0) RETURN
  255. ISOLU = 1
  256. MSOLUT=KSOLU
  257. C----------------------------------------------------
  258. C **** lecture de la base {l{mentaire
  259. C
  260. CALL LIRBAS(1,IBOBAS,IBOSEM)
  261. MSOBAS=IBOBAS
  262. C MBASEM=IBOSEM
  263. IF(IERR.NE.0) RETURN
  264. ENDIF
  265. C----------------------------------------------------
  266. C **** lecture du chargement pour les pseudo-modes
  267. C
  268. KCHAR = 0
  269. CALL LIROBJ('CHARGEME',KCHAR,0,IRETOU)
  270. C----------------------------------------------------
  271. C **** lecture des instants
  272. C
  273. IPX=0
  274. ITOUS=0
  275. ILX=0
  276. CALL LIROBJ('LISTREEL',IPX,0,IRETOU)
  277. IF(IRETOU.EQ.0) CALL LIROBJ('LISTENTI',ILX,0,IRETOU)
  278. IF(IRETOU.EQ.0) ITOUS=1
  279. *
  280. CALL EVNUMO(ITYPE,IRET,NOMCO,IBOO)
  281. NUMOO=IBOO
  282. IF(IERR.NE.0) RETURN
  283. *+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+
  284. * cas d'un objet de type SOLUTION
  285. *+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+
  286. IF (ISOLU.EQ.1) THEN
  287. SEGACT MSOLUT
  288. IF (MCHA.EQ.'CONT') MCHA = 'DEPL'
  289. MOTERR(1:8)=ITYSOL
  290. CALL CHRCHA(MCHA,MOTERR(1:8),ICHA,ISOLIT)
  291. IF(ICHA.EQ.0) THEN
  292. MOTERR(1:8)=ITYSOL
  293. MOTERR(9:12)=MCHA
  294. CALL ERREUR(235)
  295. * erreur dans le type du champ
  296. RETURN
  297. ENDIF
  298. MSOLEN=MSOLIS(ICHA)
  299. IF(MSOLEN.EQ.0) THEN
  300. MOTERR(1:8)=ITYSOL
  301. MOTERR(9:12)=MCHA
  302. CALL ERREUR(235)
  303. * ce type de champ est vide dans le MSOLUT
  304. RETURN
  305. ENDIF
  306. IF (ITYSOL.NE.'DYNAMIQU') THEN
  307. MOTERR(1:8)='SOLUTION'
  308. MOTERR(9:16)=ITYSOL
  309. CALL ERREUR(131)
  310. * option non disponible
  311. RETURN
  312. ENDIF
  313. IF (MSOLIT(ICHA).NE.2) THEN
  314. * la sortie porte sur des CHAMELEM
  315. * option non disponible
  316. CALL ERREUR(19 )
  317. RETURN
  318. ENDIF
  319. IBOS=MSOLUT
  320. * v{rification des instants de sortie
  321. * dans IPX le LISTREEL @ mettre dans IPROGX
  322. * dans ILEX le LISTENTI qui contient les num{ros des champs
  323. CALL VERIDY(IBOS,IPX,ICHA,ITOUS,ILEX,ITYP1)
  324. IF(IERR.NE.0) RETURN
  325. MSOLUT=IBOS
  326. *
  327. IBOBAS=MSOBAS
  328. IBOO=NUMOO
  329. CALL EVOL2(IBOO,ILEX,IBOBAS,ICONT)
  330. IF(IERR.NE.0) RETURN
  331. MSOBAS=IBOBAS
  332. NUMOO=IBOO
  333. MLENTI=ILEX
  334. SEGSUP MLENTI
  335. *
  336. * prise en compte des pseudo-modes
  337. *
  338. SEGACT MSOBAS
  339. IMODE = IBSTRM(2)
  340. ILIAI = IBSTRM(4)
  341. KPSMO = IBSTRM(5)
  342. SEGDES MSOBAS
  343. IF (KPSMO.NE.0) THEN
  344. IF (ILIAI.NE.0) THEN
  345. MSOLUT = KSOLU
  346. SEGACT MSOLUT
  347. MOTERR(1:8) = ITYSOL
  348. MCHA = 'LIAI'
  349. CALL CHRCHA(MCHA,MOTERR(1:8),ICHA,ISOLIT)
  350. IF (ICHA.EQ.0) THEN
  351. MOTERR(1:8) = ITYSOL
  352. MOTERR(9:12) = MCHA
  353. CALL ERREUR(235)
  354. RETURN
  355. ENDIF
  356. MSOLEN = MSOLIS(ICHA)
  357. IF (MSOLEN.EQ.0) THEN
  358. MOTERR(1:8) = ITYSOL
  359. MOTERR(9:12) = MCHA
  360. CALL ERREUR(235)
  361. RETURN
  362. ENDIF
  363. SEGDES MSOLUT
  364. ITOU2 = 0
  365. IBOS = KSOLU
  366. CALL VERIDY(IBOS,IPX,ICHA,ITOU2,ILEX2,ITYP1)
  367. IF (IERR.NE.0) RETURN
  368. ELSE
  369. ILEX2 = 0
  370. ENDIF
  371. IBOO = NUMOO
  372. CALL PSEVO1(IMODE,KPSMO,IBOO,IPX,ILEX2,KCHAR,ICONT)
  373. NUMOO = IBOO
  374. ENDIF
  375. ENDIF
  376. *+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+
  377. * cas d'un objet de type TABLE
  378. *+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+
  379. IF (ITABL.EQ.1) THEN
  380. ICHA =0
  381. * on prend la premi}re table (pas de temps 1)
  382. CALL ACCTAB (ISTA ,'ENTIER',1,X0,' ',L0,IRET0,
  383. & 'TABLE',I1,X1,' ',L1,IRET1)
  384. IF (ICONT.EQ.1) MCHA = 'DEPL'
  385. IF (ICONT.EQ.2) MCHA = 'DEPL'
  386. IBOBO=IRET1
  387. CALL CHTCHA (MCHA,LCHALU,IBOBO,ICHA)
  388. IF (ICHA.EQ.0) THEN
  389. MOTERR(1:8)= MCHA(1:8)
  390. MOTERR(9:12)=MCHA
  391. CALL ERREUR(235)
  392. * erreur dans le type du champ
  393. RETURN
  394. ENDIF
  395. * v{rification des instants de sortie
  396. * dans IPX le LISTREEL @ mettre dans IPROGX
  397. * dans ILEX le LISTENTI qui contient les num{ros des champs
  398. CALL VERITA(ISTA,IPX,ICHA,ITOUS,ILEX,ITYP1)
  399. IF (IERR.NE.0) RETURN
  400. *
  401. CALL CHCHA2 (ISTB,ILEN1,ILEN2,ICONT)
  402. IF(IERR.NE.0) RETURN
  403. *
  404. IBOO=NUMOO
  405. CALL EVOL22 (IBOO,ILEX,ISTB,ILEN1,ILEN2)
  406. IF(IERR.NE.0) RETURN
  407. NUMOO=IBOO
  408. *
  409. * prise en compte de la rotation des corps rigides
  410. *
  411. IF (MCHA(1:4).EQ.'DEPL') THEN
  412. * On regarde si on a une base de corps rigide
  413. CALL VERRIG(ISTB,IROT,ICDG,ILEN1,ILEN2,IDEFO)
  414. IF (IROT.NE.0) THEN
  415. IBOO = NUMOO
  416. * Recombinaison des d�placements
  417. CALL EVORIG(IROT,ICDG,IBOO,ILEX,0,0,0,IDEFO)
  418. NUMOO = IBOO
  419. ENDIF
  420. ELSE
  421. IF (MCHA(1:4).EQ.'VITE') THEN
  422. * On regarde si on a une base de corps rigide
  423. CALL VERRIG(ISTB,IROT,ICDG,ILEN1,ILEN2,IDEFO)
  424. IF (IROT.NE.0) THEN
  425. * On r�cup�re les angles de rotation
  426. CALL CHTCHA('DEPL',4,IBOBO,ICHARO)
  427. IF (ICHARO.EQ.0) THEN
  428. MOTERR(1:8)=MCHA(1:8)
  429. MOTERR(9:12)=MCHA
  430. CALL ERREUR(235)
  431. RETURN
  432. ENDIF
  433. CALL VERITA(ISTA,IPX,ICHARO,ITOUS,ILEXRO,ITYP1)
  434. IBOO = NUMOO
  435. * On recombine les vitesses
  436. CALL EVORIG(IROT,ICDG,IBOO,ILEX,1,ILEXRO,0,IDEFO)
  437. NUMOO = IBOO
  438. ENDIF
  439. ELSE
  440. IF (MCHA(1:4).EQ.'ACCE') THEN
  441. * On regarde si on a une base de corps rigide
  442. CALL VERRIG(ISTB,IROT,ICDG,ILEN1,ILEN2,IDEFO)
  443. IF (IROT.NE.0) THEN
  444. * On r�cup�re les angles de rotation
  445. CALL CHTCHA('DEPL',4,IBOBO,ICHARO)
  446. IF (ICHARO.EQ.0) THEN
  447. MOTERR(1:8)=MCHA(1:8)
  448. MOTERR(9:12)=MCHA
  449. CALL ERREUR(235)
  450. RETURN
  451. ENDIF
  452. CALL VERITA(ISTA,IPX,ICHARO,ITOUS,ILEXRO,ITYP1)
  453. * On r�cup�re les vitesses de rotation
  454. CALL CHTCHA('VITE',4,IBOBO,ICHAVI)
  455. IF (ICHAVI.EQ.0) THEN
  456. MOTERR(1:8)=MCHA(1:8)
  457. MOTERR(9:12)=MCHA
  458. CALL ERREUR(235)
  459. RETURN
  460. ENDIF
  461. CALL VERITA(ISTA,IPX,ICHAVI,ITOUS,ILEXVI,ITYP1)
  462. IBOO = NUMOO
  463. * On recombine les acc�l�rations
  464. CALL EVORIG(IROT,ICDG,IBOO,ILEX,-1,ILEXRO,
  465. &ILEXVI,IDEFO)
  466. NUMOO = IBOO
  467. ENDIF
  468. ENDIF
  469. ENDIF
  470. ENDIF
  471. MLENTI=ILEN1
  472. SEGSUP MLENTI
  473. MLENTI=ILEN2
  474. SEGSUP MLENTI
  475. MLENTI=ILEX
  476. SEGSUP MLENTI
  477. *
  478. * prise en compte des pseudo-modes
  479. *
  480. IF (KPSMO.EQ.1) THEN
  481. IF (KCHAR.NE.0) THEN
  482. IBOO = NUMOO
  483. CALL PSEVRC(ICONT,ITPS,ISTB,IBOO,IPX,KCHAR)
  484. NUMOO = IBOO
  485. ELSE
  486. CALL ERREUR(430)
  487. ENDIF
  488. ENDIF
  489. ENDIF
  490.  
  491. C ******************************************************************
  492. C *** initialisation de MEVOLL
  493. C
  494. IF (ICONT.EQ.1) MCHA='CONT'
  495. IF (ICONT.EQ.2) MCHA='REAC'
  496. N=NUMO(/1)
  497. SEGINI MEVOLL
  498. ITYEVO='REEL'
  499. TI(1:72)=TITREE
  500. IEVTEX=TI
  501. DO 2080 I=1,N
  502. SEGINI KEVOLL
  503. TYPX='LISTREEL'
  504. TYPY='LISTREEL'
  505. IPROGX=IPX
  506. IPROGY=KLIST(I)
  507. NOMEVX=ITYP1
  508. NOMEVY(1:4)=MCHA
  509. WRITE (NOMEVY(5:8),FMT='(I4)') NUMO(I)
  510. NOMEVY(9:12)=NUDDL(I)
  511. c KEVTEX=TI
  512. IF(ITIT1.EQ.0) MTIT1(1:12)=NOMEVY(1:12)
  513. KEVTEX=MTIT1
  514. NUMEVY='REEL'
  515. NUMEVX=ICOUL
  516. SEGDES KEVOLL
  517. IEVOLL(I)=KEVOLL
  518. 2080 CONTINUE
  519. SEGDES MEVOLL
  520. SEGSUP NUMOO
  521. CALL ECROBJ('EVOLUTIO',MEVOLL)
  522. *
  523. END
  524.  
  525.  
  526.  

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