Power Builder - como crear un datawindows unico de paises

 
Vista:

como crear un datawindows unico de paises

Publicado por carlos (57 intervenciones) el 29/09/2005 17:49:31
Saludos, Mi pregunta es la siguiente , tengo una tabla de paises, quiero crear un datawindows que me permita mostrar todos los paises de esta tabla de forma lisbox
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:como crear un datawindows unico de paises

Publicado por karen (274 intervenciones) el 29/09/2005 18:47:43
select cod_pais, desc
from paises
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

RE:como crear un datawindows unico de paises

Publicado por Roberto (32 intervenciones) el 30/09/2005 23:47:04
Hola !!!. te paso un codigo que tengo a mano

Defina una función que retorne un valor integer y que tenga los siguientes parametros:
string tabla_parm,
string columna_parm,
dropdownlistbox ddlb_parm,
string clausula_where
Esta funcion se usa por ejemplo para llenar un drop down list box con los códigos de una tabla. Suponiendo que la función la llamamos f_llenar_ddlb_desde_bd la función se llamaría así:
f_llenar_ddlb_desde_bd('tabla','columna',ddlb_allenar,'where condicion = 10'')

El codigo de la función sería el siguiente

ls_select_string = "SELECT DISTINCT " + columna_parm + " FROM " + tabla_parm + " " + clausula_where

PREPARE sqlsa FROM :ls_select_string;

DECLARE dyn_cursor DYNAMIC CURSOR FOR sqlsa;

OPEN DYNAMIC dyn_cursor;
if sqlca.sqlcode < 0 then
MessageBox("Error de Base de datos!", sqlca.sqlerrtext)
return sqlca.sqlcode
end if

ddlb_parm.SetRedraw(false)
ddlb_parm.Reset( )

Do While sqlca.sqlcode = 0
Fetch dyn_cursor into :ls_add_string;
if sqlca.sqlcode = 0 then
ddlb_parm.AddItem(ls_add_string)
elseif sqlca.sqlcode < 0 then
MessageBox("Error de Base de datos", sqlca.sqlerrtext)
return sqlca.sqlcode
else
exit
end if
Loop

ddlb_parm.SetRedraw(true)
Close dyn_cursor;

return 0

Saludos, espero que te sirva.
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

RE:como crear un datawindows unico de paises

Publicado por wend (95 intervenciones) el 01/10/2005 23:55:29
Otra opcion es usar los dropdown datawindow child.
1.- creas un DW object con SELECT CODIGO_PAIS FROM PAIS
Sólo una columna a la cual le vas a poner un dropdown datawindow en la pestaña edit en la propiedad style type, luego bajas a la propiedad datawindow y buscar el datawindow a colocar (el vas a crear en el paso 2) luego en diplay column seleccionas PAIS_NOMBRE y en data column seleccionas CODIGO_PAIS, más arriba puedes chequear las propiedades Always show arrow y V ScollBar. y Listo. ahora coloca este DW en un DW control.
2.- creas un DW object con SELECT CODIGO_PASI, NOMBRE_PAIS FROM PAIS

No olvides hacer el settransobject y el retrieve al DW control creado en el paso1.
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

RE:como crear un datawindows unico de paises

Publicado por BartySoft (8 intervenciones) el 04/10/2005 21:55:26
Otra solucion (y para mi super facil, es crear un dropdown datawindows (dddw).
Por ejemplo creas un datawindows dw_paises_dddw de la siguiente forma:
New Dw -> Select -> Grid
Desde donde haces
SELECT cod_pais, nom_pais
FROM paises
asumiendo k cod_pais es la PK (clave primaria de la tabla).
Una vez creado este dw, colocas un control dw en la ventana y lo asocias con un objeto dw cualquiera. Este ultimo lo haces de tipo dddw, asociandolo con el dw_paises_dddw. Eso es todo.

Ojala te sirva.
Saludos
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