Page 1 of 1

problema con xbrowse

Posted: Wed Apr 25, 2007 12:28 pm
by Marco Augusto
Saludos

Estoy haciendo mis primeras pruebas utilizando xbrowse
pero al intentar utilizar el metodo bONPOSTEDIT

Resulta que al escribir en la celda, borra el contenido
no se si sera la version que utilizo


Aqui esta el codigo que utilizo

FUNCTION PANPRESUP2(MMODO,MABRE)
Local oDLGPRESUP, APASA:=.F., XFPASA:=.F.
*
DEFINE DIALOG oDlgPRESUP RESOURCE 'PRESUP' FONT aFONT[2]
SELE ENTG000
ENTG000->(Ordscope(0,ENT000->NUMERO))
ENTG000->(Ordscope(1,ENT000->NUMERO))
ENTG000->(DBGOTOP())
*
oBrw := TXBrowse():New(oDlgPRESUP)
oBrw:nMarqueeStyle := MARQSTYLE_HIGHLCELL
oBrw:nColDividerStyle := LINESTYLE_BLACK
oBrw:nRowDividerStyle := LINESTYLE_BLACK
oBrw:lColDividerComplete := .t.
oBrw:bCLRSTD:={||IF(RECNO()%2==0,{CLR_BLACK,CLR_1},{CLR_BLACK,CLR_2})}
oBRW:nFREEZE:=2
*
oCol:=oBrw:Addcol()
oCol:cHeader := "Concepto"
oCol:bStrData := { || ENTG000->CONCEPTO }

oCol:=oBrw:Addcol()
oCol:cHeader := "Descripcion"
oCol:bStrData := { || CIMP001->DESCRIP }
oCol:nHeadStrAlign:=AL_LEFT
oCol:nDataStrAlign:=AL_LEFT

oCol:=oBrw:Addcol()
oCol:cHeader := "Referencia"
oCol:bStrData := { || ENTG000->SERIE }
oCol:nHeadStrAlign:=AL_LEFT
oCol:nDataStrAlign:=AL_LEFT
oCol:nEditType := 1
oCol:bOnPostEdit := {|o,x| ENTG000->SERIE:=x}
*
oBRW:SETRDD()
oBrw:CreateFromRESOURCE(500)
*
ACTIVATE DIALOG oDLGPRESUP CENTERED
ENTG000->(Ordscope(0,NIL))
ENTG000->(Ordscope(1,NIL))
SELE ENT000
oBRWPRESUP:REFRESH()
oBRWPRESUP:SETFOCUS()
oBRWPRESUP:UPSTABLE()
RETURN NIL

Posted: Wed Apr 25, 2007 1:46 pm
by jcaro
Creo que tu problema es que en el bonPostEdit, estas pidiendo 2 variables , pero usas solo una.

Mira mi ejemplo, busco en mi array los dos datos solicitados y luego le asigno el cambio.

oBrw:aCols[5]:bOnPostEdit := { | o,x | aDatos[ oBrw:nArrayAt, 5 ] := x }

Saludos