Pues bien, estoy terminando una aplicacion siguiendo un manual en power builder 6.
Ya esta todo creado, cuando inserto datos los almacena bien y cuando hay mas de 1, dandole a la rueda del raton van pasando y mostrandolos en la ventana.
Bien, el siguiente paso es hacer un desplegable en el campo de la clave primaria para que te salgan todo lo añadido y pinchar y q muestre todos sus campos. Pues bien mi problema es que consegui que saliera cuando le doy al desplegable las fichas que haya, pincho en una y solo se pone el campo de la clave primaria, el resto no se añade.
Total que no consigo hacerlo bien.
Tengo creado el Datawindow y lo referencio dentro de la ventana.
Luego cree un d_ddw_ para el desplegable poniendo lo q indica el manual. Que es solo la fila que no interese, en este caso el nombre.
Cambio el ItemChanged como indica y el d_principal referencio el d_ddw.
Consigo con esto lo siquiete: Que muestre los nombre de todo lo insertado y cuando le doy a 1. siempre me muestra el primer nombre y sus valores rellenados en las columnas.
Intento insertar uno nuevo y nada, sale el primero.
Tambien tengo un problema con la funcion of_ask_to_save y tuve que modificar el itemChanged asi:
if is_retrieve_column = '' then
MessageBox ('Retrieve Column Not Set', &
'The column needed to generate a new retrieve' + &
'has not been set in ' + &
'Constructor event of the Datawindows ' + &
this. dataobject)
elseif dwo.name = this.is_retrieve_column then
// if this . of_ask_to_save() < 0 then
// Return 2
//else
this . il_primary_key = long(data)
This . Post Event ue_retrieve()
// end if
end if
ib_items_changed = TRUE
il_primary lo defino donde dice y supongo que el problema sera en esta funcion. Uno de ellos, algo hare mal pero no se el que!!!
La funcion ask_... dice esto y la defino en el u_dw_base, aqui me da el error: en la linea 15 que es: li_rc = this . event ue_update() Y dice en ingles que la funcion no retorna el valor indicado en la expresion esa.
El ue_update tiene lo que decia el manual q si es importante lo pongo. Pero actualizar mi aplicacion actualiza oeso creo
//int li_answer
//int li_rc
//If ib_items_changed then
// If (ModifiedCount() > 0 or DeletedCount() > 0 ) Then
// li_answer = Messagebox("You´re about to lose your changes!", &
// "You have made unsaved changes. " &
// + "Would you like to save now before proceding?", &
// StopSign!, YesNoCancel!,1)
// End IF
// Choose Case li_answer
// Case 1
// li_rc = this . event ue_update()
// if li_rc < 0 then
// Return -1
// end if
// this . ib_items_changed = false
// Case 2
// this.reselectrow(this . getrow())
// this . ib_items_changed = false
// Return 0
// Case 3
// Return -1
// End Choose
//End if
//Return 0
Si alguien me pudiera ayudar a hacer esto bien se lo agradeceria.
Es para que de una mejor impresion, pq sin el desplegable lo que hace es con la rueda del raton te va mostrando y rellenando todos los campos de lo que haya insertado. Pero es mas cutre creo yo... Pq si tienes 100 entrada sy tienes q ir a la ultima tendras que pasar el raton hasta el final en ve de salir el desplegable y poder escogerla facilmente.
saludos