In order for this site to work correctly we need to store a small file (called a cookie) on your computer. Most every site in the world does this, however since the 25th of May 2011, by law we have to get your permission first. Please abandon the forum if you disagree.

Para que este foro funcione correctamente es necesario guardar un pequeño fichero (llamado cookie) en su ordenador. La mayoría de los sitios de Internet lo hacen, no obstante desde el 25 de Marzo de 2011 y por ley, necesitamos de su permiso con antelación. Abandone este foro si no está conforme.

Consulta tArrayBrowse

Foro público de Xailer en español
Responder
Christian
Mensajes: 290
Registrado: Mié Abr 23, 2008 10:18 pm

Consulta tArrayBrowse

Mensaje por Christian »

Hola a todos en mis programas en el tArrayBrowse cuando edito una
columna si el operador presiona ENTER lo paso automaticamente a la
columna siguiente o la otra o baja la fila, para eso en el OnPostEdit de
la columna escribo lo siguiente:
if nKey==K_ENTER
::oTB:nColSel:=pITEM_CANTIDAD
endif
el tema es que desde que instale la version 2.7.4 no me refresca la fila
cuando el operador pone el codigo de producto le pongo la descripcion y
precio y no lo refresca. Cual es la mejor forma de hacer eso ? pasar a
la siguiente columna o siguiente fila y para refrescar la fila
Gracias
Avatar de Usuario
XeviCOMAS
Mensajes: 586
Registrado: Sab Mar 12, 2011 8:16 pm

Consulta tArrayBrowse

Mensaje por XeviCOMAS »

Christian,
yo también me he topado con este "cambio" de comportamiento del Browse en la
versión 2.7.
No lo he posteado por no saber si se trataba de una mala programación por mi
parte... pero visto que no soy el único que se ha topado con ello...
Mi solución (no se si será temporal) a sido...
::oMiBrowse:PostMsg( WM_KEYDOWN, VK_RETURN )
Un Saludo,
Xevi.
"Christian R.Assenza" <christianassenza@yahoo.com.ar> ha escrit al missatge
del grup de discussió: 50c077a1$[email=1@svctag-j7w3v3j....]1@svctag-j7w3v3j....[/email]
> Hola a todos en mis programas en el tArrayBrowse cuando edito una columna
> si el operador presiona ENTER lo paso automaticamente a la columna
> siguiente o la otra o baja la fila, para eso en el OnPostEdit de la
> columna escribo lo siguiente:
>
> if nKey==K_ENTER
> ::oTB:nColSel:=pITEM_CANTIDAD
> endif
>
> el tema es que desde que instale la version 2.7.4 no me refresca la fila
> cuando el operador pone el codigo de producto le pongo la descripcion y
> precio y no lo refresca. Cual es la mejor forma de hacer eso ? pasar a la
> siguiente columna o siguiente fila y para refrescar la fila
>
> Gracias
>
>
> __________ Información de ESET NOD32 Antivirus, versión de la base de
> firmas de virus 7773 (20121206) __________
>
> ESET NOD32 Antivirus ha comprobado este mensaje.
>
> http://www.eset.com
>
>
>
__________ Información de ESET NOD32 Antivirus, versión de la base de firmas de virus 7773 (20121206) __________
ESET NOD32 Antivirus ha comprobado este mensaje.
http://www.eset.com
Un Saludo,
Xevi.
Avatar de Usuario
XeviCOMAS
Mensajes: 586
Registrado: Sab Mar 12, 2011 8:16 pm

Consulta tArrayBrowse

Mensaje por XeviCOMAS »

