Lea en AS/400 System i . . .

Aprovechando las posibilidades del WRKACTJOB a través de sus parámetros

Obtenga una salida diferente de la habitual al ejecutar el comando WRKACTJOB, aprovechando lo ofrecido por algunos parámetros interesantes que posibilitan entre otras acciones la de renovar automáticamente la pantalla resultante.

FaceBookTwitterGoogle+

Manipulación de bases de datos desde programas CL, a través de Query/400

 

Aprenda cómo actualizar tablas desde programas CL, sin usar lenguajes de alto nivel, invocando y parametrizando Queries desde programas CL.

QUERY/400 permite generar consultas y almacenar sus características en objetos de tipo *QRYDFN: nombres de los archivos a consultar, formulario de salida  (detalle o resumen), tipo de salida del informe (pantalla, impresora o archivo), criterio de selección de registros o definición de campos de resultado, etc.. Luego, para ejecutar consultas, el sistema operativo provee el comando RUNQRY.

Una vez que la consulta está definida (objeto *QRYDFN creado), existen dos posibilidades de cambiarla: se puede modificar las características de la consulta antes de ejecutarla; o bien alterar algunas de sus propiedades en el momento de invocarla,  sólo para la ejecución corriente. Esta última opción permitirá realizar una especie de “override” de la definición de la consulta en forma dinámica, en función de datos ingresados por el usuario en el momento de la ejecución.

Estas facilidades, sumada a la posibilidad de incluir la sentencia RUNQRY dentro de un programa, potencian a los programas CL con una capacidad que naturalmente no poseen: la de grabar datos en archivos. Este último punto es el tema a tratar en el presente tip.

Alteración de características de la consulta en el momento de invocarla

El prompt del mandato RUNQRY posee parámetros que permiten alterar temporalmente algunas de las características de la consulta, solamente para esa ejecución. La siguiente pantalla muestra los parámetros del comando RUNQRY:

AS400-manejo-base-datos-desde-programas-CL-con-query-1

Detalles del prompt del mandato:

 

  1. Archivo de consulta: a través de este parámetro puede seleccionarse otro archivo sobre el cual la consulta se ejecutará. Es importante aclarar que el archivo elegido debe tener  el mismo formato de registro que el archivo sobre el cual corre la consulta.
  2. Tipo de salida del informe: en este parámetro se puede especificar  salida por pantalla, por impresora o por archivo.
  3. Formulario de salida: el valor *DETAIL muestra el listado completo; *SUMMARY, sólo información de resumen (totales, promedios, mínimos, máximos y contadores).
    1. Selección de registros: *YES habilita en forma automática la pantalla de Selección de registros, permitiendo escribir un criterio de selección diferente al especificado originalmente en la consulta. Este es el parámetro a destacar en este tip.

El siguiente punto incluye una aplicación ejemplo, donde se combina el uso de queries con selección de registros y salida por archivo, “todo” dentro del mismo programa CL.

Cómo potenciar un programa CL con invocaciones a consultas

El siguiente programa visualiza los objetos de tipo *FILE que son propiedad de un determinado usuario y pertenecen a una biblioteca, cuyo nombre se solicita por programa.

AS400-manejo-base-datos-desde-programas-CL-con-query-2

Detalles del programa:

  1. Se solicita el nombre de la biblioteca, y se chequea su existencia.
  2. El mandato DSPOBJD vuelca al archivo TEKQRY/ARCHIDES  la descripción de cada uno de los archivos de la biblioteca seleccionada en el paso anterior.
  3. Se ejecuta la consulta sobre el archivo generado en el paso 2, especificando RCDSLT en *YES. Esta opción permite seleccionar registros que cumplan con un criterio. En este ejemplo, el nombre de un perfil de usuario que sea propietario de los archivos de la biblioteca seleccionada.
  4. Ejecuta la consulta y lista los nombres de los archivos que son propiedad del usuario elegido dinámicamente. En este punto, también podría invocarse a cualquier programa HLL que procese los datos del archivo.

El siguiente esquema representa la secuencia de acciones del programa anterior:

AS400-manejo-base-datos-desde-programas-CL-con-Query-3

La posibilidad de manipular y actualizar tablas desde programas CL puede ser muy útil para pequeñas aplicaciones informales, desarrolladas a veces por operadores para resolver tareas cotidianas, sin necesidad de recurrir a lenguajes de alto nivel.

Para tener en cuenta...

  • Cuando en el mandato RUNQRY, el parámetro RCDSLT (selección de registros) es *YES, la ejecución está limitada solamente a entornos interactivos. Debe considerarse los efectos sobre el rendimiento cuando se ejecutan consultas “pesadas” interactivamente.
  • Si bien el comando RUNQRY puede utilizarse sin tener el producto bajo licencia QUERY/400, cuando RCDSLT está especificado en *YES, es necesario tener el producto instalado.
  • Utilizar RUNQRY con selección de registros, dentro de un programa CL, resultará más eficiente, en términos de performance, que realizar la selección con sentencias IF en código CL.

Copyright Teknoda S.A.

IMPORTANTE:
“Notas técnicas de AS/400" se envía con frecuencia variable y sin cargo como servicio a nuestros clientes AS/400. Contiene notas/tutoriales/artículos técnicos desarrollados en forma totalmente objetiva e independiente. Teknoda es una organización de servicios de tecnología informática y NO comercializa hardware, software ni otros productos.
Si desea suscribir otra dirección de e-mail para que comience a recibir las Notas Técnicas AS400, envíe un mensaje desde esa direcciónletter400@teknoda.com, aclarando nombre, empresa, cargo y país del suscriptor.

AS400 , iSeries y System i son marcas registradas de IBM. IBM no es el editor de esta publicación y no es responsable de la misma en ningún aspecto. La información contenida en esta publicación ha sido generada por nuestros especialistas a partir de fuentes consideradas confiables y del ejercicio profesional cotidiano. No obstante, por la posibilidad de error humano, mecánico, cambio de versión u otro, Teknoda no garantiza la exactitud o completud de la misma.
COPYRIGHT TEKNODA S.A. PROHIBIDA SU REPRODUCCION TOTAL O PARCIAL SIN CONSENTIMIENTO DE TEKNODA


Lea en AS/400 Tips . . .

Infografía comparativa Comandos de SAVE RESTORE del AS400

save_restore_thumbnail

Conozca y diferencie visualmente qué partes del almacenamiento resguarda y restaura cada comando y cada opción del Menú Salvar y Restaurar. PUEDE DESCARGAR UN FORMATO POSTER PARA IMPRESION.

Para lograr un entendimiento conceptual es de suma utilidad contar con una ayuda gráfica, que  permita diferenciarlos a primera vista. Nuestro equipo de especialistas ha desarrollado el "Infographics" que presentamos con este tip. Por supuesto, el mismo debe complementarse con la información detallada de los innumerables parámetros de cada comando, pero es un útil marco de referencia  para recordar el área de injerencia de cada comando.

LEER ESTE ARTICULO >>>>>

 

 

 

Copyright © 2017 Teknoda tips - Tecnologia SAP Netweaver - IBM AS400 - System i - iSeries. Todos los derechos reservados.
Joomla! es software libre, liberado bajo la GNU General Public License.