< Características avanzadas > Programas xjs > Parámetros

Parámetros

<< Click to Display Table of Contents >>

Navegación:  Características avanzadas > Programas xjs >

Parámetros

Los programas xjs pueden incorporar parámetros a los que el usuario puede dar valores en el momento de ejecutar el programa. Estos parámetros son declarados en el programa xjs y son editados en la ventana Parámetros del informe. Son de gran utilidad para que el usuario pueda determinar que datos desea extraer o para alterar el diseño del informe.

Los parámetros se declaran en el programa, igual que el resto de las variables, utilizando la palabra var seguida del nombre de la variable que almacenará el parámetro. A continuación, en la misma línea, se incluyen cuatro barras //// que indican que la variable es un parámetro. Por ejemplo,

var titulo = ""    //// Título del informe [["Conceptos carpeta por fecha de creación"]]

después de las cuatro barras puede figurar una P, una B, o PB.

P: indica que el parámetro es privado de este programa, de forma que si se incluye este programa en otro programa, el segundo no hereda los parámetros marcados con P. Si por el contrario no se indica P, el programa que incluye al primero hereda el parámetro, aunque este aparecerá con distinto color en la ventana de parámetros para diferenciarlo de los definidos en el propio programa. Para que no queden dudas sobre que programa ha declarado los parámetros, la ventana parámetros puede mostrar una columna con el nombre del archivo xjs que lo declaró.

B: indica que el parámetro es de tipo booleano. Este parámetro toma los valores Sí o 1 y No o 0. En la ventana Parámetros puede cambiarse su valor haciendo doble clic sobre la línea del parámetro.

PB: se utiliza para un parámetro que sea privado y booleano.

A: al hacer doble clic sobre el parámetro, en la ventana de parámetros de informe, se abre el diálogo de archivos, pudiendo seleccionar un nombre de archivo que, al aceptar en el diálogo, se copiará como valor del parámetro.

G: igual que A, pero presupone que el archivo se abrirá para grabar, por lo que si se indica un nombre de archivo ya existente, solicitará confirmación para reemplazar el archivo existente.

A continuación se especifica el texto explicativo del parámetro que aparecerá en la ventana parámetros, por ejemplo: Título del informe. Si este texto tiene el carácter dos puntos (:), se mostrará en negrita lo que queda a la izquierda de los dos puntos, y sin negrita el resto.

Después, encerrado por dobles corchetes, se indica el valor de defecto que toma el parámetro. Estos valores se aplicarán al parámetro cuando se pulse el botón Defectos en la ventana Parámetros del informe.

Por último, puede especificarse una lista de selección del/los valores para el parámetro. Estas listas facilitan enormemente la asignación de valores a los parámetros, se utilizarán en la ventana de Parámetros del informe al igual que se utilizan las listas de selección en el resto de la aplicación. Pueden emplearse dos sintaxis distintas para las listas de selección:

Si el parámetro es un concepto o una tabla auxiliar, se utiliza la sintaxis: <<tabla.campo>>, por ejemplo:

var entdesde="" //// Desde el código de proveedor: [[""]] <<prv.cod>>

cuando el usuario edita el parámetros entdesde en la ventana parámetros, puede especificar el carácter * para abrir la lista de todos los proveedores, o bien especificar un patrón, por ejemplo B* para abrir la ventana de selección con la lista de proveedores cuyo código comienza con B.

Si el parámetro no es un Concepto, la sintaxis para la lista de selección es similar a una sentencia SELECT, por ejemplo:

var estados = 0 //// Estados:  [[0]] <<sercon.est.select ide as o__o,0 as Tip,est as Estado, res as Descripcion from conest where tip=25 order by est>>

abrirá la ventana de selección con la lista de posibles estados de los conceptos de tipo Pago. Otro ejemplo:

var entmas="" //// Serie para el código de proveedor: [[""]] <<sercon.cod.select ide as o__o,0 as Tip,cod as Serie, res as Descripcion from sercon where tip=5 order by cod>>

en este caso la lista de selección contendrá las series definidas para los conceptos de tipo proveedor.

Al grabar un programa xjs que incluye parámetros, se crea en la carpeta Temporal de la aplicación un archivo de igual nombre que el archivo xjs pero con la extensión pjs. Este archivo contiene las declaraciones de los parámetros con los últimos valores asignados a los mismos. Se trata de un archivo de texto que puede abrirse y editarse con cualquier editor. El archivo de inicialización de la aplicación Sigrid.ini, contiene la entrada info_param=1 si info_param=0 entonces no se grabarán los parámetros en el archivo de la carpeta Temporal, grabándose únicamente con el programa xjs.

Las variables parámetro se utilizarán en el programa como el resto de las variables.