Perdón...
He revisado mi código... y si bien si funcionaba antes asignar nColSel,
ahora lo he cambiado por el envio de la tecla RETURN, que el evento
OnKeyDown del Browse tengo asociado el cambio de columna con SelectCo()
O sea... que nColSel no establece la columna activa (como en Xailer 2.1),
para establecer o cambiar de columna activa hay que utilizar SelectCol()
::MiBowse:SelectCol( n )
Un Saludo,
Xevi.
"Xevi" <xevicomas@gmail.com> ha escrit al missatge del grup de discussió:
50c0b9cb$[email=1@svctag-j7w3v3j....]1@svctag-j7w3v3j....[/email]
> Christian,
>
> yo también me he topado con este "cambio" de comportamiento del Browse en
> la versión 2.7.
> No lo he posteado por no saber si se trataba de una mala programación por
> mi parte... pero visto que no soy el único que se ha topado con ello...
> Mi solución (no se si será temporal) a sido...
>
> ::oMiBrowse:PostMsg( WM_KEYDOWN, VK_RETURN )
>
>
>
> Un Saludo,
> Xevi.
>
>
> "Christian R.Assenza" <christianassenza@yahoo.com.ar> ha escrit al
> missatge del grup de discussió: 50c077a1$[email=1@svctag-j7w3v3j....]1@svctag-j7w3v3j....[/email]
>> Hola a todos en mis programas en el tArrayBrowse cuando edito una columna
>> si el operador presiona ENTER lo paso automaticamente a la columna
>> siguiente o la otra o baja la fila, para eso en el OnPostEdit de la
>> columna escribo lo siguiente:
>>
>> if nKey==K_ENTER
>> ::oTB:nColSel:=pITEM_CANTIDAD
>> endif
>>
>> el tema es que desde que instale la version 2.7.4 no me refresca la fila
>> cuando el operador pone el codigo de producto le pongo la descripcion y
>> precio y no lo refresca. Cual es la mejor forma de hacer eso ? pasar a la
>> siguiente columna o siguiente fila y para refrescar la fila
>>
>> Gracias
>>
>>
>> __________ Información de ESET NOD32 Antivirus, versión de la base de
>> firmas de virus 7773 (20121206) __________
>>
>> ESET NOD32 Antivirus ha comprobado este mensaje.
>>
>> http://www.eset.com
>>
>>
>>
>
>
>
> __________ Información de ESET NOD32 Antivirus, versión de la base de
> firmas de virus 7773 (20121206) __________
>
> ESET NOD32 Antivirus ha comprobado este mensaje.
>
> http://www.eset.com
>
>
>
>
__________ Información de ESET NOD32 Antivirus, versión de la base de firmas
de virus 7773 (20121206) __________
ESET NOD32 Antivirus ha comprobado este mensaje.
http://www.eset.com
__________ Información de ESET NOD32 Antivirus, versión de la base de firmas de virus 7773 (20121206) __________
ESET NOD32 Antivirus ha comprobado este mensaje.
http://www.eset.com
Un Saludo,
Xevi.
Christian
Mensajes: 290
Registrado: Mié Abr 23, 2008 10:18 pm

Consulta tArrayBrowse

Mensaje por Christian »

Hola Xevi al final revisando un codigo viejo lo deje asi:
METHOD TBColumn1PostEdit( oSender, Value, lCanceled, nKey ) CLASS
tEditarVentas2
local i
i:=nKey /// DEBUG
if !lCanceled .and. !empty(Value)
Value:=CheckProductoEnBrowse(::oBd,Value,Self)
if ::SetProducto(Value,::oTB:nArrayAt,nKey)
::cCampoActItems:='CODIGO'
endif
endif
::CalculaTotales()
RETURN Nil
y en el
METHOD TBKeyUp( oSender, nKey, nFlags ) CLASS tEditarVentas2
local cKey:='', xRet, lEditaDesc, nRubro
if !empty(::cCampoActItems)

