Clipper/FiveWin - Problema con Setfocus

 
Vista:

Problema con Setfocus

Publicado por Maximiliano (2 intervenciones) el 23/08/2007 04:43:31
Hola a todos!! En un cuadro de diálogo donde debo cargar comprobantes, tengo que ingresar a qué cliente y a qué proveedor corresponde el comprobante en cuestión. En ambos casos tengo un GET para el código, otro para el nombre y un botón de búsqueda. La idea es que si ingreso el código de cliente, me muestre el nombre en el siguiente GET y directamente salte al GET del código de Proveedor y se repita el proceso. Ahora, si no conozco el cód de cliente y lo dejo en 0, me permita ingresar en el GET del nombre un texto y pulsando el botón Buscar me muestre una lista de coincidencias. Para esto, valido que si el código de cliente es > a 0, lo busco, refresco el GET del nombre y paso el foco al GET del cód de proveedor. Pero si es = 0, paso el foco al GET del nombre para ingresar el texto. El problema es que no funciona. Trabajo con WS y si a los GET les aplico Tab Stop, siguen ese orden y no me permiten pasar el foco a otro GET. Y si quito el Tab Stop, el foco va al siguiente Tab y no al GET. Aclaro que el problema es usando el <ENTER> Con el mouse funciona, pero quiero que funcione con el teclado. Agradecería me puedan ayudar. Transcribo una parte del código. Gracias de antemano!!! SALUDOS!!!

ValidaCli := { || ;
IF (nCodC > 0,;
IF (CLIENTES->(dbSeek(nCodC)),;
(cRazCli:=CLIENTES->Razon,oRazCli:Refresh(),oCodP:SetFocus(),.T.),;
(MsgInfo("!!!!!!!!!!!!!""),nCodC:=0,oCodC:Refresh(),oCodC:SetFocus(),.F.)),;
(Tone(200,2), oRazCli:SetFocus(),.T.) ) }

ValidaRazC := { || ;
IF (!empty(cRazCli),;
(oBusC:SetFocus(),.T.),;
(oRazCli:SetFocus(), .T.) ) }

ValidaBusC := { || ;
IF (!empty(cRazCli),;
(BusCli(cRazCli),oCodP:SetFocus() ),;
(Tone(200,2), oRazCli:Setfocus() ) ) }

DEFINE DIALOG oDlgVta RESOURCE "CARGANP"

REDEFINE GET oCodC VAR nCodC PICTURE "9999" ID CNP_CLI OF oDlgVta ;
VALID Eval (ValidaCli)

REDEFINE GET oRazCli VAR cRazCli PICTURE "@K!" ID CNP_NBREC OF oDlgVta ;
VALID Eval (ValidaRazC)

REDEFINE BUTTON oBusC ID CNP_BUSCAC OF oDlgVta ;
ACTION Eval(ValidaBusC)

REDEFINE GET oCodP VAR nCodP PICTURE "9999" ID CNP_PRO OF oDlgVta ;
VALID Eval (ValidaPro)

etc...etc...
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder