Ventana Paramétricos

Controles habituales  Conceptos básicos

Accesible desde la opción ventana Paramétricos...; permite asociar a un concepto una descripción paramétrica (un breve programa realizado, bien en lenguaje tradicional de paramétricos, o bien en JavaScript). Los conceptos de esta clase (no se trata de un Tipo de concepto especial), no son realmente conceptos con un precio, fecha, descripción, texto etc. sino que representan UNA FAMILIA DE CONCEPTOS, descrita por el programa del que hablamos. Los elementos de la familia se pueden seleccionar y utilizar, ya como un concepto normal, mediante una selección de parámetros con opciones excluyentes entre sí.

Además, como caso especial, también se pueden tener conceptos de clase familia paramétrica con el programa compilado en una DLL, no editable en esta ventana (la especificación tanto del lenguaje estándar tradicional de paramétricos, como las especificaciones para generar paramétricos compilados, las encontrará en un anexo de este ayuda en línea y en el sitio oficial www.fiebdc.org). Esto permite proteger la propiedad intelectual de la base de datos, que no se puede modificar ni copiar, sólo utilizar las combinaciones resultantes.

En la primera sección de la ventana, a la izquierda, se rotula el icono de Tipo, Código y Resumen del concepto familia paramétrica seleccionado. En la parte derecha de ésta sección, aparece:

Un índice a la izquierda del primer botón muestra la forma de cálculo de las opciones válidas, inválidas y restricciones, con la siguiente notación: (0)paramétrico no calculado, (1) opciones calculadas y almacenadas opciones inválidas, (2)almacenadas opciones válidas, (3)calculo especial de restricciones.

Se pueden almacenar las opciones válidas o inválidas según la cantidad de cada, ya que se guarda la menor cantidad. Las no soportadas se representan como un número negativo, y entre corchetes la cantidad de líneas de restricciones -en caso de estar calculadas estas-.

El botón Chequea, para hacer una comprobación del programa paramétrico actual y comprobar que no hay ningún error de sintaxis, errata, etc. El chequeo de paramétricos es la única forma de tener precalculadas las opciones válidas (restricciones). Los resultado del chequeo se muestran en un archivo de texto \temporal\presenta.txt que se abre con el bloc de notas.

El clic con el botón izquierdo del ratón muestra sólo los errores en el programa paramétrico (nada si no hay), y el clic con el botón derecho muestra toda al información de todas las combinaciones con sus opciones y precios. El clic izquierdo si se mantiene pulsada la tecla CONTROL, evita que se chequeen recursivamente los paramétricos que hubiera en la descomposición del actual, que por defecto también se chequean.

El botón Restricciones, cuando están definidas, muestra las combinaciones no válidas entre los parámetros en forma de una lista con las opciones no válidas. Por ejemplo, con un resultado como:
Nº E  T1
1   1  6
2   1  7
tendríamos que la opción 1 del primer parámetro (E) es incompatible -o sea aparecerán desactivadas-, con las opciones 6 y 7 del segundo parámetro (T1).

El botón Compara, permite comparar el resultado de todas las combinaciones de un concepto, con el que se encuentra seleccionado en el paralelo, para ver hasta el último decimal si son idénticos en su funcionamiento (incluso aunque su sintaxis sea muy distinta). Si se mantiene pulsada la tecla CONTROL, además se busca y selecciona en el paralelo el concepto con el mismo código, si existe, en un sólo paso.

El botón Ventana propiedades conecta directamente con la ventana de propiedades del Tipo de concepto actual.

Pestaña Paramétrico:

En la primera sección de  esta pestaña (un panel horizontal de altura redimensionable mediante la línea separadora de ambos paneles), se rotulan en columnas los nombres de los parámetros horizontalmente y proporcionalmente al tamaño de cada uno de ellos.

Debajo de los rótulos de los parámetros, se despliegan tantas líneas como el mayor número de opciones de los parámetros, y en cada línea se dispone en primer una letra de la a hasta la z que identifica cada opción para cada parámetro.

Las opciones de cada parámetro se representan por un selector exclusivo (si seleccionamos un valor de una columna, al seleccionar otro quitamos la primera selección), que lleva un texto al lado. Cuando la elección de un parámetro tiene alguna incompatibilidad de selección con otros (incompatibilidad definida por el programa paramétrico), se desactivan  las opciones de todos los parámetros que no son compatibles con la selección realizada, y su rótulo aparece en color gris. Otra apariencia puede ser que los selectores sean botones cuadrados con imágenes asociadas a las opciones; esto se puede configurar en la pestaña Utilidades.

