6








                                    HERRAMIENTAS
                                           
                            SECCION 20. EL EDITOR DE MENUS
          _________________________________________________________________

          El editor de men£s se utiliza para crear y/o modificar  los men£s
          del sistema usando los servicios de  ISISUTL,  y es muy semejante
          al editor de hojas de trabajo descrito en la secci¢n anterior.

          Desde el punto de vista de su  presentaci¢n en pantalla,  un men£
          es b sicamente igual a una hoja de trabajo,  en el sentido de que
          ambos contienen una colecci¢n  de campos.  Sin embargo, los men£s
          no se dise¤aron para captura de datos,  sino para seleccionar op-
          ciones del programa.  Por lo tanto,  los campos definidos para un
          men£ caen en una de las siguientes categor¡as:

          Campos de t¡tulo:  que normalmente se  utilizan para proporcionar
                informaci¢n explicativa,  tal como podr¡a ser el nombre del
                men£,  y  una  descripci¢n  general  de  los  servicios que
                proporciona.

          Campos de opci¢n:  Describen las diversas opciones  que ofrece el
                 programa; y

          Campo de selecci¢n:  que contendr  la opci¢n seleccionada  por el
                  usuario   (Cuando   el   men£   sea  desplegado, CDS/ISIS
                  posicionar  el cursor en el campo de selecci¢n).

          Cada men£ puede contener uno o m s campos de t¡tulo  y de opci¢n,
          pero solo  puede haber un  campo de  selecci¢n.  Al igual que las
          hojas de trabajo,  cada campo de un men£ contiene dos componentes
          b sicos:  el nombre del campo,  y el valor o contenido del campo.
          N¢tese sin embargo,  que para  los campos  de opci¢n de  un men£,
          estos se definen del modo siguiente:

          1.  La primera  letra  del  nombre  del  campo  debe  contener el
              identificador de la opci¢n, que indica a CDS/ISIS la acci¢n a
              realizar cuando el usuario seleccione esa opci¢n;

          2.  El valor del campo contiene la descripci¢n de la  opci¢n, que
               es una breve descripci¢n de esta opci¢n  para que el usuario
              la pueda identificar

          La  £nica parte del men£  que es  reconocida  por CDS/ISIS  es el
          identificador de la opci¢n, que corresponde a una de las opciones
          predefinidas por el programa.  Se puede modificar cualquier parte
          de  los men£s a discreci¢n  del  administrador  del  sistema. Por
          ejemplo,  se pueden cambiar las descripciones de  las opciones si
          las que se  proporcionan  en  la versi¢n original de  CDS/ISIS no




                                         227








          resultan  adecuadas a las necesidades,  o se  pueden  cambiar los
          formatos de presentaci¢n en la  pantalla de cualquier  manera de-
          seada.

          A. Creaci¢n de un nuevo men£

          Si se utiliza el sistema b sico proporcionado por la  UNESCO nor-
          malmente no se necesitar  crear nuevos  men£s aparte  de los pro-
          porcionados para la ejecuci¢n de las funciones del sistema. Puede
          desearse sin embargo,  crear men£s adicionales de AYUDA  y conec-
          tarlos al sistema estandar de men£s.  Como ejemplo de un  men£ de
          AYUDA puede verse el men£ xXUH1,  el cual es llamado por  el men£
          xXM1 en el m¢dulo ISISUTL.

          Pueden necesitarse men£s realmente nuevos,  con opciones ejecuta-
          bles, para aplicaciones especializadas realizadas
                  en CDS/ISIS Pascal.

          Cuando se activa la creaci¢n de un men£  la pantalla se  limpia y
          aparece el primer mensaje en el  rea de mensajes (l¡neas 22  y 23
          de la  pantalla).  La l¡nea inferior contiene el nombre  del men£
          que se est  creando y el n£mero de p gina. La mayor¡a de los men-
          sajes presentar n un  valor impl¡cito,  el cual se  puede aceptar
          simplemente presionando la  tecla <CR>,  o puede reemplazarse te-
          cleando otro valor de acuerdo a las necesidades de cada caso.

           1. Posici¢n del nombre de campo

          Mensaje 047: Indicar posici¢n (L/C) del nombre del campo
                  046: Siguiente posici¢n disponible: ll/cc.

          Se indica aqu¡ la posici¢n en  la pantalla donde se  desea ubicar
          la denominaci¢n del campo.  La posici¢n se indica dando las coor-
          denadas de  pantalla L/C,  donde L es el  n£mero de l¡nea y  C el
          n£mero de columna.  La posici¢n superior izquierda de la pantalla
          es 1/1  y la posici¢n inferior derecha es 21/80 (las l¡neas 22-24
          corresponden al  rea de mensajes y no pueden ser usadas para cam-
          pos de datos).

          Para  facilitar la  identificaci¢n de una posici¢n  espec¡fica se
          puede pedir que el  sistema despliegue  marcas  que contienen los
          n£meros de l¡nea y de columna escribiendo en este punto un n£mero
          negativo entre -21 y -1. CDS/ISIS mostrar  los n£meros de l¡nea a
          la izquierda de la pantalla y los n£meros de columna  en la l¡nea
          que se ha especificado.  Por ejemplo, si se contesta -5, la marca
          se presenta en la l¡nea 5. N¢tese que es posible mostrar las mar-
          cas en tantas l¡neas como se desee.

          Al indicar los valores de L y C se les puede separar con una dia-
          gonal (/) o con cualquier otro caracter no numrico y/o uno o m s
          espacios.  Por ejemplo, todas las siguientes son especificaciones
          v lidas para la l¡nea 7, columna 20:

                  7/20    7 20    7, 20   7; 20




                                         228








          El uso de la tecla <CR> ante este mensaje, termina la funci¢n de
          creaci¢n del men£

          Recurdese que si este es un campo de opci¢n,  el primer caracter
          del nombre debe ser el identificador de la opci¢n.

           2. Posici¢n del valor de campo

          Mensaje 048: Indicar posici¢n (L/C) del valor del campo.
                  046: Siguiente posici¢n disponible: ll/cc

          Se indica aqu¡ la posici¢n en la pantalla donde se  quiere ubicar
          el valor o contenido del campo.  La posici¢n se especifica  de la
          misma manera que la posici¢n  del nombre.  Un valor negativo tam-
          bin  producir  marcas  de  posicionamiento.  Si  se responde con
          <CR>,  CDS/ISIS utilizar  la  posici¢n  impl¡cita mostrada  en el
          mensaje 046.  La posici¢n impl¡cita normalmente corresponde  a un
          espacio despus del £ltimo caracter del nombre del campo.

          3. Atributos del campo

          Mensaje 051: Atributo del campo  (0 - Normal     1 - Inverso    
                      2 - Negritas
                  052:3 - Subrayado  4 - Parpadeo):

          Esto define los atributos  de presentaci¢n en  pantalla del valor
          del campo. Los atributos pueden ser cualquiera de los siguientes:

          0  Normal:  el valor del campo es desplegado como el   nombre del
             campo

          1 Video inverso

          2 Negritas: intensidad alta (m s brillante que el nombre del cam-
            po

          3 Subrayado, intensidad normal

          4 Parpadeo

          5 Invisible

          N¢tese que los atributos mencionados son los iniciales proporcio-
          nados por la Unesco, pero su presentaci¢n real depende de la ins-
          talaci¢n del sistema.  Adem s, si se utiliza un monitor de color,
          cada atributo representar  un color diferente  (ver tambin "Des-
          pliegue/modificaci¢n de atributos" en la p gina ).

           4. Longitud del campo.

                        Mensaje 053: Longitud del campo (nnn)

          Indicar la longitud del valor del campo.  Se puede especificar la
          longitud en n£mero de caracteres o bien en l¡neas. En este £ltimo
          caso el n£mero debe ser precedido por la letra L.



                                         229








          Por ejemplo:

          25 indica 25 caracteres

          L4  indica 4  l¡neas,  contando desde la l¡nea especificada en el
          valor L de la posici¢n L/C del valor del campo

          Tan  pronto  como  se  haya  especificado la longitud  del campo,
          CDS/ISIS desplegar   el  valor de  campo lleno con  caracteres de
          subrayado en  la  posici¢n  especificada de la  pantalla, para la
          longitud dada y con los atributos de pantalla indicados.

           5. Tipo de campo

            Mensaje 056: Tipo de campo (S - Opci¢n   X - Selecci¢n  T - Ti-
                                       tulo ):

          Esto  define  el  tipo de campo del men£.  N¢tese que  solo puede
          existir un Campo de selecci¢n en un men£ determinado.

           6. C¢digo de acci¢n


          Mensaje  061: C¢digo de acci¢n  (X -  Salida C-  Men£ actual 
                         L - Idioma
                  062: N - Men£ siguiente P - Men£ anterior  E - Ejecuta)

          Este mensaje aparece solamente para campos de opci¢n e indica qu
          acci¢n debe tomar CDS/ISIS cuando el usuario  seleccione esta op-
          ci¢n. Las acciones posibles son las siguientes:

          X Regresar el identificador de la opci¢n al programa   que genera
            la llamada. Esta acci¢n est  asociada generalmente con aqullas
            opciones que solicitan la ejecuci¢n de una funci¢n de CDS/ISIS.
            Por ejemplo el  c¢digo  de acci¢n para  la opci¢n D  en el men£
             xXGEN  (m¢dulo ISISRET)  es  X.  En este caso el procesador de
             men£s regresa la letra D a CDS/ISIS  quien activar  la funci¢n
            de despliegue.

          C Presentar nuevamente el men£ activo.

          L Selecci¢n de idioma.  Esta acci¢n est  asociada con  una de las
            opciones  de  idioma  en  el men£ xXLNG.  Despus de activar el
            idioma seleccionado, CDS/ISIS mostrar  nuevamente el men£ desde
            el cual se llam¢ a xXLNG.

          N Presentar  otro men£ (el nuevo men£  es  colocado hasta  arriba
            del  "stack"  de men£s).  Esta acci¢n  se usa generalmente para
             pasar,  al  men£  xXLNG o a un  men£  de  AYUDA. Se solicitar 
            indicar el nombre del siguiente men£ a ser presentado:
           

                   Mensaje: 063 Nombre del siguiente men£/programa?

            Debe teclearse el nombre del men£ que se desea seleccionar (1-5
            caracteres), por ejemplo SXLNG.


                                         230









          P Regresar al men£ anterior. Esta acci¢n se usa generalmente para
            regresar al  men£  desde el  cual se llam¢  al actual. CDS/ISIS
            borrar   el  men£ activo del "stack"  de men£s.  (N¢tese que la
             acci¢n L implica la acci¢n P luego  de seleccionar el idioma).
             Se puede utilizar la acci¢n P para  regresar  al men£ desde el
            que  se  llam¢ un  men£  de AYUDA.  (Vase como ejemplo el men£
            EXUH1).

          E Ejecutar una llamada de MENU  del usuario (vase  el  manual de
            CDS/ISIS Pascal).  Esta acci¢n permite  asociar una funci¢n del
             usuario  con una opci¢n  del  men£.  El  sistema solicitar  el
            nombre del programa a ser ejecutado, del modo siguiente:

            Mensaje 063: Nombre del siguiente men£/programa?

          Ind¡quese   el  nombre  del   programa  a   ser   ejecutado  (1-6
          caracteres). Se presentar  un mensaje de advertencia si no existe
          un archive PCD con este nombre.

          Cuando posteriormente,  el usuario seleccione una  opci¢n de men£
          con c¢digo E, CDS/ISIS ejecutar  el programa CDS/ISIS Pascal aso-
          ciado. Este programa deber  haberse almacenado en la ruta de pro-
          gramas (especificada en el par metro 1  de SYSPAR.PAR) y debe ha-
          ber sido compilado previamente sin errores.

          7. Identificador interno de la opci¢n

                   Mensaje 066: Identificador interno de la opci¢n

          Cada opci¢n en un men£ consiste de un identificador  de la opci¢n
          de 1  caracter,  y una descripci¢n de la opci¢n. Para seleccionar
          una  opci¢n simplemente  se presiona la  tecla correspondiente al
          caracter identificador de la opci¢n. CDS/ISIS realizar  la acci¢n
          definida para esta opci¢n en el c¢digo de  acci¢n correspondiente
          (ver mensajes 061/062  m s arriba). Los identificadores de opci¢n
          reconocidos por CDS/ISIS son £nicos y corresponden  a los defini-
          dos en  los men£s en  ingls  distribuidos  originalmente  por la
          UNESCO. Estos se llaman identificadores internos de opci¢n porque
          han sido definidos en el programa internamente y no son modifica-
          bles.

          Los identificadores de opci¢n mostrados en  los men£s  durante la
          operaci¢n del sistema,  se llaman identificadores externos de op-
          ci¢n y pueden (pero no es  indispensable)  ser los mismos que los
          identificadores internos.  Por ejemplo,  en el caso de  los men£s
          que no estn en ingls,  el identificador externo de  opci¢n ser 
          diferente del identificador  interno,  ya que es generalmente se-
          leccionado para  ser una representaci¢n  mnem¢nica  de  la opci¢n
          correspondiente.

          La habilidad para definir un identificador interno de opci¢n per-
          mite establecer  una correspondencia entre  el  identificador in-
          terno de opci¢n (seleccionado por el usuario)  y el identificador
          de la opci¢n que espera CDS/ISIS. Impl¡citamente se considera que
          el identificador interno de opci¢n es igual al externo.


                                         231









          Por ejemplo,  la opci¢n para presentar los resultados de una b£s-
          queda en el men£ EXGEN en ingls es D (derivado de 'Display'). Si
          en el men£ correspondiente (SXGEN)  en espa¤ol, se deseara llamar
          a esta misma opci¢n con la letra M (de Mostrar)  se podr¡a hacer,
          definiendo el identificador interno como D.

          N¢tese que solo se  solicita indicar el identificador  interno de
          la  opci¢n para los c¢digos de  acci¢n  X y L.  La posibilidad de
          definir un identificador interno de opci¢n para el  c¢digo de ac-
          ci¢n L permite asignar c¢digos de idioma para cada  uno de ellos,
          que sean consistentes con el que se encuentre en uso, manteniendo
          un c¢digo £nico para cada idioma.  Por ejemplo,  en el men£ EXLNG
          en ingls,  el c¢digo para ingls es E y para  espa¤ol es  S. Sin
          embargo, en el men£ SXLNG en espa¤ol se puede aplicar I al ingls
          (de Ingls)  y E al espa¤ol (de Espa¤ol).  En este £ltimo caso se
          asignar¡a E como identificador interno de  la  opci¢n para idioma
          ingls y S a la opci¢n para el espa¤ol.

           8. Descripci¢n de la opci¢n

                    Mensaje 064: Indicar descripci¢n de la opci¢n

          CDS/ISIS posiciona el cursor en el componente del  valor del cam-
          po. Escr¡base la descripci¢n de la opci¢n o el t¡tulo.

          Despus de completar los datos correspondientes al  £ltimo campo,
          CDS/ISIS presenta el mensaje siguiente:

          Mensaje  049:  <CR>  -  Pag.  siguiente   B -  Pag. anterior  
                         R - Restaurar Pantalla

                   050:  E - Editar  S - Sale y graba  C - Cancelar

          Se responde a esto como sigue:

          S o <CR> Para finalizar el proceso y guardar el men£ que  se aca-
          ba de crear (n¢tese que a diferencia de las hojas de trabajo, los
          men£s solo pueden tener una p gina y por lo tanto la opci¢n  B no
          es operativa).

          R Para restaurar la p gina activa.  Es posible utilizar esto para
          eliminar marcas de l¡neas  y columnas que  pudieron haberse colo-
          cado en  la  pantalla,  y para observar  el men£ que se  acaba de
          crear.

          E Para editar un men£ (ver m s adelante).

          C Para finalizar el proceso sin almacenar el men£.

          B. Edici¢n de un men£

          Se Puede editar  un  men£ ya sea respondiendo  E al  mensaje 049,
          mientras se est  creando,  o seleccionando la opci¢n apropiada en
          el men£ del m¢dulo ISISUTL.



                                         232








          Despus de presentar el men£  en la pantalla,  CDS/ISIS posiciona
          el cursor en  el nombre del primer  campo y muestra  el siguiente
          mensaje en el  rea correspondiente (l¡neas 22-23):

          Mensaje 071:M Modificar  R  Justificar  derecha  S  Subir/bajar D
                      Borrar C Centrar
                  072:<CR>  Siguiente A Agregar campo <TAB> Anterior    
                       X Salida

          En este caso, se puede responder:

          A Agregar un nuevo campo al  men£.  CDS/ISIS activar   el modo de
          creaci¢n y requerir  que  se  indiquen  los  distintos par metros
          (ver "Creaci¢n de un men£").  En modo de creaci¢n se pueden crear
          tantos campos adicionales como haga falta.  Luego de haber creado
          el £ltimo campo,  se despliegan los mensajes 071 y 072, y el cur-
          sor se posiciona en el siguiente campo.

          C Centrar el campo en la l¡nea. S¢lo se puede usar esta opci¢n si
          no existen otros campos en  la misma  l¡nea que se  trata de cen-
          trar.

          D Eliminar el campo.

          M  Modificar uno o m s par metros  del campo.  CDS/ISIS  pasar  a
          modo de creaci¢n y requerir  los distintos par metros  del campo.
          Sin embargo,  el valor impl¡cito de cada par metro ser   el valor
          vigente.  Se debe responder <CR>  a todos los mensajes correspon-
          dientes a los par metros que no  se desea modificar  e indicar el
          nuevo valor para aqullos que s¡ se desea cambiar.

          R Justifica el campo a la derecha,  por ejemplo para colocarlo de
          tal manera que la posici¢n de la extrema derecha  coincida con la
          posici¢n  80  de  la  l¡nea  (no  debe  haber  otro  campo  a  la
          izquierda).

          S Desplazar  hacia arriba o  hacia abajo los campos  en pantalla.
          CDS/ISIS solicitar  el n£mero  de l¡neas que debe  ser desplazado
          el campo.

           Mensaje 073: Indicar N£mero de l¡neas (n = abajo n l¡neas, -n =
                                  arriba n l¡neas):

          Responder con un n£mero entero positivo para mover el campo hacia
          abajo,  y con un n£mero  negativo para moverlo hacia  arriba. Por
          ejemplo, -2 para mover el campo dos l¡neas hacia arriba.

          X Terminar la  edici¢n.  CDS/ISIS presentar  los mensajes 049/050
          para determinar como proceder despus.

          <CR>  Dejar el campo sin codificaci¢n y pasar al campo siguiente.
          N¢tese que si ste es el £ltimo campo <CR> equivale a 'X'.

          <TAB>Para mover el cursor al campo anterior.




                                         233




: