Hola buenas noches, quiero hacer un xbrowse de una base de datos , y en el mismo agregar una columna con la suma de _ numericos
de la base de datos mas la celda anterior de esta columna. O algún ejemplo para emular.
Gracias
Agregar columna xbrowse
- nageswaragunupudi
- Posts: 8017
- Joined: Sun Nov 19, 2006 5:22 am
- Location: India
- Contact:
Re: Agregar columna xbrowse
Code: Select all
#include "fivewin.ch"
REQUEST DBFCDX
function Main()
local oDlg, oBrw, oFont, aTotals, d
local nTotal := 0
SetGetColorFocus()
FWNumFormat( "E", .t. )
USE CUSTOMER NEW ALIAS CUST SHARED VIA "DBFCDX"
SET FILTER TO !DELETED()
GO TOP
aTotals := Array( OrdKeyCount() )
DBEVAL( { || aTotals[ OrdKeyNo() ] := nTotal := FIELD->AGE + FIELD->SALARY + nTotal } )
GO TOP
DEFINE FONT oFont NAME "TAHOMA" SIZE 0,-14
DEFINE DIALOG oDlg SIZE 500,500 PIXEL TRUEPIXEL FONT oFont
@ 20,20 XBROWSE oBrw SIZE -20,-20 PIXEL OF oDlg ;
DATASOURCE "CUST" ;
COLUMNS "FIRST", "AGE", "SALARY", { || aTotals[ OrdKeyNo() ] } ;
HEADERS nil, nil, nil, "CUMTOTAL" ;
PICTURES nil, nil, nil, NUMPICT( 11, 2 ) ;
CELL LINES NOBORDER FASTEDIT
WITH OBJECT oBrw
:nEditTypes := EDIT_GET
:CumTotal:nEditType := EDIT_NONE
:Age:bOnChange := ;
:Salary:bOnChange := { |oCol,uOldVal| d := oCol:Value - uOldVal, ;
AEval( aTotals, { |n,i| aTotals[i] := n + d }, CUST->( OrdKeyNo() ), ;
oBrw:Refresh() ) }
:CreateFromCode()
END
ACTIVATE DIALOG oDlg CENTERED
RELEASE FONT oFont
return nil
The last column is the cumulative (running) total of the fields AGE + SALARY.
This browse can be edited. When AGE or SALARY is edited and modified, the last column values are also changed.
Regards
G. N. Rao.
Hyderabad, India
G. N. Rao.
Hyderabad, India
Re: Agregar columna xbrowse
Thanks Mrs Rao it worked perfect