Otra ayuda del programa, es  que cuando la elección de parámetros de varias columnas, por incompatibilidad, obligan a elegir una opción, el rótulo se colorea de azul como si lo hubiésemos seleccionado (aunque el selector no se activa), y se esta forma ya se puede mostrar el derivado paramétrico que resultaría de elegirlo.

En la cabecera del panel inferior de esta pestaña aparece -cuando hay seleccionada una serie completa de parámetros de la familia-, el derivado paramétrico que corresponde a esa selección: icono de Tipo, Código, Unidad, Resumen, Precio, y debajo es él la información relacionada, en una colección de sub-pestañas:

Selección:

Muestra un resumen de las opciones del derivado seleccionado actualmente (si no hay valores seleccionados en los parámetros, se mostrará la imagen de la familia, en caso de que tenga). Es un resumen completo que muestra imágenes de las opciones seleccionadas en los parámetros, sus códigos, descripciones, y la referencia completa (si se ha definido en la pestaña Programa). Esta información complementa la de la línea del derivado.

Descomposición:

Si el programa de la familia paramétrica define una descomposición para esos conceptos, los conceptos más simples (que también pueden ser paramétricos) de la descomposición, se muestran en esta pestaña, al estilo de la ventana principal, con todos los campos de concepto: Tipo, Código, Ud,  Resumen, Precio, Cantidad e Importe.

El doble clic en una línea de descomposición, busca el identificador del concepto con ese código en la base actual, para abrir la ventana de propiedades si existe COMO CONCEPTO; si no existe como concepto porque es un derivado paramétrico, busca el concepto familia que lo genera, y abre en la ventana principal paralela la ventana del paramétrico del concepto, con la opción del derivado seleccionada.

Descripción:

También definido por el programa de la familia paramétrica, se muestra tal como aparecerá en la ventana Texto del derivado que traslademos.

Otros textos:

Textos adicionales, descriptivos del parámetro actual.

Programa:

Código programable que define para el concepto de familia actual: los parámetros posibles y las incompatibilidades entre ellos, los valores de Código, Resumen, Unidad, Precio..., la descomposición en otros conceptos, y si procede, el Texto y el Pliego.

Como se ha dicho antes, algunos desarrolladores de bases de datos tienen protegidos contra edición sus archivos, de forma que en ésta pestaña sólo aparece el mensaje 'INFORMACIÓN PROTEGIDA' Si el programa está escrito en lenguaje tradicional de paramétricos, podemos modificarlo cuando el archivo está en modo Edición.

IMPORTANTE: En una misma base de datos pueden convivir familias paramétricas definidas en los tres lenguajes: tradicional, en JavaScript y compiladas en DLL.

En la ventana de Informes y procedimientos hay programas JavaScript útiles para trabajar con bases paramétricas programadas en Javascript. Por ejemplo, el procedimiento \Colecciones especiales\Bases de datos\par1r · Regresión de matrices paramétricas, contienen funciones para modificar masivamente arrays de valores en los paramétricos (ordenarlos, aplicarles un factor...)

Si está pensando en trabajar en un archivo con familias paramétricas, le interesará leer la recopilación de consejos sobre edición de paramétricos  en el archivo de ayuda adjunto.

La selección de parámetros de esta pestaña se mantiene aunque cambiemos de pestaña, mientras no modifiquemos el programa o cambiemos de concepto.

Pestaña Librerías JavaScript:

Permite definir un código global común a toda la ejecución de programas paramétricos a dos niveles de generalidad. No tiene sentido para definiciones paramétricas en lenguaje tradicional -que tiene su estructura y sintaxis muy cerrada-, sino que se usa para definir funciones (de cálculo, validación, mensajes de error, chequeo...) para poder utilizar en todas las definiciones paramétricas de la B.D en JavaScript, sin tener que escribir ese código en todas.

Es simplemente como una cabecera de librería que siempre se va a ejecutar con cualquier paramétrico en JavaScript de la base de datos. Las subpestaña Librería particular de BD es común a todas las familias paramétricas del archivo actual, y Librería general externa es común a la aplicación y por tanto a todos los archivos de BD que se utilicen. La librería externa está en el archivo \macros\par_lib.js

Pestaña Utilidades:

Contiene herramientas para trabajar con descripciones paramétricas, orientadas sobre todo a desarrolladores de bases de datos.

El campo Tamaño en puntos de gráficos en opciones, permite visualizar imágenes en cada opción de los parámetros (32 puntos es un buen tamaño y 48 si son imágenes detalladas, en vez de colores por ejemplo). Si no se define un tamaño, se muestran selectores normales. Las imágenes que se toman deben estar dentro de la BD con un código de gráfico igual al código de la opción.

