En muchas ocasiones en nuestros desarrollos necesitamos realizar consultas u obtener información de otras tablas en base a un campo referencial relacionado; por ejemplo, en el detalle de facturación obtener el nombre y precio de un artículo en la tabla productos en base a su (id). Para lo cual te explicare el uso de la macro en Scriptcase llamada sc_lookup.
Sintaxis
sc_lookup(Dataset, “SQL Command”, “Connection”)
Parametro | Descripción |
Dataset | Nombre del conjunto de datos, puede colocarse cualquier nombre de identificación, suele colocarse ds |
SQL Command | Sentencia SQL que estará ejecutando la macro |
Connection | Nombre de la conexión. Este parámetro es opcional solo se utiliza si nos referimos a una BD diferente a la aplicación |
Fuente: http://www.scriptcase.net/docs/es_es/v81/manual_mp.htm
Esta macro permite al usuario ejecutar comandos SQL y devolver el resultado a la variable “conjunto de datos”. La estructura del “dataset” es una matriz (fila / columna). El parámetro “conexión” es opcional. Se utiliza cuando el comando se ejecuta en una base de datos distinta de la especificada para la aplicación
Para entender fácilmente el tema de Dataset te adjunto una tabla de Excel en donde he colocado los índices del Dataset en filas y columnas, iniciando con el índice [0] respectivamente para tenerlo claro, por ejemplo si queremos ubicar el nombre del producto de la primera fila lo realizamos (fila/columna) en dicho caso sería fila (0) columna (1) esto lo identificamos en formato de matriz de php
Si necesitamos el campo nombre de producto lo realizaríamos con la ubicación fila[0]columna[1].
Es así como se coloca en scriptcase {ds[0][1]}; así es como identificamos el Dataset del nombre de producto de la primera fila, obteniendo como resultado: Laptop Dell
En base a esto te mostrare como utilizar el código dentro de una aplicación Blank y en un formulario de Detalle de facturación
Aplicación Blank
En el evento onExecute
En el siguiente código realizamos una consulta a la tabla de productos, para obtener como resultado los campos nombre y precio y luego poder realizar el despliegue de esta información con un echo
En el ejemplo que mostraré tenemos un maestro/detalle de Factura y detalle de Factura, para lo cual en este último requiero obtener el precio de cada producto en base a la selección del mismo, en donde crearemos un método PHP llamado: PrecioUnitario, como te muestro a continuación.
Este ahora solo es de llamarlo dentro de un evento Ajax en el campo idProd onChange, es decir cuando cambie el contenido de este campo se dispara la búsqueda del precio en la tabla productos.
Observa como en el siguiente video
Vea más contenido en nuestro blog.
También podría gustarte…