lEditaDesc:=EsProdComodin(::oTB:aArrayData[::oTB:nArrayAt][p ITEMS_CODIGO])
nRubro
:=DataFieldSQL('Productos','Rubro','IdProducto',::oTB:aArray Data[::oTB:nArrayAt][pITEMS_CODIGO],-1)
endif
if nKey==13
do case
case ::cCampoActItems=='CODIGO'
do case
#IFDEF pBAJALINEA_VTA
case !lEditaDesc .and. nRubro<>RubroCombustible() .and. ;
abs(::oTB:aArrayData[::oTB:nArrayAt][pITEMS_CANTIDAD])>0
..and. ;
abs(::oTB:aArrayData[::oTB:nArrayAt][pITEMS_NETO ])>0
..and. ;
!empty(::oTB:aArrayData[::oTB:nArrayAt][pITEMS_CODIGO])
::btAgregarClick(.F.)
#ENDIF
case lEditaDesc
::oTB:nColSel:=2
::oTB:Refresh()
otherwise
::oTB:nColSel:=3
::oTB:Refresh()
endcase
case ::cCampoActItems=='DESCRIPCION'
::oTB:nColSel:=3
::oTB:Refresh()
case ::cCampoActItems=='CANTIDAD'
::oTB:nColSel:=4
::oTB:Refresh()
case ::cCampoActItems=='UNITARIO'
::oTB:nColSel:=5
::oTB:Refresh()
case ::cCampoActItems=='NETO'
::btAgregarClick(.F.)
endcase
endif
::cCampoActItems:=''
RETURN(xRet)
y me funciona muy bien, siempre que modifique el nColSel me hacia cosas
muy extrañas como marcarme varias celdas en fin
El 06/12/2012 01:47 p.m., Xevi escribió:
> Perdón...
>
> He revisado mi código... y si bien si funcionaba antes asignar nColSel,
> ahora lo he cambiado por el envio de la tecla RETURN, que el evento
> OnKeyDown del Browse tengo asociado el cambio de columna con SelectCo()
>
> O sea... que nColSel no establece la columna activa (como en Xailer 2.1),
> para establecer o cambiar de columna activa hay que utilizar SelectCol()
>
> ::MiBowse:SelectCol( n )
>
>
>
> Un Saludo,
> Xevi.
>
>
> "Xevi"<xevicomas@gmail.com> ha escrit al missatge del grup de discussió:
> 50c0b9cb$[email=1@svctag-j7w3v3j....]1@svctag-j7w3v3j....[/email]
>> Christian,
>>
>> yo también me he topado con este "cambio" de comportamiento del Browse en
>> la versión 2.7.
>> No lo he posteado por no saber si se trataba de una mala programación por
>> mi parte... pero visto que no soy el único que se ha topado con ello...
>> Mi solución (no se si será temporal) a sido...
>>
>> ::oMiBrowse:PostMsg( WM_KEYDOWN, VK_RETURN )
>>
>>
>>
>> Un Saludo,
>> Xevi.
>>
>>
>> "Christian R.Assenza"<christianassenza@yahoo.com.ar> ha escrit al
>> missatge del grup de discussió: 50c077a1$[email=1@svctag-j7w3v3j....]1@svctag-j7w3v3j....[/email]
>>> Hola a todos en mis programas en el tArrayBrowse cuando edito una columna
>>> si el operador presiona ENTER lo paso automaticamente a la columna
>>> siguiente o la otra o baja la fila, para eso en el OnPostEdit de la
>>> columna escribo lo siguiente:
>>>
>>> if nKey==K_ENTER
>>> ::oTB:nColSel:=pITEM_CANTIDAD
>>> endif
>>>
>>> el tema es que desde que instale la version 2.7.4 no me refresca la fila
>>> cuando el operador pone el codigo de producto le pongo la descripcion y
>>> precio y no lo refresca. Cual es la mejor forma de hacer eso ? pasar a la
>>> siguiente columna o siguiente fila y para refrescar la fila
>>>
>>> Gracias
>>>
>>>
>>> __________ Información de ESET NOD32 Antivirus, versión de la base de
>>> firmas de virus 7773 (20121206) __________
>>>
>>> ESET NOD32 Antivirus ha comprobado este mensaje.
>>>
>>> http://www.eset.com
>>>
>>>
>>>
>>
>>
>>
>> __________ Información de ESET NOD32 Antivirus, versión de la base de
>> firmas de virus 7773 (20121206) __________
>>
>> ESET NOD32 Antivirus ha comprobado este mensaje.
>>
>> http://www.eset.com
>>
>>
>>
>>
>
>
>
> __________ Información de ESET NOD32 Antivirus, versión de la base de firmas
> de virus 7773 (20121206) __________
>
> ESET NOD32 Antivirus ha comprobado este mensaje.
>
> http://www.eset.com
>
>
>
>
>
> __________ Información de ESET NOD32 Antivirus, versión de la base de firmas de virus 7773 (20121206) __________
>
> ESET NOD32 Antivirus ha comprobado este mensaje.
>
> http://www.eset.com
>
>
>
>
Responder