El campo Librería DLL permite especificar el archivo en el que se encuentran compiladas las descripciones paramétricas (cuando utilizamos esta opción).

Los botones tiene las funciones que se explican a continuación (casi todas activas con el archivo en modo Edición, ya que modifican la base). Tenga en cuenta que en los diálogos, siempre se admite opcionalmente una máscara de búsqueda SQL para que la operación no se realice sobre todos los conceptos paramétricos, sino solamente sobre un grupo:

Chequear paramétricos..., realiza una función similar a la del botón Chequea de la primera sección de la ventana, sólo que aquel es sólo para el paramétrico actual, y este para un grupo o todos los paramétricos del archivo. El chequeo, como valor añadido, además examina y graba en un índice las combinaciones válidas, de forma que una base chequeada, ejecuta los paramétricos mucho más rápidamente y además intenta ayudar sugiriendo las opciones que son válidas, cuando seleccionamos unas cuantas.

Como se construye un índice, otra ventaja añadida es que se nos permite chequear Todos los paramétricos de las base o todos los filtrados con la máscara, o bien solamente los No chequeados.

Compara paramétricos con el paralelo..., permite detectar diferencias entre los paramétricos de un archivo y otro abierto en el paralelo. Pulsando al tecla CONTROL, se busca y presenta en el paralelo si existe el mismo, es decir, se sincroniza.

Convertir paramétricos FIEBDC interpretados a JavaScript... convierte todos los paramétricos de lenguaje tradicional a JavaScript sin tener que re-codificar nada, esto es debido a la fuerte estructuración de los tradicionales y a la superior potencia de los de JavaScript. 

Convertir paramétricos JavaScript a FIEBDC compilados (DLL)... va un paso más allá y convierte paramétricos en lenguaje JavaScript en un programa de librería: una DLL compilada con el propio Menfis, de forma que NO ES NECESARIO UN COMPILADOR externo de ese lenguaje.

Recalcular derivados... Si se encuentran dentro del archivo actual conceptos que sean familias (descripciones ) paramétricas, y también conceptos derivados de esas familias, recalcula todos los derivados existentes a partir de las familias que los originaron. Sirve para actualizar derivados si hemos modificados las descripciones. También acepta una máscara de  códigos a seleccionar.

Volcado de DLL paramétrica... muestra un diálogo que acepta opcionalmente una máscara de códigos, para volcar a un archivo de texto (\temporal\presenta.txt) todas las combinaciones paramétricas para los parámetros globales actuales.

Información de DLL paramétrica... muestra información de la DLL completa o de los paramétricos seleccionados mediante máscara de códigos.

Restricciones del paramétrico actual es totalmente equivalente al botón de la esquina superior derecha, pero el formato de texto es separa por punto y coma (;).

Los 4 botones de la sección inferior, sirven para hacer búsquedas de conceptos por los criterios más útiles en el trabajo con paramétricos. Como siempre, el resultado de la búsqueda se muestra en la ventana principal. Por ejemplo, Derivados con familias muestra todos los conceptos de la base actual que por código pueden proceder de una familia paramétrica, y muestra cada uno a continuación del paramétrico que puede haberlos generado. Derivados sin familias da el mismo resultado pero sin los conceptos paramétricos. La búsqueda y comparación se hace sólo por códigos, por lo que pueden aparecer carpetas u otros conceptos que realmente no sean descompuestos.

 

Botones al pie

A la izquierda de todos los botones hay un pequeño campo que muestra el número de línea actual, cuando estamos en la subpestaña Programa. Los botones Siguiente, Anterior, Deshace e Imprime tiene las funciones habituales en estas ventanas.

El botón Acepta graba la descripción paramétrica si ha habido modificación. Cuando modificamos una descripción paramétrica, en cuanto cambiamos de ventana o de control dentro de esta misma, se graban los datos automáticamente, pero nos puede interesar ver los cambios mientras estamos tecleando.

El botón Traslada permite trasladar el derivado paramétrico que se muestra actualmente (si es que hemos hecho una selección con todos los parámetros) al DOCUMENTO del archivo paralelo. Si lo que deseamos es trasladar familias completas (el concepto paramétrico) debemos utilizar Traslada de la ventana principal, seleccionando el concepto paramétrico.

El concepto derivado se traslada a la línea de detalle seleccionada en un documento del archivo paralelo. Pueden mostrarse mensajes de error en alguno de los siguientes casos: no está abierto el archivo paralelo, o no está en edición, o no hay línea seleccionada en el documento