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.

Problema al utilizar la propiedad oFrm:lHideOnClose

Foro de Xailer profesional en español
Responder
Israel Solis
Mensajes: 155
Registrado: Mié Nov 03, 2004 12:42 pm
Ubicación: Cancún, México
Contactar:

Problema al utilizar la propiedad oFrm:lHideOnClose

Mensaje por Israel Solis »

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
Saludos :D

Israel
Avatar de Usuario
ignacio
Site Admin
Mensajes: 9246
Registrado: Lun Abr 06, 2015 8:00 pm
Ubicación: Madrid, Spain
Contactar:

Problema al utilizar la propiedad oFrm:lHideOnClose

Mensaje por ignacio »

Israel,
Cuando crees el formulario dale como padre el formulario principal. Algo así­:
TMyFrm():New( Application:oMainForm )
Saludos
Ignacio Ortiz de Zúñiga
[Equipo de Xailer / Xailer team]
https://www.xailer.com
Israel Solis
Mensajes: 155
Registrado: Mié Nov 03, 2004 12:42 pm
Ubicación: Cancún, México
Contactar:

Problema al utilizar la propiedad oFrm:lHideOnClose

Mensaje por Israel Solis »

Ignacio
Si te fijas en el codigo que he puesto, asi lo he hecho, es decir, al crear el formulario de Ayuda F2 le he dado como padre Application:oMainForm
Alguna otra idea?
GRACIAS
SALUDOS!!
Israel
Saludos :D

Israel
Avatar de Usuario
ignacio
Site Admin
Mensajes: 9246
Registrado: Lun Abr 06, 2015 8:00 pm
Ubicación: Madrid, Spain
Contactar:

Problema al utilizar la propiedad oFrm:lHideOnClose

Mensaje por ignacio »

Israel,
Prueba con:
WITH OBJECT oFrmF2 := TFrmF2():New( Application:oMainForm )
: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"
:Create()
END WITH
Y si no funciona mandanos un pequeño ejemplo que muestre el problema.
Un saludo
Ignacio Ortiz de Zúñiga
[Equipo de Xailer / Xailer team]
https://www.xailer.com
Responder