Tengo un xbrowse con 2 celdas editables. He asignado :nMoveType:= MOVE_RIGHT
Lo que pretendo es que luego de validar lo ingresado en la celda 1, y luego de pasar a la celda 2, inmediatamente a su derecha, la edite sin necesidad de que el operador pusle <Intro/Enter>.
Lo que yo hice es:
- Code: Select all Expand view
- WITH OBJECT ::oBrwCom:aCols[_Cantidad]
:nEditType := EDIT_GET
:bOnPostEdit := {|o, nCant, nK| if( nK != VK_ESCAPE, ( if( !Empty( ::aArtCompra[::oBrwCom:nArrayAt][_CodArt] ), ;
( ::aArtCompra[::oBrwCom:nArrayAt][_Cantidad]:= nCant, ::Totaliza() ), msgBeep() ), ;
::oBrwCom:Refresh(), ;
Eval( ::oBrwCom:aCols[_PrcCom], VK_RETURN ) ), ) }
END
WITH OBJECT ::oBrwCom:aCols[_PrcCom]
:cHeader:= "Prc.Unit"
:nEditType := EDIT_GET
:bOnPostEdit := {|o, nPrcUVta, nK| if( nK != VK_ESCAPE, ( if( !Empty( ::aArtCompra[::oBrwCom:nArrayAt][_CodArt] ), ;
( ::aArtCompra[::oBrwCom:nArrayAt][_PrcVta]:= nPrcUVta, ::Totaliza() ), msgBeep() ), ;
::oBrwCom:Refresh() ), ) }
END
Evidentemente no es lo que corresponde, ya que ejecuta ::Totaliza y este me da error por tener un campo nil en una multiplicación.
Se puede?, como?
gracias