PC SOFT

AYUDA EN LÍNEA
DE WINDEV, WEBDEV Y WINDEV MOBILE

Este contenido proviene de una traducción automática.. Haga clic aquí para ver la versión original en inglés.
  • Consulta SQL con una selección de registros de archivos
  • Consulta SQL con filtro por programación
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaReportes y ConsultasCódigo de Usuario (UMC)
WEBDEV
WindowsLinuxPHPWEBDEV - Código Navegador
WINDEV Mobile
AndroidWidget Android iPhone/iPadApple WatchUniversal Windows 10 AppWindows Mobile
Otros
Procedimientos almacenados
Para filtrar (o seleccionar) los registros procedentes de un archivoarchivo de datos, usted tiene la capacidad de realizar un bucle de búsqueda y de utilizar HFilter.
El mejor método para realizar este filtro (o selección) consiste en utilizar una consulta SQL.
Veamos cómo realizar un filtro usando:
Consulta SQL con una selección de registros de archivos
Esta consulta se utiliza para seleccionar los registros de fichero correspondientes a una condición de selección..
En este ejemplo, queremos seleccionar los registros cuya ciudad es igual a un parámetro específico del archivo CLIENTE.
Los pasos para crear esta consulta SQL con filtro son los siguientes:
  1. Seleccione la opción "Archivo .. Nuevo .. Consulta". Se inicia el asistente para la creación de consultas.Haga clic nuevo entre los botones de acceso rápido.
    • Haga clic en "Consultas" en la rueda que se muestra. En la ventana que se muestra, haga clic en "Consultas".
    • Se inicia el asistente para la creación de consultas.
  2. Seleccione la opción "Seleccionar (SELECT)" y valide.Seleccione crear una consulta de selección (opción "Selección (SELECT)").
    Asistente para la creación de consultas

    Vaya al siguiente paso del asistente.
  3. Se muestra la ventana de descripción de la consulta.
  4. Dar un nombre y una leyenda a la consulta:
    Nombre y título de la consulta
  5. En la sección izquierda de la ventana de descripción, seleccione los elementos del archivo que se utilizarán (en nuestro ejemplo, el archivo CLIENTE y los elementos Nombre del cliente, Empresa y Ciudad)..
  6. Haga doble clic en los nombres de los elementos para añadirlos a la lista de elementos de consulta.:
    Seleccionar elementos
  7. Para realizar el filtro (selección), en la sección derecha del editor, haga clic en el botón "Condición de selección".
    Condición de selección
  8. Haga clic en "Nueva condición...".
  9. En la ventana que se muestra:
    • Seleccione la operación ("es igual" en nuestro ejemplo).
    • Seleccione "Parámetro" para poder pasar el valor escrito por el usuario a la consulta.
    • Dar un nombre al parámetro.
      Características de la condición de selección
  10. Validar. La ventana de descripción de la consulta se actualiza:
    Descripción de consultas
  11. Validar la ventana de descripción de la consulta. La consulta se muestra en el editor:
    Visualización de la consulta en el editor
  12. Guardar la consulta (Ctrl + S).
  13. Presione la tecla F2 para ver el código SQL:
    Código SQL de la consulta
  14. Ejecutar la prueba de consulta (GO en los botones de acceso rápido).
  15. La consulta se puede ejecutar en el programa mediante HExecuteQuery. Los parámetros esperados se deben inicializar en el código.
  16. Ejemplo de llamada desde un clic de botón:
    QRY_Filter.ParamCity = "Paris"
    HExecuteQuery(QRY_Filter)
Consulta SQL con filtro por programación
Las consultas SQL se pueden escribir directamente programando en el código WLanguage. Para ello, debe:
  1. Crear una Data Source variable para representar la consulta en tiempo de ejecución.
  2. Crear una variable Character String para contener el código SQL de la consulta y escribir el código SQL en esta variable.
  3. Ejecute la consulta SQL con HExecuteSQLQuery.
  4. Explore el resultado con las funciones HReadXXX.
Ejemplo de código:
Src1 is Data Source
sSQLCode is string

// Select the products whose price is greater than ...
sSQLCode = [
SELECT PRODUCT.Reference AS Reference,
PRODUCT.ProdCap AS ProdCap,
PRODUCT.Pricebt AS Pricebt
FROM PRODUCT
WHERE PRODUCT.Pricebt > %1
]

cyPrice is currency
cyPrice = EDT_PRICE // value coming from an edit control

sSQLCode = StringBuild(sSQLCode, cyPrice)

HExecuteSQLQuery(Src1, hQueryDefault, sSQLCode)
FOR EACH Src1
Trace(Src1.Reference , Src1.ProdCap, Src1.Pricebt)

END
Versión mínima requerida
  • Versión 9
Esta página también está disponible para…
Comentarios
Haga clic en [Agregar] para publicar un comentario