Power Builder - Calculos dentro de un DataWindow....

 
Vista:

Calculos dentro de un DataWindow....

Publicado por Alejandro (3 intervenciones) el 10/07/2007 00:10:43
Saludos a todos en el foro...

Tengo un DataWindow con las siguientes columnas:

-----------------------------------------------------------------------------
| Empleado | Horas trabajadas | Valor Hora | Total |
-----------------------------------------------------------------------------

Entonces en la columna total debe almacenarse el resultado de la multiplicacion de HORAS TRABAJADAS * VALOR HORA, el unico campo editable es HORAS TRABAJADAS al llenar este automaticamente debe almacenar en TOTAL el resultado de la operacion... Pero se me presenta el problema de que si modifico la columna HORAS TRABAJADAS por segunda vez no me realiza la operacion el TOTAL sigue intacto no vuelce a ser calcudo... Para que entiendan un poco mejor, lo expreso en forma grafica

PRIMERA MODIFICACION
-------------------------------------------------------------------------------
| Empleado | Horas trabajadas | Valor Hora | Total |
--------------------------------------------------------------------------------
| ALBERTO | 8 | 20.000 | 160.000 |
-------------------------------------------------------------------------------

SI MODIFICO LAS HORAS TRABAJADAS SIGUE DANDOME EL MISMO VALOR TOTAL

-------------------------------------------------------------------------------
| Empleado | Horas trabajadas | Valor Hora | Total |
--------------------------------------------------------------------------------
| ALBERTO | 10 | 20.000 | 160.000 |
-------------------------------------------------------------------------------

La multiplicacion esta codificada en el EVENTO ITEMFOCUSCHANGED del DW.........

Si alguien me puede ayudar, le estaria muy agradecido....!!!!!!!
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:Calculos dentro de un DataWindow....

Publicado por israel (5 intervenciones) el 10/07/2007 01:53:19
tienes que utilizar un groupcalc() ej:

PowerBuilder This code imports new rows from a file into the DataWindow dw_emp and then recalculates the group breaks for dw_emp:

dw_emp.ImportFile("d:\employee.txt")

dw_emp.SetRedraw(false)

dw_emp.SetSort("1A")

dw_emp.Sort()

dw_emp.GroupCalc()


espero 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:Calculos dentro de un DataWindow....

Publicado por Jag (20 intervenciones) el 11/07/2007 17:56:29
Yo tambien tengo el mismo inconveniente, no se si podrias ampliar mas la explicacion, el archivo (employee.txt) es donde esta las formulas de calculo y todo este codigo en que parte hay que colocar en DW.

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

RE:Calculos dentro de un DataWindow....

Publicado por Linknes pb (14 intervenciones) el 11/07/2007 20:08:24
la multiplicacion la deberias hacer en el evento itemchanged():
ejemplo
string nombre_columna
//capturamos la columna en la que existio la modificacion
nombre_columna=dwo.name

choose case nombre_columna
case "Horas_trabajadas"//aca se realiza la multiplicacion
this.object.total[row]=dec(data) * this.object.Valor_Hora[row]
/*total es igual a horas trabajadas (en decimal tu lo transformas al tipo de dato q vieras por conveniente) multiplicado por el valor de hora trabajada.*/

end choose

culquier duda me escribes. pero creo q mas facil seria la utilizacion de campos calculados en el mismo datawindows
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