Problema al utilizar la propiedad oFrm:lHideOnClose
Publicado: Mar Abr 12, 2011 5:04 am
Compañeros:
Estoy poniendo en practica un Consejo de tantos que eh aprendido en el curso de Ignacio en Cancun-Mexico, les explico..
La idea es utilizar la propiedad :lHideOnClose del formulario que muestro como ayuda tipo F2 con los clientes disponibles al elaborar una factura y asi, en la prox. ocasion, solo hago :ShowModal(). Todo esto con la intencion de no estar cargando "SELECT * FROM.." en cada ocasion.
EL PROBLEMA...
Cuando mando llamar este formulario F2 desde la elaboración de facturas funciona de maravilla (aun llamandolo muchas ocasiones), el problema es cuando cierro la factura y genero OTRA nueva y requiero nuevamente el formulario F2 se muestra pero el FOCO no tengo idea de a donde ha ido, es decir, el formulario no reciber el foco y no me permite hacer clic (como si otro formulario invisible modal estuviera esperando respuesta)
Mi funcion para mostar el formulario F2...
FUNCTION F2Clientes(oSender, oEdit, oLbl, lRefresh )
STATIC oFrmF2 := NIL
LOCAL xRet
DEFAULT lRefresh TO F2ClientesRefresh()
// Si es la 1a. vez que se muestra el formulario...
IF oFrmF2 == NIL
WITH OBJECT oFrmF2 := TFrmF2()
:aBrwHeaders := {"R.F.C.", "Razón Social", "Nombre"}
:cOnRequestData:= "SELECT Clientes.RFC, Clientes.RazonSocia, Clientes.Nombre " +;
"FROM Clientes ORDER BY Clientes.INDNombre"
:cText := "Selección de cliente"
:New( Application:oMainForm ) // <<== oParent del formulario
END WITH
ENDIF
xRet := oFrmF2:Select(oEdit, oLbl, lRefresh)
F2ClientesRefresh( .F. )
RETURN xRet
Lo que he descubierto es que, si el formulario desde el cual mando llamar la Ayuda F2 (por ej. donde se elabora la factura) es MODAL entonces se presenta el problema, en otras palabras, si <oParent> es NO-Modal entonces todo funciona Ok.
Espero haber sido claro. de antemano GRACIAS
SALUDOS!!
Israel
Attached files
Estoy poniendo en practica un Consejo de tantos que eh aprendido en el curso de Ignacio en Cancun-Mexico, les explico..
La idea es utilizar la propiedad :lHideOnClose del formulario que muestro como ayuda tipo F2 con los clientes disponibles al elaborar una factura y asi, en la prox. ocasion, solo hago :ShowModal(). Todo esto con la intencion de no estar cargando "SELECT * FROM.." en cada ocasion.
EL PROBLEMA...
Cuando mando llamar este formulario F2 desde la elaboración de facturas funciona de maravilla (aun llamandolo muchas ocasiones), el problema es cuando cierro la factura y genero OTRA nueva y requiero nuevamente el formulario F2 se muestra pero el FOCO no tengo idea de a donde ha ido, es decir, el formulario no reciber el foco y no me permite hacer clic (como si otro formulario invisible modal estuviera esperando respuesta)
Mi funcion para mostar el formulario F2...
FUNCTION F2Clientes(oSender, oEdit, oLbl, lRefresh )
STATIC oFrmF2 := NIL
LOCAL xRet
DEFAULT lRefresh TO F2ClientesRefresh()
// Si es la 1a. vez que se muestra el formulario...
IF oFrmF2 == NIL
WITH OBJECT oFrmF2 := TFrmF2()
:aBrwHeaders := {"R.F.C.", "Razón Social", "Nombre"}
:cOnRequestData:= "SELECT Clientes.RFC, Clientes.RazonSocia, Clientes.Nombre " +;
"FROM Clientes ORDER BY Clientes.INDNombre"
:cText := "Selección de cliente"
:New( Application:oMainForm ) // <<== oParent del formulario
END WITH
ENDIF
xRet := oFrmF2:Select(oEdit, oLbl, lRefresh)
F2ClientesRefresh( .F. )
RETURN xRet
Lo que he descubierto es que, si el formulario desde el cual mando llamar la Ayuda F2 (por ej. donde se elabora la factura) es MODAL entonces se presenta el problema, en otras palabras, si <oParent> es NO-Modal entonces todo funciona Ok.
Espero haber sido claro. de antemano GRACIAS
SALUDOS!!
Israel
Attached files