Clausula Valid en un GET simple

Clausula Valid en un GET simple

Postby ingggc » Sun Aug 12, 2007 1:10 pm

Porque no trabaja la clausula valid de un Get el código es el siguiente:
local l_oGet
private p_cArti :=space(14)
private p_pDlg
DEFINE DIALOG p_oDlg RESOURCE 'DCON_PRE1'
REDEFINE GET l_oGet VAR p_cArti ID 101 OF p_oDlg PICTURE '@!@k' VALID(Chk_Pre1())
ACTIVATE DIALOG p_oDlg CENTER
Close Databases
Return Nil

Static Function Chk_Pre1()
? '1'
Return(.t.)

Guillermo Guevara C.
Clp5.2e FW2.3b Blk3.3
ingggc
 
Posts: 17
Joined: Mon Jul 09, 2007 3:20 am
Location: Guadalajara, Jalisco

Postby Antonio Linares » Mon Aug 13, 2007 9:00 am

Guillermo,

Necesitas tener un control más en el diálogo para que se produzca pérdida de foco hacia ese otro control
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 42122
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Gracias Antonio

Postby ingggc » Mon Aug 13, 2007 2:39 pm

Disculpa mi ignorancia.

Ok de acuerdo con tu recomendación, entonces voy a programar un diálogo definiendo controles que no ucupo, ¿es una limitante de FW ó que sucede?, en nuestro viejo Clipper no teniamos estas limitántes.

Ejemplo específico de este caso, estoy tratando de construir un verificador de precios para que el usuario utilice un scanner (Lector de código de barras) lea el GET (unico control en este diálogo) y a través de la clausula VALID con otro diálogo despliegue el precio de venta por unos segundos y que regrese al GET original listo para otra lectura.

Guillermo Guevara C.
ingggc
 
Posts: 17
Joined: Mon Jul 09, 2007 3:20 am
Location: Guadalajara, Jalisco

Postby Armando » Mon Aug 13, 2007 3:32 pm

Guillermo:

No, no hay esa limitante, prueba cambiando la línea así:

REDEFINE GET l_oGet VAR p_cArti ID 101 OF p_oDlg PICTURE '@!@k' VALID Chk_Pre1()

Salaudos
SOI, s.a. de c.v.
estbucarm@gmail.com
http://www.soisa.mex.tl/
http://sqlcmd.blogspot.com/
Tel. (722) 174 44 45
Carpe diem quam minimum credula postero
User avatar
Armando
 
Posts: 3230
Joined: Fri Oct 07, 2005 8:20 pm
Location: Toluca, México

Postby Antonio Linares » Mon Aug 13, 2007 4:57 pm

Guillermo,

Usa un GET y un botón "Aceptar"
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 42122
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Gracias Armando y Antonio Linares

Postby ingggc » Tue Aug 14, 2007 3:22 pm

Armando:

Tu sugerencia es que quite un par de parentesis de la clausula VALID, ya lo hice, pero no funcionó, sigue igual, el programa está atascado en el GET.

Antonio:

Imaginate en una tienda un verificador de precios donde comunmente, el cliente solo acerca el producto al lector de código de barras y en la pantalla se muestra el precio del artículo.

Con tu sugerencia de definir un botón, imaginate tendría que ponerle un ratón con un "Mousepad" o un teclado con una base (Mesa ó algo así) lo cual resultaría, totalmente inoperante.

Posiblemente estoy buscando la solución al problema incorrectamente, si alguién en el foro tiene alguna idea para solucionar está cosa tan simple por favor transmitanmela.

Realmente este tipo de problemas son los que me han detenido en la decisión de comprar las herramientas requeridas para cambiar definitivamente a este ambiente.

Saludos

Guillermo
ingggc
 
Posts: 17
Joined: Mon Jul 09, 2007 3:20 am
Location: Guadalajara, Jalisco

Postby Armando » Tue Aug 14, 2007 4:09 pm

Guillermo:

