Sei sulla pagina 1di 14

TUTORIAL

CREACIN DE PANTALLAS ADICIONALES POR LA HERRAMIENTA VALERY VDK E INTEGRACIN DE ESTOS DATOS EN LOS REPORTES DE VALERY
La informacin contenida en este documento representa el punto de vista actual de CYBERNETIX SERVICIOS VENEZUELA en los temas discutidos en la fecha de publicacin. Debido a que CYBERNETIX debe responder a las fluctuantes condiciones del mercado, no se debe interpretar como un compromiso de CYBERNETIX, y CYBERNETIX no puede garantizar la exactitud de cualquier informacin presentada despus de la fecha de publicacin. Todas las marcas nombradas en este documento son marcas comerciales o registradas de su respectivo fabricante.

Este documento tiene nicamente fines informativos. Copyright Diciembre 2012 CYBERNETIX SERVICIOS VENEZUELA, C.A. CYBERNETIX SERVICIOS PANAMA, S.A Todos los derechos reservados.-

http://www.valery.com

Para la creacin de pantallas adicionales partimos de que usted tiene conocimientos muy bsicos del lenguaje de programacin Delphi as como de SQL Firebird. Luego de terminado este manual usted tendr los conocimientos para crear pantallas adicionales as como visualizar los datos ingresados en los distintos reportes. El ejercicio consiste en crear una pantalla en facturacin que solicitar: Nmero de Siniestro Placa del Vehculo

La pantalla se mostrar al Registrar un documento de Ventas, en este caso solamente la factura. Luego estos dos campos los mostraremos en el formato de factura. Herramientas: Valery Versin 5248, Valery VDK, IBExpert. Pasos: 1) Abrir ValeryVDK e ir a la opcin Campos Adicionales, ac seleccionaremos el mdulo donde queremos agregar los campos adicionales, Ventas y agregamos nuestros dos campos que le asignaremos el tipo Varchar (100) a ambos. La longitud y tipo de campos puede variar segn la necesidad de lo que necesitemos desarrollar.

http://www.valery.com

2) Luego de registrados los campos adicionales crearemos la pantalla adicional, para ello ir a la opcin Pantallas Adicionales. Se mostrar la pantalla donde seleccionar el Mdulo (Ventas), el Evento (Al Registrar) y las condiciones adicionales, en esta parte es donde pondremos la condicin para que la pantalla salga solamente cuando registremos la Factura de Ventas de lo contrario saldr en todas las operaciones de Ventas (Pedidos, Presupuestos, Notas de Entrega).

Al entrar en la opcin de condiciones para este caso queremos que solo salga en factura por lo que filtramos usando el campo CTIPO_DOCUMENTO = FAC, podemos utilizar varios campos dependiendo de las necesidades del cliente y solo podemos poner dos condiciones.

http://www.valery.com

Ahora si podemos entrar en la programacin de la ventana, para ello entrar a la opcin Cdigo Fuente.

http://www.valery.com

3) Al entrar a este mdulo automticamente ya estar creada la pantalla y debemos de agregarle los campos, para este caso agregamos: Dos TLabel, les cambiamos el texto por defecto en la propiedad Caption de cada uno de ellos. Dos TEdit, les cambiamos el texto por defecto en la propiedad Text de cada uno de ellos y lo dejamos en blanco. Dos TButon, les cambiamos el texto por defecto en la propiedad Caption de cada uno de ellos. Adems le cambiamos el ttulo a la ventana en la propiedad Caption.

http://www.valery.com

4) Eventos: Programaremos los dos posibles eventos al presionar cada uno de los botones, para entrar en el cdigo entramos dando doble clic sobre cada uno de ellos. Comenzaremos con el botn Cancelar. Al dar doble clic saldr la parte de cdigo en la que pondremos: self.close(); Con el objetivo de que cierre la ventana al presionarlo

Luego el botn Registrar quedando el cdigo de esta manera.

Por ltimo registramos los cambios.

http://www.valery.com

5) Hasta este punto al Registrar una factura nos saldr la ventana programada solicitando los datos:

6) Luego debemos de agregar estos campos en el Formato de Factura, para ello debemos de conectarnos con el IBExpert a la BD de Valery y modificar el procedimiento almacenado del Reporte, para este caso es REP_FMT_VTA_DOCUMENTO. Nota: Los datos de cada uno de los mdulos donde podemos crear las pantallas se guardan de la siguiente manera. Pantalla en Ventas: VENTAS_AD Pantalla para cada uno de los renglones en Ventas: VENTAS_DETALLES_AD Pantalla en Ficha de Clientes: CLIENTES_AD Pantalla en Ficha de Proveedores: PROVEEDORES_AD Pantalla en Ficha de Productos Terminados: PRODUCTOS_TERMINADOS_AD Pantalla en Ficha de Productos Servicios: SERVICIOS_AD Pantalla en Ficha de Productos Compuestos: PRODUCTOS_COMPUESTOS_AD

