tbmain
C TBMAIN SOURCE GOUNAND 23/01/12 21:15:04 11550 * PERMET D'AFFICHER SUR ECRAN OU IMPRIMANTE * UN TABLEAU. *************************************************** * ** LISTE DES FONCTIONS ET PROCEDURES: *************************************************** * * TABLEAU SUBROUTINE PRINCIPALE * EGALE (X,Y,P) FONCTION QUI RENVOIT .TRUE. SI LES * DEUX REAL*8 X ET Y SONT EGAUX A P PRES. * EFFACER PERMET D'EFFACER LA FENETRE GRAPHIQUE * EN REINITIALISANT LE SEGMENT POUR IMPRESSION. * NTAFFICHE AFFICHE LES ENTETES D'UN TABLEAU * NAFFICHE AFFICHE UNE CASE * AFFICHE AFFICHE UNE PAGE * TRINI ET SES FONCTIONS * SUBROUTINE TBMAIN IMPLICIT INTEGER(I-N) -INC PPARAM -INC CCOPTIO -INC SMEVOLL -INC CCGEOME -INC SMLENTI -INC SMLMOTS -INC TMNTAB *************************************************** * ** LISTE DES VARIABLES : *************************************************** * LPARAM LISTE DES PARAMETRES A LIRE * NPARAM NOMBRE DE PARAMETRES DANS LA LISTE * LEGEND TABLEAU DE CHAINE POUR LES MENUS * EV POINTEUR SUR UNE EVOLUTION * NBEVOL NOMBRE DE COURBES DANS L'OJET EVOLUTION * CURPX PAGE COURANTE EN X * CURPY PAGE COURANTE EN Y * ITABX NOMBRE DE COLONNES DE L'OBJET TABTR * ITABY NOMBRE DE LIGNES DE L'OBJET TABTR * NBPX NOMBRE DE PAGES EN X * NBPY NOMBRE DE PAGES EN Y * NBPAGE NOMBRE DE PAGES DE L'OBJET TABTR * TABTR SEGMENT POUR LE TABLEAU *************************************************** * ** DEFINITION DES VARIABLES: *************************************************** LOGICAL VALEUR,ZN,ZD CHARACTER*128 TMPCAR POINTEUR EV.MEVOLL POINTEUR LI.MLENTI REAL*8 EPSILN,RA,RB CHARACTER*10 LPARAM (17) INTEGER NPARAM INTEGER CURPX,CURPY,FX,FY INTEGER ITABX,ITABY INTEGER PAGESX,PAGESY,NBPX,NBPY INTEGER NUM,NUM2 *************************************************** * ** INITIALISATION DES VARIABLES: *************************************************** DATA LPARAM /'TITR','STITR','TCOL','TLIG','NOCENTER', # 'NOLIG','NODATE','TEXCOU','LIGCOU','COLCOU','TITCOU', # 'TRILIG','TRICOL','VERTICAL','PAGE','NOPAGE','LOGO'/ NPARAM = 17 EPSILN = DBLE (0) ITABX = 0 ITABY = 0 TABTR = 0 LI = 0 *************************************************** * ** LECTURE DES OBJETS *************************************************** * * EVOLUTION * IF (IRETOU.EQ.1) THEN CALL EVLIRE ( IRET, TABTR, EPSILN,ITABX, ITABY) IF (TABTR.EQ.0) GOTO 1000 SEGACT TABTR*MOD GOTO 200 ENDIF * * CHAMP PAR POINT * IF (IRETOU.EQ.1) THEN CALL CHLIRE ( IRET, TABTR, EPSILN,ITABX, ITABY) IF (TABTR.EQ.0) GOTO 1000 SEGACT TABTR*MOD GOTO 200 ENDIF * * CHAMP PAR ELEMENT * IF (IRETOU.EQ.1) THEN CALL CELIRE ( IRET, TABTR, EPSILN,ITABX, ITABY) IF (TABTR.EQ.0) GOTO 1000 SEGACT TABTR*MOD GOTO 200 ENDIF * * PAS D'OBJET * GOTO 1000 *************************************************** * ** INITIALISATION PAR DEFAUT DE TABTR *************************************************** 200 CONTINUE * * INITIALISE LA DEFINITION DES PAGES DU TABLEAU * IF (ZHORIZ) THEN ELSE ENDIF * REGARDE S'IL FAUT METTRE LES NUMEROS DE PAGES IF (TABTR.PX*TABTR.PY.GT.1) THEN TABTR.ZPAGE = .TRUE. ELSE TABTR.ZPAGE = .FALSE. ENDIF *************************************************** * ** LECTURE DES MOTS CLE: POST TRAITEMENT DU TABLEAU *************************************************** 400 CONTINUE IF (INDICE.NE.0) THEN GOTO (405,410,415,420,425,430,435,440,445,450,455, # 460,465,470,475,480,485),INDICE * * MODIFICATION DU TITRE * 405 CONTINUE TABTR.TITGEN = TMPCAR GOTO 400 * * MODIFICATION DU SOUS TITRE * 410 CONTINUE TABTR.SSTITR = TMPCAR GOTO 400 * * MODIFICATION DU TITRE D'UNE COLONNE * 415 CONTINUE IF (IRETOU.NE.1) THEN IF (TABTR.EQ.0) GOTO 400 IF ( (NUM.LT.1).OR. (NUM.GT.ITABX)) GOTO 400 TABTR.ELEM (NUM,1) = TMPCAR TABTR.TITCOL (NUM) = TMPCAR ELSE IF (TABTR.EQ.0) GOTO 400 SEGACT MLMOTS TMPCAR=' ' IF (I.GT.ITABX) GOTO 400 TABTR.ELEM (I,1) = TMPCAR TABTR.TITCOL (I) = TMPCAR ENDDO ENDIF IF (TABTR.EQ.0) GOTO 400 IF (ZHORIZ) THEN ELSE ENDIF GOTO 400 * * MODIFICATION DU TITRE D'UNE LIGNE * 420 CONTINUE IF (IRETOU.NE.1) THEN IF (TABTR.EQ.0) GOTO 400 IF ( (NUM.LT.1).OR. (NUM.GT.ITABY)) GOTO 400 TABTR.ELEM (1,NUM) = TMPCAR ELSE IF (TABTR.EQ.0) GOTO 400 SEGACT MLMOTS TMPCAR=' ' IF (I.GT.ITABY) GOTO 400 TABTR.ELEM (1,I) = TMPCAR ENDDO ENDIF GOTO 400 * * NE PAS CENTRER LES TABLEAUX * 425 CONTINUE TABTR.ZCTRER = .FALSE. GOTO 400 * * NE PAS FAIRE L'ENCADREMENT AUTOMATIQUE * 430 CONTINUE TABTR.ZAULIG = .FALSE. GOTO 400 * * ENLEVER LA DATE * 435 CONTINUE ZD = .FALSE. TABTR.ZDATE = .FALSE. GOTO 400 * * CHANGER LA COULEUR DU TEXTE * 440 CONTINUE TABTR.ITEXC = NUM GOTO 400 * * CHANGER LA COULEUR DES ENCADREMENTS * 445 CONTINUE TABTR.ILIGC = NUM GOTO 400 * * CHANGER LA COULEUR DES TITRES DE COLONNES * 450 CONTINUE TABTR.ICOLC = NUM GOTO 400 * * CHANGER LA COULEUR DES TITRES * 455 CONTINUE TABTR.ITITC = NUM GOTO 400 * * TRIER LES LIGNES * 460 CONTINUE IF ( (NUM.LT.1).OR. (NUM.GT.ITABX)) GOTO 400 GOTO 400 * * TRIER LES COLONNES * 465 CONTINUE IF ( (NUM.LT.1).OR. (NUM.GT.ITABY)) GOTO 400 GOTO 400 * * PASSER EN MODE PORTRAIT * 470 CONTINUE GOTO 400 * * FORCER L'AFFICHAGE DES NUMEROS DE PAGE * 475 CONTINUE TABTR.ZPAGE = .TRUE. GOTO 400 * * FORCER LE NON AFFICHAGE DES NUMEROS DE PAGES * 480 CONTINUE TABTR.ZPAGE = .FALSE. GOTO 400 * * INSERER LE LOGO * 485 CONTINUE TABTR.ZLOGO = .TRUE. GOTO 400 * ENDIF *************************************************** * ** AFFICHAGE DE LA FENETRE *************************************************** * SG 2016/06/2016 *old IF (IOGRA.EQ.1) GOTO 900 *old IF (IOGRA.EQ.7) GOTO 900 *old IF (IOGRA.EQ.8) GOTO 900 * IOGRA 1 LGI 2 XWINDOW 6 OPENGL 7 POSTSCRIPT 8 MIF 9 POSTSCRIPT COULEUR IF (.NOT.(IOGRA.EQ.2.OR.IOGRA.EQ.6)) GOTO 900 * INITIALISATION DU NOMBRE DE COULEURS if (ZHORIZ) then else endif CURPX = 1 CURPY = 1 * *************************************************** * ** CREATION DU MENU: ATTENTE DES ORDRES *************************************************** 600 CONTINUE * * AFFICHAGE MENU PRINCIPAL * 602 CONTINUE IF (ZHORIZ) THEN ELSE ENDIF CALL TRAFF (ICLE) * FIN DESSIN IF (ICLE.EQ.0) GOTO 1000 * AFFICHER LA PAGE SUIVANTE IF (ICLE.EQ.1) THEN CURPX = CURPX+1 IF (CURPX.EQ. (NBPX+1)) THEN CURPX=1 CURPY=CURPY+1 IF (CURPY.EQ. (NBPY+1)) THEN CURPY=1 ENDIF ENDIF ENDIF * AFFICHER LA PAGE PRECEDANTE IF (ICLE.EQ.2) THEN CURPX = CURPX - 1 IF (CURPX.EQ.0) THEN CURPX = NBPX CURPY = CURPY -1 IF (CURPY.EQ.0) THEN CURPY = NBPY ENDIF ENDIF ENDIF * OPTIONS IF (ICLE.EQ.3) GOTO 610 * BASCULER IF (ICLE.EQ.4) THEN IF (ZINIPS) THEN NBPX = 0 NBPY = 0 IF (ZHORIZ) THEN ELSE ENDIF CURPX = 1 CURPY = 1 ENDIF ENDIF * RETOUR GOTO 602 * * SOUS MENU OPTIONS * 610 CONTINUE CALL TRAFF (ICLE) * REVENIR IF (ICLE.EQ.0) THEN GOTO 602 ENDIF * TRIER IF (ICLE.EQ.1) GOTO 620 * ENCADREMENT IF (ICLE.EQ.2) GOTO 630 * TITRES IF (ICLE.EQ.3) GOTO 640 * COULEURS IF (ICLE.EQ.4) GOTO 650 * DIVERS IF (ICLE.EQ.5) GOTO 710 * RETOUR GOTO 610 * * SOUS MENU ARANGER * 620 CONTINUE CALL TRAFF (ICLE) * REVENIR IF (ICLE.EQ.0) GOTO 610 * TRIER LES COLONNES IF (ICLE.EQ.1) GOTO 700 * TRIER LES LIGNES IF (ICLE.EQ.2) GOTO 690 * MODIFIER IF (ICLE.EQ.3) GOTO 730 * RETOUR GOTO 620 * * SOUS MENU ENCADREMENT * 630 CONTINUE CALL TRAFF (ICLE) * REVENIR IF (ICLE.EQ.0) GOTO 610 * INTER COLONNE IF (ICLE.EQ.1) THEN GOTO 680 ENDIF * INTER LIGNE IF (ICLE.EQ.2) THEN GOTO 660 ENDIF * CELLULE IF (ICLE.EQ.3) THEN GOTO 670 ENDIF * RETOUR GOTO 630 * * SOUS MENU TITRES * 640 CONTINUE CALL TRAFF (ICLE) * REVENIR IF (ICLE.EQ.0) GOTO 610 * CHANGER LE TITRE DU TABLEAU IF (ICLE.EQ.1) THEN CALL TRGET ('Entrer le nouveau titre:',TMPCAR) TABTR.TITGEN=TMPCAR ENDIF * CHANGER LE SOUS TITRE IF (ICLE.EQ.2) THEN CALL TRGET ('Entrer le nouveau sous-titre:',TMPCAR) TABTR.SSTITR=TMPCAR ENDIF * CHANGER LE TITRE D'UNE COLONNE IF (ICLE.EQ.3) THEN CALL TRMESS ('Cliquer sur la colonne.') IF ( (IX.LT.1).OR. (IX.GT.ITABX)) THEN CALL TRMESS ('Emplacement invalide') GOTO 640 ENDIF CALL TRGET ('Entrer le nouveau titre de colonne:',TMPCAR) TABTR.ELEM (IX,1) = TMPCAR TABTR.TITCOL (IX) = TMPCAR IF (ZHORIZ) THEN ELSE ENDIF ENDIF * CHANGER LE TITRE D'UNE LIGNE IF (ICLE.EQ.4) THEN CALL TRMESS ('Cliquer sur la ligne.') IF ( (IY.LT.1).OR. (IY.GT.ITABY)) THEN CALL TRMESS ('Emplacement invalide') GOTO 640 ENDIF CALL TRGET ('Entrer le nouveau titre de ligne:',TMPCAR) TABTR.ELEM (1,IY) = TMPCAR ENDIF * RETOUR GOTO 640 * * SOUS MENU COULEURS * 650 CONTINUE CALL TRAFF (ICLE) * REVENIR IF (ICLE.EQ.0) GOTO 610 * TEXTE IF (ICLE.EQ.1) THEN NUM=NBCOUL TABTR.ITEXC = NUM ENDIF * ENCADREMENT IF (ICLE.EQ.2) THEN NUM=NBCOUL TABTR.ILIGC = NUM ENDIF * COLONNES IF (ICLE.EQ.3) THEN NUM=NBCOUL TABTR.ICOLC = NUM ENDIF * TITRES IF (ICLE.EQ.4) THEN NUM=NBCOUL TABTR.ITITC = NUM ENDIF * LOGO IF (ICLE.EQ.5) THEN NUM=NBCOUL TABTR.ILOGC = NUM ENDIF * RETOUR GOTO 650 * * SOUS MENU ENCADREMENT INTER LIGNE * 660 CONTINUE CALL TRAFF (ICLE) * REVENIR IF (ICLE.EQ.0) GOTO 630 * NORMAL IF (ICLE.EQ.1) THEN CALL TRMESS ('Cliquer sur la ligne.') IF (IY.EQ.0) IY=TABTR.CIDY (CURPX,CURPY)+1 DO 662 IX=1 , ITABX TABTR.ZHSEP (IX,IY) = .TRUE. TABTR.ZGHSEP (IX,IY) = .FALSE. 662 CONTINUE ENDIF * GRAS IF (ICLE.EQ.2) THEN CALL TRMESS ('Cliquer sur la ligne.') IF (IY.EQ.0) IY=TABTR.CIDY (CURPX,CURPY)+1 DO 664 IX=1 , ITABX TABTR.ZHSEP (IX,IY) = .TRUE. TABTR.ZGHSEP (IX,IY) = .TRUE. 664 CONTINUE ENDIF * ENLEVER IF (ICLE.EQ.3) THEN CALL TRMESS ('Cliquer sur la ligne.') IF (IY.EQ.0) IY=TABTR.CIDY (CURPX,CURPY)+1 DO 666 IX=1 , ITABX TABTR.ZGHSEP (IX,IY) = .FALSE. TABTR.ZHSEP (IX,IY) = .FALSE. 666 CONTINUE ENDIF * RETOUR GOTO 660 * * SOUS MENU ENCADREMENT CELLULE * 670 CONTINUE CALL TRAFF (ICLE) * REVENIR IF (ICLE.EQ.0) GOTO 630 * NORMAL IF (ICLE.EQ.1) THEN CALL TRMESS ('Cliquer sur la cellule.') IF (NUM.EQ.0) THEN IDEBX=1 IFINX=ITABX ELSE IDEBX=NUM IFINX=NUM ENDIF IF (NUM2.EQ.0) THEN IDEBY=1 IFINY=ITABY ELSE IDEBY=NUM2 IFINY=NUM2 ENDIF DO 671 IX=IDEBX , IFINX TABTR.ZHSEP (IX,IDEBY ) = .TRUE. TABTR.ZGHSEP (IX,IDEBY ) = .FALSE. TABTR.ZHSEP (IX,IFINY+1) = .TRUE. TABTR.ZGHSEP (IX,IFINY+1) = .FALSE. 671 CONTINUE DO 672 IY=IDEBY , IFINY TABTR.ZVSEP (IDEBX ,IY) = .TRUE. TABTR.ZGVSEP (IDEBX ,IY) = .FALSE. TABTR.ZVSEP (IFINX+1,IY) = .TRUE. TABTR.ZGVSEP (IFINX+1,IY) = .FALSE. 672 CONTINUE ENDIF * GRAS IF (ICLE.EQ.2) THEN CALL TRMESS ('Cliquer sur la cellule.') IF (NUM.EQ.0) THEN IDEBX=1 IFINX=ITABX ELSE IDEBX=NUM IFINX=NUM ENDIF IF (NUM2.EQ.0) THEN IDEBY=1 IFINY=ITABY ELSE IDEBY=NUM2 IFINY=NUM2 ENDIF DO 673 IX=IDEBX , IFINX TABTR.ZHSEP (IX,IDEBY ) = .TRUE. TABTR.ZGHSEP (IX,IDEBY ) = .TRUE. TABTR.ZHSEP (IX,IFINY+1) = .TRUE. TABTR.ZGHSEP (IX,IFINY+1) = .TRUE. 673 CONTINUE DO 674 IY=IDEBY , IFINY TABTR.ZVSEP (IDEBX ,IY) = .TRUE. TABTR.ZGVSEP (IDEBX ,IY) = .TRUE. TABTR.ZVSEP (IFINX+1,IY) = .TRUE. TABTR.ZGVSEP (IFINX+1,IY) = .TRUE. 674 CONTINUE ENDIF * ENLEVER IF (ICLE.EQ.3) THEN CALL TRMESS ('Cliquer sur la cellule.') IF (NUM.EQ.0) THEN IDEBX=1 IFINX=ITABX ELSE IDEBX=NUM IFINX=NUM ENDIF IF (NUM2.EQ.0) THEN IDEBY=1 IFINY=ITABY ELSE IDEBY=NUM2 IFINY=NUM2 ENDIF DO 675 IX=IDEBX , IFINX TABTR.ZHSEP (IX,IDEBY ) = .FALSE. TABTR.ZGHSEP (IX,IDEBY ) = .FALSE. TABTR.ZHSEP (IX,IFINY+1) = .FALSE. TABTR.ZGHSEP (IX,IFINY+1) = .FALSE. 675 CONTINUE DO 676 IY=IDEBY , IFINY TABTR.ZVSEP (IDEBX ,IY) = .FALSE. TABTR.ZGVSEP (IDEBX ,IY) = .FALSE. TABTR.ZVSEP (IFINX+1,IY) = .FALSE. TABTR.ZGVSEP (IFINX+1,IY) = .FALSE. 676 CONTINUE ENDIF * RETOUR GOTO 670 * * SOUS MENU ENCADREMENT INTER COLONNE * 680 CONTINUE CALL TRAFF (ICLE) * REVENIR IF (ICLE.EQ.0) GOTO 630 * NORMAL IF (ICLE.EQ.1) THEN CALL TRMESS ('Cliquer sur la colonne.') IF (IX.EQ.0) IX=TABTR.CIDX (CURPX,CURPY)+1 DO 682 IY=1 , ITABY TABTR.ZVSEP (IX,IY) = .TRUE. TABTR.ZGVSEP (IX,IY) = .FALSE. 682 CONTINUE ENDIF * GRAS IF (ICLE.EQ.2) THEN CALL TRMESS ('Cliquer sur la colonne.') IF (IX.EQ.0) IX=TABTR.CIDX (CURPX,CURPY)+1 DO 684 IY=1 , ITABY TABTR.ZVSEP (IX,IY) = .TRUE. TABTR.ZGVSEP (IX,IY) = .TRUE. 684 CONTINUE ENDIF * ENLEVER IF (ICLE.EQ.3) THEN CALL TRMESS ('Cliquer sur la colonne.') IF (IX.EQ.0) IX=TABTR.CIDX (CURPX,CURPY)+1 DO 686 IY=1 , ITABY TABTR.ZGVSEP (IX,IY) = .FALSE. TABTR.ZVSEP (IX,IY) = .FALSE. 686 CONTINUE ENDIF * RETOUR GOTO 680 * * SOUS MENU TRIER LIGNES * 690 CONTINUE CALL TRAFF (ICLE) * REVENIR IF (ICLE.EQ.0) GOTO 620 * CROISSANT IF (ICLE.EQ.1) THEN CALL TRMESS ('Cliquer sur la colonne de reference.') IF ( (IX.LT.1).OR. (IX.GT.ITABX)) THEN CALL TRMESS ('Emplacement invalide') GOTO 690 ENDIF NUM2 = 3 IF (TABTR.YTYPE (IX).EQ.'LISTENTI') NUM2=5 IF (TABTR.YTYPE (IX).EQ.'LISTREEL') NUM2=1 GOTO 610 ENDIF * DECROISSANT IF (ICLE.EQ.2) THEN CALL TRMESS ('Cliquer sur la colonne de reference.') IF ( (IX.LT.1).OR. (IX.GT.ITABX)) THEN CALL TRMESS ('Emplacement invalide') GOTO 690 ENDIF NUM2 = 4 IF (TABTR.YTYPE (IX).EQ.'LISTENTI') NUM2=6 IF (TABTR.YTYPE (IX).EQ.'LISTREEL') NUM2=2 GOTO 610 ENDIF * RETOUR GOTO 690 * * SOUS MENU TRIER COLONNES * 700 CONTINUE CALL TRAFF (ICLE) * REVENIR IF (ICLE.EQ.0) GOTO 620 * CROISSANT IF (ICLE.EQ.1) THEN CALL TRMESS ('Cliquer sur la ligne de reference.') IF ( (IY.LT.1).OR. (IY.GT.ITABY)) THEN CALL TRMESS ('Emplacement invalide') GOTO 620 ENDIF GOTO 610 ENDIF * DECROISSANT IF (ICLE.EQ.2) THEN CALL TRMESS ('Cliquer sur la ligne de reference.') IF ( (IY.LT.1).OR. (IY.GT.ITABY)) THEN CALL TRMESS ('Emplacement invalide') GOTO 620 ENDIF GOTO 610 ENDIF * RETOUR GOTO 700 * * SOUS MENU DIVERS * 710 CONTINUE IF (TABTR.ZDATE) THEN ELSE ENDIF IF (TABTR.ZCTRER) THEN ELSE ENDIF IF (TABTR.ZAULIG) THEN ELSE ENDIF IF (TABTR.ZPAGE) THEN ELSE ENDIF CALL TRAFF (ICLE) * REVENIR IF (ICLE.EQ.0) GOTO 610 * DATE IF (ICLE.EQ.1) THEN TABTR.ZDATE = .NOT.TABTR.ZDATE GOTO 710 ENDIF * CENTRER IF (ICLE.EQ.2) THEN TABTR.ZCTRER = .NOT.TABTR.ZCTRER GOTO 710 ENDIF * AUTOLIGNES IF (ICLE.EQ.3) THEN TABTR.ZAULIG = .NOT.TABTR.ZAULIG GOTO 710 ENDIF * PAGES IF (ICLE.EQ.4) THEN TABTR.ZPAGE = .NOT.TABTR.ZPAGE GOTO 710 ENDIF * LOGO IF (ICLE.EQ.5) THEN GOTO 720 ENDIF * RETOUR GOTO 710 * * SOUS MENU LOGO * 720 CONTINUE IF (TABTR.ZLOGO) THEN ELSE ENDIF CALL TRAFF (ICLE) * REVENIR IF (ICLE.EQ.0) GOTO 710 * POSITION IF (ICLE.EQ.1) THEN CALL TRMESS ('Cliquer sur la nouvelle position.') CALL TRDIG (TABTR.XLPOS,TABTR.YLPOS,inouse) ENDIF * COULEUR IF (ICLE.EQ.2) THEN NUM=NBCOUL TABTR.ILOGC = NUM ENDIF * TAILLE IF (ICLE.EQ.3) THEN CALL TRGET ('Entrer la nouvelle taille du logo:',TMPCAR) RA = F_ATOL (TMPCAR) NUM = F_ATOI (TMPCAR) IF ( (RA.LT.0.5).OR. (RA.GT.15.0)) RA=DBLE (NUM) IF ( (RA.LT.0.5).OR. (RA.GT.15.0)) THEN CALL TRMESS ('Taille invalide') ELSE TABTR.TLOGO = REAL (RA) ENDIF ENDIF * ON/OFF IF (ICLE.EQ.4) THEN TABTR.ZLOGO = .NOT.TABTR.ZLOGO ENDIF * RETOUR GOTO 720 * * SOUS MENU MODIFIER * 730 CONTINUE CALL TRAFF (ICLE) * REVENIR IF (ICLE.EQ.0) GOTO 620 * SUPPRIMER COLONNE IF (ICLE.EQ.1) THEN CALL TRMESS ('Cliquer sur la colonne à suprimer.') IF ( (IX.LT.1).OR. (IX.GT.ITABX)) THEN CALL TRMESS ('Emplacement invalide') ELSE ENDIF ENDIF * SUPPRIMER LIGNE IF (ICLE.EQ.2) THEN CALL TRMESS ('Cliquer sur la ligne à suprimer.') IF ( (IY.LT.1).OR. (IY.GT.ITABY)) THEN CALL TRMESS ('Emplacement invalide') ELSE ENDIF ENDIF * MODIFIER CELLULE IF (ICLE.EQ.3) THEN ENDIF * RETOUR GOTO 730 * *************************************************** * ** TRAITEMENT DES BATCHS *************************************************** 900 CONTINUE C print *,'On rentre dans la partie Traitement des batchs' DO 920 IY=1 , NBPY DO 910 IX=1 , NBPX CALL TRAFF (ICLE) 910 CONTINUE 920 CONTINUE *************************************************** * ** SORTIR ET LIBERER LA MEMOIRE *************************************************** 1000 CONTINUE IF (TABTR.NE.0) SEGSUP TABTR IF (LI.NE.0) SEGSUP LI ZHORIZ = .TRUE. END
© Cast3M 2003 - Tous droits réservés.
Mentions légales