DropDownDW pasar datos de un tercer campo a otro

Haber si me puedo explicar:
Tengo un DropDownDW que muestra datos de otra tabla(FP), ahora esta otra tabla(FP)

Tiene varios campos en estilo grid, lo que quiero es pasar uno de estos campos a un singlelineedit cuando selecciono, bueno espero me puedas ayudar gracias

Ojo aun estoy en el editor de diseño del objeto datawindows, o es que tengo que programar en el datawindows, bueno eh leído lo que es datawindows child pero no encuentro la solución con esto

3 Respuestas

Respuesta
Sorry por la demora pero.. andaba algo ocupado, y bueno aun lo estoy, pero bueno me dirás si aun necesitas asistencia para buscar una solución.
//Podrias poner el siguiente codigo en el vento itemchanged del dw
int li_dias=0
choose case dwo.name
case 'forma_pago'
//data es un parametro del evento, almacena el valor asignado
select dias into :li_dias from formas_pago where c_forma_pago = :data;
sle_dias.text = string(ll_dias)
end choose
//...
//Tendrías que probar.. no tengo forma de probar si se me presenta algún error
Respuesta
1
* Lo que tienes que hacer es programar en el datawindow.
* Se me ocurre la siguiente solucion con una funcion local.
Te colocas en el evento Itemchanged() del datawindow.
/******************************************************/
//Evento Itemchanged() del datawindow.
//declaramos variables
integer li_codigopago //Suponiendo que que el codigo de pago es de tipo entero
integer li_dias //Variable que almacenara los dias
if dwo.name="codigopago" then //verificamos si estamos en el campo pago
li_codigopago=this.object.codigopago.current[row] //Obtenemos el codigo de pago
li_dias=of_obtenerdias(li_codigopago) //llamamos a funcion pasandole el codigo de pago
this.object.dias.current[row]=li_dias //Asignamos los dias obtenido al campo dias
end if
/******************************************************/
//Declara un Funcion Local con las siguientes caracteristicas
Function Name = of_obtenerdias //nombre de la funcion
Retur Type = integer //tipo de dato de retorno
Argumento Type = integer
Argumento Name = codigo
/******************************************************/
//En el cuerpo de la funcion pones el siguiente codigo
integer li_dias
select dias into :li_dias from tabla where codigopago=:codigo
Using sqlca;
//Estoy haciendo una consulta a la tabla que contiene los campos cod, descripción y días.
//Es decir estoy diciendo: selecioname el campo días donde el código de pago sea igual código.
/******************************************************/
Esto funciona perfectamente, aunque puede haber otras soluciones.
Tienes que adaptarlo a tu aplicación.
Suerte.
Excelente, se ve que ye gusta hacer las cosas más fáciles con funciones :D, pero la tabla forma de pago es un dw child, parece que me exprese mal cuando dije que el campo "dia" quería pasarlo a un single line edit, en realidad todo es un dw, a pero veo que tu estas consultando a la BD con SQL embebido, creo que voy a tomar tu lógica, gracias por todo man
Respuesta
1
Bueno quieres pasar los datos de un campo de tu DW a un SLE haber puedes usar esto:
String   VariableString
ls_VariableString = dw_tu_dw.GetItemString(1, 'campo_datawindow')
sle_1.Text = ls_VariableString
Este ejemplo te puede ayudar siempre y cuando tu campo sea String de lo contrario usa
GetItemNumber, GetItemDecimal, GetItemDate, GetItemDateTime, GetItemTime
Segun tu necesidad, si te quedo claro finaliza la pregunta.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas