FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour editar celda siguiente sin dar enter
Posts: 400
Joined: Fri May 11, 2007 08:20 PM
editar celda siguiente sin dar enter
Posted: Wed Mar 01, 2017 01:01 AM
Foro:
doy click a la columna precio y quiero que salte al siguiente registro y se édite sin necesidad de dar enter, como es que se hace

Code (fw): Select all Collapse
   REDEFINE XBROWSE oBrw                                           ;
      FIELDS ARTICULO->Cod                                         ;
            ,ARTICULO->DesG                                        ;
            ,Transform(ARTICULO->Pv, "999.9999")                   ;
            ," "                                                   ;
      FIELDSIZES 70, 250,120, 90, 10                               ;
      HEADERS "CODIGO"                                             ;
            ,"DESCRIPCION"                                         ;
            ,"PRECIO S/."                                          ;   //solo esta col quiero editar
            ," "                                                   ;
      ID 4001 OF oDlg                                              ;
      AUTOSORT                                                     ;
      UPDATE ;
      FASTEDIT
                                                            
    oBrw:lFastEdit:= .t.
        oBrw:nMoveType := MOVE_DOWN
    oBrw:aCols[3]:nEditType := EDIT_GET
    oBrw:aCols[3]:cDataType := "N"
    oBrw:aCols[3]:bOnPostEdit    := { | o, x, n | UpdatePrecio( x, oBrw, n) }   //,oBrw:GoDown()
    ....
    ....
return nil
Static function UpdatePrecio( x, oBrwf, n )
    local nMts
    If bloquea("ARTICULO")
      ARTICULO->pv      := val(x)
      nMts:=Round(ARTICULO->Cap*ARTICULO->conos,2)
      ARTICULO->Importe:=Round(nMts*ARTICULO->pv,2)
      ARTICULO->(dbunlock())      
      obrwf:refresh()
    endif  
return 0


pongo una imagen de lo que quiero



Gracias
fwh 17.12, harbour 3.2.0, pelles C, bcc7, Ms-Sql
Posts: 601
Joined: Wed Jul 04, 2007 03:51 PM
Re: editar celda siguiente sin dar enter
Posted: Wed Mar 01, 2017 01:50 PM

Hola,
Si no es al momento de dar Enter.
¿Cuál sería el criterio o condición para que se comience a editar la siguiente celda?

Saludos,

Ojeda Esteban Eduardo.

Buenos Aires - Argentina.

FWH - PellesC - DBF/CDX - ADS - Gloriosos .Bat - MySql - C# .net - FastReport

Skype: jreduojeda
Posts: 400
Joined: Fri May 11, 2007 08:20 PM
Re: editar celda siguiente sin dar enter
Posted: Wed Mar 01, 2017 02:16 PM
Hola gracias por responder,
creo que no me he explicado bien, quisiera que se pueda registrar datos rápidamente en la columna precio
para ello selecciono la fila a editar el precio (eso esta Ok) luego de dar de terminar de editar quisiera que al dar
enter salte al sgte registro y sin necesidad de dar enter o doble click pueda editar esa fila (la única celda a editar de mi browse va ser la col precio)

la formula es EDITAR COL PRECIO DE FILA 1 - ENTER - EDITAR COL PRECIO DE FILA 2 - ENTER - EDITAR COL PRECIO DE FILA N - ENTER - ....

Code (fw): Select all Collapse
   REDEFINE XBROWSE oBrw                                           ;
      FIELDS ARTICULO->Cod                                         ;
            ,ARTICULO->DesG                                        ;
            ,Transform(ARTICULO->Pv, "999.9999")                   ;
            ," "                                                   ;
      FIELDSIZES 70, 250,120, 90, 10                               ;
      HEADERS "CODIGO"                                             ;
            ,"DESCRIPCION"                                         ;
            ,"PRECIO S/."                                          ;
            ," "                                                   ;
      ID 4001 OF oDlg                                              ;
      AUTOSORT                                                     ;
      UPDATE ;
      FASTEDIT
                                                            
    oBrw:lFastEdit:= .t.
    //oBrw:nMoveType := MOVE_DOWN
    oBrw:aCols[3]:nEditType := EDIT_GET
    oBrw:aCols[3]:cDataType := "N"
    oBrw:nMarqueeStyle       := MARQSTYLE_HIGHLROW
    oBrw:aCols[3]:bOnPostEdit    := { | o, x, n | UpdatePrecio( x, oBrw, n) ,obrw:godown(),oBrw:nColSel := 3,oBrw:aCols[3]:Edit()}    
    oBrw:aCols[3]:bGetChange = {| k, f, o, oCol | If( Len( RTrim( o:oGet:Buffer ) ) == Len( o:oGet:Buffer ),;  
                                           ( o:SendMsg( WM_KEYDOWN, VK_RETURN ) ), ) }  // Esto lo saque de otro mensaje posteado pero no me trabaja
fwh 17.12, harbour 3.2.0, pelles C, bcc7, Ms-Sql
Posts: 257
Joined: Mon Jun 10, 2013 06:40 PM
Re: editar celda siguiente sin dar enter
Posted: Thu Mar 02, 2017 03:36 PM
Mira yo lo tengo asi
y no tengo la necesidad de dar enter para comenzar a editar
solo tecleo en la celda y listo
Code (fw): Select all Collapse
oBrowA:nMarqueeStyle                := MARQSTYLE_HIGHLCELL
oBrowA:lFastEdit                        := .T.
oBrowA:aCols[01]:cEditPicture   := "@!"
oBrowA:aCols[01]:nEditType      := 1



Después de terminar de meter los datos si tengo que dar enter para salir
y automatico se va a la siguente celda y sin dar enter vuelvo solo a teclear
lo necesario y asi sucesivamente

Saludos.
Posts: 400
Joined: Fri May 11, 2007 08:20 PM
Re: editar celda siguiente sin dar enter
Posted: Fri Mar 03, 2017 08:57 PM

Ok Javier y como seria para que salte al sgte registro del xbrowse y se edite la misma columna?

fwh 17.12, harbour 3.2.0, pelles C, bcc7, Ms-Sql
Posts: 346
Joined: Mon Oct 05, 2009 03:35 PM
Re: editar celda siguiente sin dar enter
Posted: Sat Mar 04, 2017 11:31 AM

xBrw:Godown( 1 ) -- uno abajo

SkyPe: armando.lagunas@hotmail.com

Mail: armando.lagunas@gmail.com
Posts: 257
Joined: Mon Jun 10, 2013 06:40 PM
Re: editar celda siguiente sin dar enter
Posted: Mon Mar 06, 2017 12:39 AM

artu1
En browse que tengo para ir capturando rápidamente
En lugar de dar <Enter> al final le doy <Flecha abajo>
y listo, ya estoy en el siguiente renglón y misma columna
voy tecleando los importes flecha abajo.

Posts: 10733
Joined: Sun Nov 19, 2006 05:22 AM
Re: editar celda siguiente sin dar enter
Posted: Mon Mar 06, 2017 01:35 PM
Please try
Code (fw): Select all Collapse
   REDEFINE XBROWSE oBrw  ;
      DATASOURCE "ARTICULO" ; // <-- important
      COLUMNS "Cod", "Desg", "PV" ; // do not use FIELDS. 
      HEADERS "CODIGO", "DESCRIPTION", "PRECIO" ;
      PICTURES nil, nil, "999.9999" ;
      ID 4001 OF oDlg UPDATE FASTEDIT

   WITH OBJECT oBrw:aCols[ 3 ]
      :nEditType  := EDIT_GET
      :bOnChange  := { |oCol| If( oBrw:Lock(), ;
         ( ARTICULO->Importe := ROUND( ROUND( ARTICULO->CAP * ARTICULO->CONOS, 2 ) * oCol:Value, 2 ), oBrw:UnLock() ), nil ) } 
   END
Regards



G. N. Rao.

Hyderabad, India

Continue the discussion