Power Builder - Insertar busqueda SQL en una ventana...

 
Vista:

Insertar busqueda SQL en una ventana...

Publicado por YuL&JaVi (4 intervenciones) el 09/04/2002 08:34:57
Como podríamos insertar una búsqueda a partir de una caja de texto en una ventana? La BD está hecha en SQL, como nos lo montamos para hacer una select poniendo como condición lo escrito en una caja de texto?
Gracias... Si Pedro lee esto... Fallo, tenía razón si sale lo del temporizador... Je...
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Insertar busqueda SQL en una ventana...

Publicado por Pedri (68 intervenciones) el 09/04/2002 11:51:09
Puedes utilizar las funciones SyntaxFromSQL y Create para crear una Datawindow dinámicamente.

Te pongo un ejemplo:

Debes insertar en la ventana un control MultiLineEdit (en el ejemplo mle_select) donde capturar la SELECT completa, y un control Datawindow (en el ejemplo dw_datos) donde se va a mostrar el resultado.
Para ver más detalles de la función SyntaxFromSQL, puedes buscarla en la ayuda.

La creación de la SELECT la puedes cambiar para adaptarlo a tus necesidades. En este ejemplo, el usuario debe introducir la SELECT completa en el control mle_select.

Ejemplo:

String ls_errores, ls_select
String ls_presentacion, ls_sintaxis_dw

// Obtener la SELECT desde el MultiLineEdit
ls_select = mle_select.text

// Definir la presentación de la DW (en este caso, sólo ponemos que sea de estilo grid)
ls_presentacion = "style(type=grid)"

// Crear la sintaxis de la datawindow
ls_sintaxis_dw = SQLCA.SyntaxFromSQL(ls_select, ls_presentacion, ls_errores)
IF Len(ls_errores) > 0 THEN
MessageBox("Atención", "SyntaxFromSQL ha causado estos errores: ~r~n" + ls_errores)
return
END IF

// Crear el objeto con la sintaxis generada
dw_datos.Create(ls_sintaxis_dw, ls_errores)
IF Len(ls_errores) > 0 THEN
MessageBox("Atención", "Create ha causado estos errores: ~r~n" + ls_errores)
return
END IF

// Recuperar los datos
dw_datos.SetTransObject(SQLCA)
dw_datos.Retrieve()
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar