Академический Документы
Профессиональный Документы
Культура Документы
NOMBRE
CURSO DE I.D.M.S
IDMS
TITULO
CURSO DE PROGRAMACION
ADS/ONLINE
Pgina
1
CURSO
NOMBRE
CURSO DE I.D.M.S
IDMS
TITULO
Pgina
2
CURSO
NOMBRE
CURSO DE I.D.M.S
IDMS
TITULO
INDICE
=======
4.1. Introduccin
4.1.1. ADS/On-line
4.1.2. Herramientas que proporciona el IDMS
4.1.3. Dilogo
Componentes de un dialogo
Ejecucin de un dialogo
4.2. MAPC (Mapin Compiler)
4.3. Codificacin en ADS/O
4.3.1. Consideraciones
4.3.2. Tipos de instrucciones
4.3.2.1. Instrucciones de acceso y actualizacin
4.3.2.2. Instrucciones de control
4.3.2.3. Instrucciones aritmticas y de asignacin
4.3.2.4. Instrucciones condicionales
4.3.2.5. Instrucciones de control de subrutinas
4.3.2.6. Instrucciones de modificacin de mapas
4.3.2.7. Instrucciones de gestin de scratch
4.3.2.8. Instrucciones de utilidad
4.3.2.9. Instrucciones orientadas al generador
4.3.3. Tipos de Funciones
4.3.3.1. Funciones Aritmticas
4.3.3.2. Funciones Trigonomtricas
4.3.3.3. Funciones de fecha
4.3.3.4. Funciones de cadena
4.4. ADSC (ADS Compiler)
4.5. Conclusin
Pgina
3
CURSO
NOMBRE
CURSO DE I.D.M.S
IDMS
TITULO
4.1. Introduccin
4.1.1. ADS/On-line
ADS/Online es un sistema integrado de herramientas de software que
permite a los usuarios de IDMS/DC realizar las siguientes funciones:
- concentrarse en los aspectos funcionales de la programacin a la hora de
utilizar bases de datos
- disear y ejecutar prototipos de aplicaciones
- desarrollar y ejecutar de un modo rpido y sencillo aplicaciones on-line
que actualicen o lean una base de datos o ficheros VSAM
- utilizacin del diccionario de datos para mantener las definiciones de las
aplicaciones.
Pgina
4
CURSO
NOMBRE
CURSO DE I.D.M.S
IDMS
TITULO
MAPC.
Es una herramienta que permite definir el formato de los paneles con los que
trabajaran los usuarios. Estos podrn introducir datos en unos puntos especficos
del panel, que sern puntos a los que se hayan asociado campos variables.
La tabla que resulta de asociar los campos variables del panel con los
campos de un registro recibe el nombre de mapa.
El MAPC permite entonces crear mapas, definiendo paneles, asociando
registros a estos y generando la tabla correspondiente.
ADSC.
Crea los dilogos de la aplicacin.
Es una herramienta que permite definir, referenciar y ensamblar, los
componentes de un Dilogo.
La unin de Mapas, Registros y Procesos, permitir la asociacin de los datos
recogidos en los registros (Mapa y Procesos), y mediante su procesamiento obtener
los datos que se reflejaran en su Mapa.
El Modulo que resulta de asociar todos estos datos recibe el nombre de
Dilogo.
ADSA.
Crea la estructura de la aplicacin formada por:
- funciones, que son unidades estructurales o de trabajo que definen todas
las posibles actividades que pueden realizarse dentro de la aplicacin;
pueden ser:
funciones MENU (creadas y gestionadas por el ADS/O),
funciones DIALOGO (creadas por el programador), del SISTEMA (que
ejecutan actividades comunes a la mayor parte de las aplicaciones
HELP,SIGNON)
funciones MENU/DIALOGO y PROGRAM (programas escritos en un
lenguaje distinto a ADS/O)
- respuestas, que son las unidades de trabajo que relacionan distintas
funciones entre si, dentro del flujo de la aplicacin; pueden estar asociadas a
teclas de funcin o seleccionarse dando un valor en un campo del mapa
llamado $RESPONSE, puede haber varias respuestas asociadas a una funcin
y cada respuesta llamara a su vez a otra funcin
- prototipo de la aplicacin.
ADS Run-time System
Controla la ejecucin de las aplicaciones
Pgina
5
CURSO
NOMBRE
CURSO DE I.D.M.S
IDMS
TITULO
4.1.3. DIALOGO.
Componentes de un dialogo
Un DIALOGO es la unidad de proceso en una aplicacin ADS/Online. Las
Instrucciones proporcionadas en un dialogo estn codificadas en ADS/On-line.
Las descripciones fuentes se almacenan en el rea DDLDML del diccionario y
los mdulos ejecutables en el rea DDLDCLOD.
Un dialogo consta de las siguientes partes:
- MAPA: transmite la informacin entre el terminal y la aplicacin; cada
dialogo solo puede contener un mapa
- PROCESOS: son conjuntos de Instrucciones ADS/O que definen la forma en
que se van a tratar los datos; pueden manipular una base de datos, ceder
control a otros dilogos, hacer operaciones de asignacin o aritmticas,
invocar subrutinas, etc.
Pueden ser de dos tipos:
- proceso PREMAP que define un tratamiento de datos que ha de ser
ejecutado antes de que se visualice el mapa en el terminal. Todos los
Dilogos debe tener al menos un Proceso PREMAP
- proceso RESPONSE que define un tratamiento a ejecutar despus e la
visualizacin e introduccin de datos en el mapa; puede haber varios
para un dialogo y estn asociados a este mediante una tecla de
funcin o un valor de respuesta.
- REGISTROS: aquellos con los que va a trabajar el dialogo; son:
- registros del mapa
- registros de trabajo
- registros de bases de datos
- SUEESQUEMA: visin de la base de datos que ser utilizada por el dialogo.
Pgina
6
CURSO
NOMBRE
CURSO DE I.D.M.S
IDMS
TITULO
Ejecucin de un dialogo
ADS/On-line ejecuta los dilogos de uno en uno para una sesin de terminal.
Siempre que se ejecuta un dialogo se siguen los pasos que a continuacin se
detallan:
- PREMAP PROCESS (siempre debe existir), finaliza con un comando de
control, generalmente DISPLAY, que pasa el control al mapa. Si no existe
este proceso, el dialogo se ejecuta empezando directamente en el paso
siguiente.
- MAPOUT: visualiza en el terminal el mapa con sus datos o finaliza la tarea
de IDMS/DC (lgicamente queda en suspenso). (Si se trabaja con base de
datos, un mapout finaliza la run unit, libera los bloqueos de la base de
datos y los de los registros current y escribe un punto de recuperacin en
el fichero JOURNAL si es necesario).
- MAPIN: reinicia la tarea IDMS/DC en funcin de la respuesta dada en el
terminal y pasa los datos introducidos en el mapa a los registros
correspondientes
-RESPONSE PROCESS: est asociado a una respuesta determinada o a una
tecla de funcin; todos los mdulos de proceso deben terminar con un
comando de control.
Pgina
7
CURSO
NOMBRE
CURSO DE I.D.M.S
IDMS
TITULO
Pgina
8
CURSO
NOMBRE
CURSO DE I.D.M.S
IDMS
TITULO
Pgina
9
CURSO
NOMBRE
CURSO DE I.D.M.S
IDMS
TITULO
Pgina
10
CURSO
NOMBRE
CURSO DE I.D.M.S
IDMS
TITULO
Pgina
11
CURSO
NOMBRE
CURSO DE I.D.M.S
IDMS
TITULO
Pgina
12
CURSO
NOMBRE
CURSO DE I.D.M.S
IDMS
TITULO
En todas las formas de las sentencias FIND y OBTAIN se puede incluir las
opciones KEEP o KEEP EXCLUSIVE, que establecen bloqueos explcitos sobre los
registros objeto de la operacin.
KEEP EXCLUSIVE impide un acceso concurrente de lectura y/o actualizacin
sobre el registro.
El formato de la instruccin con la clausula es el siguiente:
OBTAIN (KEEP
).
FIND
(KEEP EXCLUSIVE)
Las sentencias FIND y OBTAIN tienen varios formatos
OBTAIN registro DB-KEY IS db-key-id
FIND
Permite acceder directamente a un registro por su DB-KEY.
OBTAIN (CALC (ANY)) registro.
FIND
(DUPLICATE)
Permite seleccionar una ocurrencia de registro CALC dentro de la base de
datos. Previamente habremos movido un valor al campo clave CALC del
registro.
OBTAIN (FIRST) registro WITHIN nombre-de-set.
FIND
(LAST)
WITHIN nombre-de-area.
(NEXT)
(PRIOR)
(num.)
Permite seleccionar un registro dentro de un set o un rea. En
todos los casos se puede indicar o no un tipo de registro. Si no se indica,
selecciona la ocurrencia indicada de cualquier
OBTAIN OWNER WITHIN nombre-de-set
FIND
Permite seleccionar la ocurrencia del registro padre de un set
OBTAIN CURRENT registro
FIND
WITHIN nombre-de-set
WITHIN nombre-de-rea
Permite seleccionar un registro current de tipo de registro, de set o de rea
como current de run unit.
Este formato se utiliza habitualmente con la instruccin MODIFY.
Pgina
13
CURSO
NOMBRE
CURSO DE I.D.M.S
IDMS
TITULO
Pgina
14
CURSO
NOMBRE
CURSO DE I.D.M.S
IDMS
TITULO
Sentencias de actualizacin
Permiten actualizar los datos almacenados en la base de datos. Son las
siguientes:
STORE registro
Aade una nueva ocurrencia de registro a la base de datos. Hay que
establecer los current de todos los sets a los que el registro ha de
conectarse automticamente; si el set de carga es manual hay que
establecer el curren del padre del set al que conectaremos el registro ms
adelante.
MODIFY registro
Reemplaza los valores del registro current de run unit por los valores
indicados en. la zona de trabajo. Esta instruccin debe ir precedida por una
instruccin STORE, GET, OBTAIN o de otra MODIFY.
CONNECT registro TO set
Conecta una ocurrencia del registro especificado al set indicado. Este set
tiene que estar definido como MM (Mandatory Manual), OA (Optional Automatic) o
OM (Optional Manual).
DISCONNECT registro FROM set
Suprime la conexin de un registro al set indicado, sin eliminar el registro de
la base de datos. Esta instruccin solo puede emplearse con sets definidos como
OPTIONAL. Se pierde el current de set y se mantienen los otros tres.
(PERMANENT)
ERASE registro (SELECTIVE) (MEMBERS)
(ALL)
Desconecta un registro de todos los sets a los que pertenece y lo borra de la
base de datos. El registro a borrar debe ser current de run unit.
La clausula ALL borra el registro indicado y todos sus hijos en los sets de los
que sea padre.
La clausula PERMANENT borra el registro indicado y sus hijos Mandatory. Los
hijos Optional son desconectados.
La clausula SELECTIVE borra el registro indicado, sus hijos Mandatory y sus
hijos Optional que no sean hijos de ningn otro set. Los hijos Optional que sean
hijos de otro set solo son desconectados.
Pgina
15
CURSO
NOMBRE
CURSO DE I.D.M.S
IDMS
TITULO
Pgina
16
CURSO
NOMBRE
CURSO DE I.D.M.S
IDMS
TITULO
)
)
)
)
Pgina
17
CURSO
NOMBRE
CURSO DE I.D.M.S
IDMS
TITULO
|
|
|
|
|
Pgina
18
CURSO
NOMBRE
CURSO DE I.D.M.S
IDMS
TITULO
Sentencia RETURN
Pasa control a un dialogo de nivel mas alto dentro de la estructura de la
aplicacin, que este operativo. El dialogo que devuelve control queda no operativo.
Un dialogo que ha sido llamado mediante LINK devuelve control, con
RETURN, al dialogo que emiti el LINK, a la instruccin siguiente a la LINK. Nunca
podr devolver control a un dialogo que este en un nivel ms alto que el que hace
el LINK. Si podr pasar control a cualquier dialogo que haya sido llamado con
INVOKE dentro de la estructura anidada.
Fuera de estructuras anidadas, la instruccin RETURN puede devolver control
a cualquier dialogo de cualquier nivel o al primer nivel de la estructura de la
aplicacin.
RETURN (TO nombre-dialogo) (CLEAR) (CONTINUE)
(TO TOP
)
La variable nombre-dialogo es el nombre del dialogo al que se devuelve
control o un campo variable que contiene dicho nombre.
TO TOP devuelve control al dialogo del primer nivel dentro de una estructura
anidada o al dialogo mainline de entrada a la aplicacin si no existe estructura
anidada.
CLEAR inicializa los buffrs de los registros y los current del dialogo que
recibe control.
CONTINUE provoca la ejecucin del proceso premap del dialogo que recibe
control.
Sentencia LEAVE
Termina la sesin de ADS/O que se esta ejecutando; los dilogos operativos
hasta entonces dejan de estarlo y.se liberan todos los current y buffers de
registros.
LEAVE (ADS)
Si no se especifica ADS se devuelve control a la pantalla de ADS de seleccin
de dilogos.
Pgina
19
CURSO
NOMBRE
CURSO DE I.D.M.S
IDMS
TITULO
Pgina
20
CURSO
NOMBRE
CURSO DE I.D.M.S
IDMS
TITULO
Sentencia MULTIPLY
La instruccin MULTIPLY; multiplica un valor especificado (o el valor contenido en un
campo variable) por un segundo campo variable donde queda almacenado el
resultado de la operacin.
MULTIPLY valor BY campo-variable (ROUNDED )
(TRUNCATED)
El resultado de la operacin queda en el campo-variable.
La opcin ROUNDED especifica que la parte decimal de campo- va1iable es
redondeada en el caso de que el.resu1tado de la operacin tenga ms cifras
decimales que las definidas en campo- variable. Esta es la. opcin que se
toma por defecto.
La opcin TRUNCATED especifica que la parte decimal de campo-variable
es truncada.
Sentencia DIVIDE
La instruccin DIVIDE divide el valor contenido en un campo variable
(que representa al dividendo) entre un determinado valor o un campo que lo
contiene (y que representa al divisor).
DIVIDE divisor INTO dividendo
GIVING cociente
REMAINDER resto
(ROUNDED )
(TRUNCATED)
(ROUNDED )
(TRUNCATED)
Pgina
21
CURSO
NOMBRE
CURSO DE I.D.M.S
IDMS
TITULO
Sentencia COMPUTE
La instruccin COMPUTE calcula el resultado de una expresin aritmtica
COMPUTE campo-variable = expresin aritmtica (ROUNDED )
(TRUNCATED )
El resultado de la operacin queda en campo-variable.
La opcin ROUNDED especifca que la parte decimal de campo-variable es
redondeada en el caso de que el resultado de la operacin tenga ms cifras
decimales que las definidas. Esta es la opcin que se toma por defecto.
La opcin TRUNCATED especifica que la parte decimal de campo-variable
es truncada.
Sentencia MOVE
La instruccin MOVE asigna a un campo-variable un valor constante, el
valor de una constante figurativa o el valor contenido en un campo de datos.
MOVE valor TO campo-variable (ROUNDED )
(TRUNCATED)
El resultado de la operacin queda en campo-variable.
Las opciones ROUNDED y TRUNCATED funcionan como en las sentencias
vistas anteriormente.
La instruccin MOVE de ADS se diferencia de la del COBOL en que, al mover
un valor a un campo numrico ms pequeo, el COBOL trunca, mientras que
el ADS cancela.
Pgina
22
CURSO
NOMBRE
CURSO DE I.D.M.S
IDMS
TITULO
| sentencia
|
| DO. sentencia,... END. |
| sentencia
|
| DO. sentencia,... END. |
Pgina
23
CURSO
NOMBRE
CURSO DE I.D.M.S
IDMS
TITULO
EXIT.
Pgina
24
CURSO
NOMBRE
CURSO DE I.D.M.S
IDMS
TITULO
| (TEMP)
| (PERM)
|
|
|
Pgina
25
CURSO
NOMBRE
CURSO DE I.D.M.S
IDMS
TITULO
CURRENT
FIRST
LAST
DELETE SCRATCH AREA ID nombre-de--scratch NEXT
PRIOR
ALL
RECORD ID num-registro
RETURN RECORD ID INTO nombre-de-campo
Esta instruccin borra los registros del rea de scratch identificada con
nombre-de-scratch.
Si se especifica CURRENT, que es tambin el valor que toma por defecto, la
instruccin borra el registro que este current en ese momento para el rea.
Si se especifica FIRST o LAST, se borraran el primer o ltimo registro del
rea de scratch.
Si se especifica NEXT o PRIOR, se borraran el registro siguiente o el anterior
al registro curret del rea de scratch.
Si se especifica ALL, se borraran todos los registros del rea de scratch
especificada.
Cada registro de scratch tiene un identificador que, o bien es asignado
automticamente por el IDMS, o bien es asignado por el programador. Este
identificador puede ser utilizado en las distintas operaciones para localizar los
registros.
Si se especifica RECORD ID num-registro, se borrara el registro al que
corresponda el identificador num-registro.
Si se especifica RETURN RECORD ID INTO nombre-de-campo, se almacenara
en el campo nombre-de-campo el identificador del registro de scratch asignado
por el IDMS.
Pgina
26
CURSO
NOMBRE
CURSO DE I.D.M.S
IDMS
TITULO
| ALL
|
|(nombre-de-registro |
Pgina
27
CURSO
NOMBRE
CURSO DE I.D.M.S
IDMS
TITULO
Pgina
28
CURSO
NOMBRE
CURSO DE I.D.M.S
IDMS
TITULO
Pgina
29
CURSO
NOMBRE
CURSO DE I.D.M.S
IDMS
TITULO
SUBS:
TOUPPER:
TRANS:
VER:
WORDCAP:
Pgina
30
CURSO
NOMBRE
CURSO DE I.D.M.S
IDMS
TITULO
Pgina
31
CURSO
NOMBRE
CURSO DE I.D.M.S
IDMS
TITULO
4.5. Conclusin
ADS/On-line es un sistema integrado de herramientas de software que
permite desarrollar y ejecutar aplicaciones on-line Estas herramientas son IDD,
MAPC, ADSC, ADSA y el ADS Run-time System
Un DIALOGO es la unidad de proceso en una aplicacin ADS/Online Consta
de las siguientes partes mapa, procesos (premap y response) y registros. Cada
dialogo, al ejecutarse, carga una copia del subesquema qu vaya a utilizar.
Una instruccin ADS/O siempre est formada por palabras CLAVE, que
indican el tipo de operacin a realizar y PARAMETROS, que cualifican las anteriores
y especifican operaciones adicionales.
Segn las funciones que realicen, las instrucciones de ADS/O se clasifican en varios
grupos:
- de acceso y actualizacin de bases de datos, para manipular los datos de
las mismas
- de control, para ejecutar otros dilogos u otras partes del mismo dialogo
- aritmticas y de asignacin, para realizar operaciones aritmticas y mover
valores a campos
- condicionales, que detectan el resultado de una comparacin y especifican
distintos tipos de proceso dependiendo del resultado
- control de subrutinas, que permiten hacer llamadas a subrutinas dentro de
un proceso y devolver control desde las mismas
- de modificacin de mapas, que permiten modificar los atributos definidos
para los campos del mapa que este utilizndose
- de gestin de scratch
- de utilidad, permiten el uso de facilidades del sistema
- orientadas al generador.
Conviene que el tamao de los dilogos sea el menor posible para favorecer
el funcionamiento del monitor de teleproceso..
Pgina
32