http://www.valery.com

Para el ejemplo que estamos implementando en este tutorial en la consulta SQL deberamos hacer una Unin con la tabla VENTAS_AD. Ahora bien Cmo sabemos cual consulta o procedimiento modificar? Para esto todas las consultas y procedimientos de los reportes en V3 se guardan en la BD en 5 tablas bsicas. V3REPORTES V3REPORTES_CONSULTAS V3REPORTES_CAMPO_FILTRO V3REPORTES_CONSULTA_CAMPO V3REPORTES_CONSULTA_FILTRO

Para este caso nos centraremos en las 2 primeras: Lo primero que debemos de saber es qu cdigo tiene nuestro reporte a modificar, para esto vamos a Utilidades->Editor de Reportes->Editor de Formatos, buscamos nuestro reporte. En este caso es el 106.

http://www.valery.com

Filtramos en la tabla V3REPORTES_CONSULTAS por este cdigo y tendremos las diferentes consultas a nuestros procedimientos almacenados en este caso seleccionamos la consulta principal de este reporte a modificar REP_FMT_VTA_DOCUMENTO.

En la columna SQl podemos visualizar la consulta al procedimiento y es este procedimiento el que debemos de modificar. Una vez que estamos en el cdigo del procedimiento debemos de: A. Crear los campos de salida. Tener en cuenta que deben de ser el mismo tipo de dato y de la misma longitud en caso de ser varchar.

http://www.valery.com

B. Luego buscamos la consulta principal y hacemos un LEFT JOIN con la tabla VENTAS_AD, uniendo por el campo comn en ambas tablas y que funcionan a su vez como llave primaria CORRELATIVO, tambin le agregamos nuestros dos campos en el SELECT, (NO_SINIESTRO, PLACA) y no debemos de olvidar poner las variables de destino en la clusula INTO.

http://www.valery.com

C. Luego compilamos en el rayo amarillo para guardar los cambios. Si no nos da error habremos terminado con la modificacin de la consulta SQL. D. Algunos tendrn la duda de porqu usamos un LEFT JOIN en vez de un JOIN, lo usamos de esta manera debido a que todos los formatos (Factura, Presupuesto, Pedido, Nota de Entrega, Orden de Despacho) usan la misma consulta, y en este caso la pantalla solo saldra para factura por lo que solo se estara guardando registros para factura por lo que al tratar de visualizar en Presupuesto al usar JOIN correramos el riesgo de que el formato saliera en blanco. Debemos tener en cuenta el tipo de modificacin que le hacemos a los procedimientos almacenados. 7) Ya en este punto podemos de ir a nuestro formato y ya tendremos disponible los dos campos, solo tenemos que agregarlo en la parte de nuestro reporte que el cliente solicite.

http://www.valery.com

8) Una vez llegado a este punto ya lo tenemos todo listo, pero Cmo hacemos para llevar todo el cdigo a nuestro cliente sin tener que volver a hacer todos estos pasos? En este caso toda la informacin se encuentra en la BD, solo debemos de crear un Script que tenga toda la informacin modificada en la BD. i. Crear los campos adicionales de la tabla VENTAS_AD. En este caso son dos Ejemplo: ALTER TABLE VENTAS_AD ADD NO_SINIESTRO VARCHAR(100); ALTER TABLE VENTAS_AD ADD PLACA VARCHAR(100); COMMIT WORK; ii. Crear el Script con la modificacin del procedimiento REP_FMT_VTA_DOCUMENTO, dando clic en DDL del procedimiento.

http://www.valery.com

iii.

Ahora buscamos la tabla y exportamos la informacin de la siguiente manera.

Al exportar se crear un SQL y un Archivo Binario (.lob), que por defecto tendr el mismo nombre que el SQL. Cuando se genere el Script debemos de modificar la ruta dentro del archivo para no tener problema de ruta en las otras mquinas donde lo ejecutemos. Lo podemos modificar con Bloc de Notas o desde el IBExpert. Es muy IMPORTANTE esta parte ya que el Script toma datos del archivo .lob, cuando se ejecute el proceso deben de estar ambos en la misma carpeta.

http://www.valery.com

Luego unimos todos nuestros Script quedando de la siguiente manera. Ver archivo adjunto PANTALLA_ADICIONAL.RAR Este Script solamente lo debemos de ejecutar una sola vez en la BD preferentemente en la mquina principal o servidor, antes de esto realizar respaldo de datos, los dos archivos deben de estar juntos, (sql), (lob).

http://www.valery.com

Potrebbero piacerti anche