miércoles, 14 de noviembre de 2012

Generar un levantamiento de datos automatico de una tabla

Saludos. Siempre buscamos como automatizar mas los procedimientos de nuestras aplicaciones. :) Por ejemplo, para una aplicacion de facturacion, necesitamos introducir varios productos en un form (control grid) y para esto, es mas rapido si vamos digitando el codigo del producto y al presionar enter que se generen los datos de dicho producto, tales como descripcion, unidad de medida, precio, impuestos.. etc. Para lograr esto, procedemos asi:

Imaginemos que tenemos una tabla llamada "productos" con los campos: codigo, descripcion, unidadmedida, preciounitario. Queremos que, en un form de facturacion, digitemos (en una columna de un grid) el codigo del producto y que al presionar ENTER, se muestren los datos (en el resto de columnas) del producto de forma automatica.

1. Vamos al entorno de datos del formulario y agregamos la tabla que contiene los datos que vamos a "levantar" o "llamar": productos

2. En este ejemplo, tomamos que el codigo del producto se digitara en el text1 de la columna1 del grid1 y el resto de columnas mostraran la informacion al presionar enter. Para esto, escribimos un codigo como este en el evento KeyPress del text1 de la column1 del grid1:

**--

IF nKeyCode = 13     &&Presionamos enter
   
        SELECT productos
              LOCATE FOR productos.codigo = VAL(THISFORM.Grid1.Column1.Text1.Value)

                  IF FOUND()
                           **Cargamos descripcion
                           THISFORM.Grid1.Column2.Text1.Value = productos.descripcion
                           **Cargamos Unidad medida
                           THISFORM.Grid1.Column3.Text1.Value = productos.unidadmedida
                           **Cargamos precio
                           THISFORM.Grid1.Column4.Text1.Value = productos.preciounitario


                                         ELSE
                              
                                                   MESSAGEBOX("Producto no registrado en sistema. Verifique, 48, "Error")

ENDIF
**--


Guardamos y ejecutamos.

Saludos! Desde Managua, Nicaragua!
Ravenn :D :D :D












No hay comentarios:

Publicar un comentario