Podrías especificar un poco más cual es el problema ?, cuando dices se queda atascado significa que no ves el resultado del código ?:

? '1'

Si entiendo bien, la solución es que utilices un SAY en el mismo dialogo, despues del GET, para mostrar el precio de venta, así no tendrías que obligar al usuario a usar ningun botón.

Saludos
SOI, s.a. de c.v.
estbucarm@gmail.com
http://www.soisa.mex.tl/
http://sqlcmd.blogspot.com/
Tel. (722) 174 44 45
Carpe diem quam minimum credula postero
User avatar
Armando
 
Posts: 3230
Joined: Fri Oct 07, 2005 8:20 pm
Location: Toluca, México

Gracias Armando

Postby ingggc » Wed Aug 15, 2007 4:15 pm

Efectivamente lo que requiero es que se muestre el
? '1'
Que es la prueba de que funcionó la clausula VALID en el GET

Ya había comprobado que poniendo el SAY en mismo control se hace la perdida de foco que me indicaba Antonio.

Sin embargo estoy intrigado porque algo que funciona tan bién en nuestro viejo Clipper no puede funcionar en FW, cuando menos hasta ahora.

Agradezco tus atenciones

Guillermo
ingggc
 
Posts: 17
Joined: Mon Jul 09, 2007 3:20 am
Location: Guadalajara, Jalisco

Postby Antonio Linares » Wed Aug 15, 2007 5:02 pm

Guillermo,

>
Sin embargo estoy intrigado porque algo que funciona tan bién en nuestro viejo Clipper no puede funcionar en FW, cuando menos hasta ahora.
>

Windows es un entorno muy distinto en su funcionamiento al antiguo MsDos.

FiveWin intenta en la medida de lo posible proporcionar comportamientos muy similares, pero en ocasiones hay que seguir las reglas que impone Windows
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 42122
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Antonio

Postby ingggc » Thu Aug 16, 2007 2:06 pm

Muchas Gracias por todos los consejos y tu apoyo, estoy de acuerdo hay que cambiar la forma estructurada de pensar, a pensar en función de la programación orientada a objetos.

Lo consideraré para mi verificador de precios

Guillermo
ingggc
 
Posts: 17
Joined: Mon Jul 09, 2007 3:20 am
Location: Guadalajara, Jalisco

Postby jacgsoft » Thu Sep 20, 2007 4:57 pm

La solucion es simple pon otro Get pero que su variable sea vacio



local l_oGet ,xClav:=''
private p_cArti :=space(14)
private p_pDlg
DEFINE DIALOG p_oDlg RESOURCE 'DCON_PRE1'
REDEFINE GET l_oGet VAR p_cArti ID 101 OF p_oDlg PICTURE '@!@k' VALID(Chk_Pre1())

@ 02,08 Get xClav Size 1,1

ACTIVATE DIALOG p_oDlg CENTER
Close Databases
Return Nil

Static Function Chk_Pre1()
? '1'
Return(.t.)
[code][/code]
User avatar
jacgsoft
 
Posts: 105
Joined: Fri Nov 24, 2006 9:03 pm
Location: Lima - Peru

Postby QAZWSX2K » Tue Sep 25, 2007 12:58 pm

YO HE HECHO ESO CON CODIGO DE BARRAS Y SOLO PONGO UN BOTON "SALIR", NO ES PARA QUE EL USUARIO LE DE CON UN MOUSE SALIR SINO COMO DICE ANTONIO PARA QUE HAYA AL MENOS 2 CONTROLES, SI TE DA PIEDRA PONERLO PONLO HIDE Y YA
Software especializado para oficinas contables con grandes volumenes de Informacion
Impresion de todos los formularios del Seniat, Dian

alex_patino74@hotmail.com
whatsapp 57+3214777217
User avatar
QAZWSX2K
 
Posts: 364
Joined: Tue Oct 25, 2005 7:06 pm
Location: Bogota - Caracas


Return to FiveWin para CA-Clipper

Who is online

Users browsing this forum: No registered users and 20 guests