FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Pocket PC Problema de reconocimiento de alias...
Posts: 233
Joined: Wed Aug 09, 2006 03:07 PM
Problema de reconocimiento de alias...
Posted: Wed Mar 14, 2007 05:00 PM

Hola a todos...
Bueno antes de nada este es el codigo conflictivo...


FUNCTION configuracion(usuario,clave)


LOCAL olist,radio_pvp,radio_art,oart_nuevo,oexis_local,lval:=.f.,lval1:=.f.
LOCAL oexis_local_siempre,oexis_remot_siempre,contador

CLOSE DATABASES

&& se contabilizan los registros que estan marcados
SELECT 0
USE (CURDIR() +"\definiciones.dbf") VIA "DBFCDX" new
INDEX ON codigo TO codigo
definiciones->(OrdSetFocus("codigo"))
SET FILTER TO (definiciones->activado==.T.)
definiciones->(dbgotop())
contador:=0
DO while !EOF()
contador:=contador+1
definiciones->(dbskip())
ENDDO
definiciones->( DbClearFilter() )
definiciones->(dBGotop())

SELECT 0

USE (CURDIR() + "\vector_ini.dbf") VIA "DBFCDX" new
ip:=ALLTRIM(vector_ini->ip_equipo) &&guarda la ip del equipo
nombre_pda:=ALLTRIM(vector_ini->codpda)
control_existencias_locales:= vector_ini->exis_local
control_existencias_remotas:= vector_ini->exis_remot
existencias_locales_siempre:=vector_ini->el_siempre
existencias_remotas_siempre:=vector_ini->er_siempre

SELECT vector_ini

DEFINE window oWnd1 TITLE "Configuraci贸n"

&&definimos las pesta帽as y el tama帽o de estas
@ 3, 1 FOLDER oFld PROMPTS "Par谩metros", "Sistema", "Descargas", "Configuraci贸n",;
"M谩scaras","Definiciones","Cambio de Claves" SIZE 225, 175

&&le damos un color de fondo para integrarla en la pantalla principal
oFld:setcolor(RGB(1,1,1),RGB(230,184,94))

IF VAL(tipo_acceso)==0 &&solo se permite acceso a la primera pagina

&& primera pagina

@ 2, 1 SAY "Codigo PDA" OF oFld:aDialogs[ 1 ] SIZE 70, 15
@ 2, 10 GET oCod_pda var vector_ini->codpda OF oFld:aDialogs[ 1 ] SIZE 130, 21
@ 3.6, 1 SAY "Aplicaci贸n" OF oFld:aDialogs[ 1 ] SIZE 70, 15
@ 4, 10 GET oAplic var vector_ini->aplicacion OF oFld:aDialogs[ 1 ] SIZE 130, 21
@ 5.4, 1 SAY "Almacen" OF oFld:aDialogs[ 1 ] SIZE 70, 15
@ 6, 10 GET oAlmacen var vector_ini->almacen OF oFld:aDialogs[ 1 ] SIZE 130, 21
@ 7.1, 1 SAY "Lista Precios" OF oFld:aDialogs[ 1 ] SIZE 70, 15
@ 8, 10 GET oPrecios var vector_ini->lista_pvp OF oFld:aDialogs[ 1 ] SIZE 130, 21

ELSE &&el acceso es a toda la configuraci贸n

&& primera pagina

@ 2, 1 SAY "Codigo PDA" OF oFld:aDialogs[ 1 ] SIZE 70, 15
@ 2, 10 GET oCod_pda var vector_ini->codpda OF oFld:aDialogs[ 1 ] SIZE 130, 21
@ 3.6, 1 SAY "Aplicaci贸n" OF oFld:aDialogs[ 1 ] SIZE 70, 15
@ 4, 10 GET oAplic var vector_ini->aplicacion OF oFld:aDialogs[ 1 ] SIZE 130, 21
@ 5.4, 1 SAY "Almacen" OF oFld:aDialogs[ 1 ] SIZE 70, 15
@ 6, 10 GET oAlmacen var vector_ini->almacen OF oFld:aDialogs[ 1 ] SIZE 130, 21
@ 7.1, 1 SAY "Lista Precios" OF oFld:aDialogs[ 1 ] SIZE 70, 15
@ 8, 10 GET oPrecios var vector_ini->lista_pvp OF oFld:aDialogs[ 1 ] SIZE 130, 21

&& segunda pagina

@ 1, 1 SAY "Direcci贸n IP" OF oFld:aDialogs[ 2 ] SIZE 70, 15
@ 1, 10 GET oIP var vector_ini->ip_equipo OF oFld:aDialogs[ 2 ] SIZE 130, 21
@ 2.6, 1 SAY "Nombre Eq." OF oFld:aDialogs[ 2 ] SIZE 70, 15
@ 3, 10 GET oNombreEq var vector_ini->equipo OF oFld:aDialogs[ 2 ] SIZE 130, 21
@ 4.3, 1 SAY "Ruta" OF oFld:aDialogs[ 2 ] SIZE 70, 15
@ 5, 10 GET oRuta var vector_ini->ruta OF oFld:aDialogs[ 2 ] SIZE 130, 21
@ 6, 1 SAY "Usuario" OF oFld:aDialogs[ 2 ] SIZE 70, 15
@ 7, 10 GET oUsuario var vector_ini->usuario OF oFld:aDialogs[ 2 ] SIZE 130, 21
@ 7.8, 1 say "Constrase帽a" of oFld:aDialogs[ 2 ] SIZE 70, 15
@ 9, 10 GET oPass var vector_ini->pass OF oFld:aDialogs[ 2 ] SIZE 130, 21

&& tercera pagina

@ 1, 1 SAY "Inventarios" OF oFld:aDialogs[ 3 ] SIZE 70, 15
@ 1, 10 GET oRuta_Inv var vector_ini->ruta_inv OF oFld:aDialogs[ 3 ] SIZE 130, 21
@ 2.6, 1 SAY "Compras" OF oFld:aDialogs[ 3 ] SIZE 70, 15
@ 3, 10 GET oRuta_com var vector_ini->ruta_com OF oFld:aDialogs[ 3 ] SIZE 130, 21
@ 4.3, 1 SAY "Ventas" OF oFld:aDialogs[ 3 ] SIZE 70, 15
@ 5, 10 GET oRuta_ven var vector_ini->ruta_ven OF oFld:aDialogs[ 3 ] SIZE 130, 21
@ 6, 1 SAY "Consultas" OF oFld:aDialogs[ 3 ] SIZE 70, 15
@ 7, 10 GET oRuta_con var vector_ini->ruta_con OF oFld:aDialogs[ 3 ] SIZE 130, 21

&& cuarta pagina

@ 1, 1 SAY "Dias sin actualizar" OF oFld:aDialogs[ 4 ] SIZE 110, 15
@ 1, 15 GET oDias var vector_ini->dias OF oFld:aDialogs[ 4 ] SIZE 90, 21
@ 3, 1 checkbox oart_nuevo var vector_ini->art_nuevo prompt "Crear Articulo" OF oFld:aDialogs[ 4 ] SIZE 100, 21
@ 5, 1 checkbox omod_pvp var vector_ini->pvp_modif prompt "Modificar PVP" OF oFld:aDialogs[ 4 ] SIZE 100, 21
@ 7, 22 checkbox oexis_local_siempre var vector_ini->El_siempre prompt "Siempre" OF oFld:aDialogs[ 4 ] SIZE 100, 21
IIF (control_existencias_locales=.f.,oexis_local_siempre:hide(),lval:=.t.)
@ 9, 22 checkbox oexis_remot_siempre var vector_ini->er_siempre prompt "Siempre" OF oFld:aDialogs[ 4 ] SIZE 100, 21
IIF (control_existencias_remotas=.f.,oexis_remot_siempre:hide(),lval1:=.t.)

@ 7, 1 checkbox oexis_local var vector_ini->exis_local prompt "Ver Exis. Locales" OF oFld:aDialogs[ 4 ] SIZE 140, 21 on click ( lVal := ! lVal, Iif( lVal, oexis_local_siempre:show(), (oexis_local_siempre:hide(),vector_ini->el_siempre:=.t.)))

@ 9, 1 checkbox oexis_remot var vector_ini->exis_remot prompt "Ver Exis. Remotas" OF oFld:aDialogs[ 4 ] SIZE 140, 21 on click ( lVal1 := ! lVal1, Iif( lVal1, oexis_remot_siempre:show(),(oexis_remot_siempre:hide(),vector_ini->er_siempre:=.t.)))

&& quinta pagina

@ 1, 1 SAY "Inventario" OF oFld:aDialogs[ 5 ] SIZE 70, 15
@ 1, 10 GET omasc_inv var vector_ini->masc_inv OF oFld:aDialogs[ 5 ] SIZE 130, 21
@ 2.6, 1 SAY "Compras" OF oFld:aDialogs[ 5 ] SIZE 70, 15
@ 3, 10 GET omasc_com var vector_ini->masc_com OF oFld:aDialogs[ 5 ] SIZE 130, 21
@ 4.3, 1 SAY "Ventas" OF oFld:aDialogs[ 5 ] SIZE 70, 15
@ 5, 10 GET omasc_ven var vector_ini->masc_ven OF oFld:aDialogs[ 5 ] SIZE 130, 21

&& pagina 6

SELECT definiciones

@ 1, 1 listbox olist fields definiciones->codigo,definiciones->descrip,;
definiciones->abreviatur,definiciones->activado fieldsizes 30,100,37,20 header "C贸d","Descripci贸n","Abrev","Sel" OF oFld:aDialogs[ 6 ] size 207,105

olist:nClrPane := { || If( definiciones->activado,RGB(230,184,94) , RGB(255,255,255) ) }
olist:blClicked:={||definiciones->activado:=!definiciones->activado,;

IIF(definiciones>activado==.t.,contador:=contador+1, contador:=contador-1),olist:Refresh(),IIF(contador<=3,,(msginfo('Solo es posible marcar 3 definiciones...','Atenci贸n'),definiciones->activado:=!definiciones->activado,contador:=contador-1))}

@ 9, 1 bitmap obmp1 name "titulo_modificar" noborder OF oFld:aDialogs[ 6 ] SIZE 110, 42
@ 9, 17 bitmap obmp2 name "titulo_anadir" noborder of oFld:aDialogs[ 6 ] size 110, 42
@ 11.5, 9 bitmap obmp3 name "titulo_borrar" noborder of oFld:aDialogs[ 6 ] size 110, 42

oBmp2:blClicked := {|| MsgBeep(),nueva_marca(oWnd1) }
oBmp1:blClicked := {|| MsgBeep(),IIF(!BOF(),(nRecno := definiciones->( Recno()),modifica_definicion(olist)),obmp1:hide()) }
oBmp3:blClicked := {|| MsgBeep(),(nRecno := definiciones->( Recno())),IIF(!BOF(),IIF(MsgNoYes('驴Desea borrar de las definiciones el registro marcado?','Atenci贸n'),(definiciones->(DBDelete()),olist:REFRESH(),contador:=contador-1),),obmp3:hide()) }

&& septima pagina (cambio de clave)

@ 5, 4 bitmap obmp7 name "cambio_clave" noborder OF oFld:aDialogs[ 7 ] SIZE 180, 42
oBmp7:blClicked := {|| MsgBeep(),IIF(msgNoYes('Atenci贸n, 驴desea cambiar la clave asignada al usuario?','Atenci贸n'),cambia_clave(usuario,clave),)}

endif

&&color de fondo de la pantalla
oWnd1:setcolor(RGB(1,1,1),RGB(230,184,94))

ACTIVATE WINDOW oWnd1;
on init botones_configuracion(oWnd1,olist) &&al iniciar cargamos la barra de botones
RETURN nil

Se me ha presentado un problema que no se por donde cogerlo. Tengo el codigo anterior que lo que hace es mostrar una serie de pesta帽as para la configuraci贸n de la aplicaci贸n. Resulta que cuando entro la primera vez a esta opci贸n todo funciona correctamente, pero si vuelvo a entrar una segunda vez todo me funciona menos la pesta帽a 6. Me da un error que dice que no encuentra el alias definiciones.De echo en esta pesta帽a el Select Definiciones lo hace y no da error pero cuando llega al listbox me da el error de 'no se encuentra el alias definiciones'.... Yo creo que el problema puede estar en el browse donde muestro las definiciones que a lo mejor hay que inicializarlo de nuevo, la verdad es que no se que hacer. He probado a destruir el objeto olist, pero nada. Lo curioso es que cuando entro lo primero que hago es cerrar las tablas que tengo abiertas pero tampoco me soluciona el problema..

Si alguien puede aclararme cual es el problema o por lo menos darme alguna pista que me pueda 'iluminar' se lo agradecer铆a....

Saludos..

El铆as Torres.

Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Problema de reconocimiento de alias...
Posted: Wed Mar 14, 2007 06:28 PM
El铆as,

A primera vista, aqui falta esto:

IIF(definiciones->activado==.t., ...
regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Problema de reconocimiento de alias...
Posted: Wed Mar 14, 2007 06:34 PM

El铆as,

Prueba a hacer:

SELECT definiciones
MsgInfo( Alias() )

para asegurarte de que el Alias() es correcto

regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 233
Joined: Wed Aug 09, 2006 03:07 PM
Problema de reconocimiento de alias...
Posted: Wed Mar 14, 2007 06:48 PM

Antonio, en cuanto a la falta de '-' es un error al copiarlo aqui. He comprobado el alias y es correcto... Pero cuando pincho en la pesta帽a en cuestion(por segunda vez) me da el error, a la primera no.

El error lo tengo localizado al mostrar los campos en el browse... La verdad es que nose porque se da el error. Nose si el browse se queda 'pillado' la primera vez. He probado como decia en el otro post a destruir el objeto pero nada....No se me ocurre nada mas.

Saludos.

El铆as Torres.

Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Problema de reconocimiento de alias...
Posted: Wed Mar 14, 2007 09:43 PM

El铆as,

> Pero cuando pincho en la pesta帽a en cuestion(por segunda vez) me da el error, a la primera no.

Te refieres a que te mantienes en la misma pantalla, pero cambias de pesta帽a solamente ?

regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 233
Joined: Wed Aug 09, 2006 03:07 PM
Problema de reconocimiento de alias...
Posted: Thu Mar 15, 2007 09:26 AM

Hola Antonio, me falla cuando hago lo siguiente:

Todo el codigo anterior pertecene a una seccion del programa llamada configuraci贸n. El tema es que cuando entro por primera vez a esta secc铆贸n (se muestran todas las pesta帽as) funciona perfectamente, realizo cualquier cambio (o no) y salgo para meterme en otra secci贸n fuera de la configuraci贸n. Hasta aqui todo correcto. Entonces si vuelvo a entrar en esta secci贸n de configuraci贸n por segunda vez,cuando llego a la pesta帽a n潞 7 es cuando me da el error. Nose si me he explicado...

Saludos.

El铆as Torres.

Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Problema de reconocimiento de alias...
Posted: Thu Mar 15, 2007 10:13 AM

El铆as,

Entendido, y cual es el error exacto que te aparece ?

regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 233
Joined: Wed Aug 09, 2006 03:07 PM
Problema de reconocimiento de alias...
Posted: Thu Mar 15, 2007 10:20 AM

Antonio, el error que me da es exactamente este:

Alias does not exist
DEFINICIONES
stack calls:
(b)CONFIGURACION(705)
TWBROWSE:DRAWSELECT(0)
(b)TWBROWSE(0)
TWBROWSE:LOSTFOCUS(0)
TWBROWSE:KILLFOCUS(0)
TCONTROL:HANDLEEVENT(0)
TWBROWSE:HANDLEEVENT(0)
_FWPPC(0)
MSGINFO(0)
SHOWERROR(0)
(b)ERRORSYS(0)
(b)CONFIGURACION(705)
TWBROWSE:DRAWSELECT(0)
(b)TWBROWSE(0)
TWBROWSE:GOTFOCUS(0)
TWINDOW:HANDLEEVENT(0)
TCONTROL:HANDLEEVENT(0)
TWBROWSE:HANDLEEVENT(0)
_FWPPC(0)
SETFOCUS(0)
TDIALOG:GOTFOCUS(0)
TWINDOW:HANDLEEVENT(0)
TDIALOG:HANDLEEVENT(0)
_FWPPC(0)
SETFOCUS(0)
TDIALOG:SETFOCUS(0)
TFOLDER:SETOPTION(0)
TFOLDER:NOTIFY(0)
TWINDOW:NOTIFY(0)
TWINDOW:HANDLEEVENT(0)
_FWPPC(0)
DIALOGBOX(0)
TDIALOG:ACTIVATE(0)
MAIN(109)


Saludos

El铆as Torres.

Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Problema de reconocimiento de alias...
Posted: Thu Mar 15, 2007 03:50 PM

El铆as,

En alguna parte de tu c贸digo debes estar reusando esa 谩rea de trabajo 贸 cerr谩ndola.

Llama a MsgInfo( Select( "DEFINICIONES" ) ) antes de entrar en esa funci贸n y comprueba que te muestre un valor distinto a cero

regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 233
Joined: Wed Aug 09, 2006 03:07 PM
Problema de reconocimiento de alias...
Posted: Thu Mar 15, 2007 04:30 PM

Antonio,
he puesto lo que me comentas antes de la funci贸n Configuraci贸n() y me muestra un cero. He probado a abrir las tablas dentro de la funci贸n Configuraci贸n() con un Select 1 en vez de Select 0 para cambiar el 谩rea de trabajo pero me sigue dando el mismo error. Lo que no entiendo es si al hacer un close databases (como hago al entrar en dicha funci贸n) no me debe cerrar TODAS las tablas y 谩reas de trabajo?.

Saludos.

El铆as Torres.

Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Problema de reconocimiento de alias...
Posted: Thu Mar 15, 2007 07:52 PM

El铆as,

Prueba esto en vez de SELECT 0:

SELECT 1
USE (CURDIR() +"\definiciones.dbf") VIA "DBFCDX" new
...

SELECT 2 // Seleccionas la siguiente
USE (CURDIR() + "\vector_ini.dbf") VIA "DBFCDX" new
...

regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 233
Joined: Wed Aug 09, 2006 03:07 PM
Problema de reconocimiento de alias...
Posted: Mon Mar 19, 2007 11:26 AM

Nada Antonio, he cambiado las areas de trabajo y me sigue dando el mismo error. Lo curioso es que si yo le quito el objeto listbox funciona correctamente, por lo que el error est谩 localizado al mostrar los campos de la tabla definiciones en dicho listbox... No doy con la soluci贸n...

Saludos.

El铆as Torres.

Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Problema de reconocimiento de alias...
Posted: Mon Mar 19, 2007 05:37 PM

El铆as,

SELECT 1
USE (CURDIR() +"\definiciones.dbf") VIA "DBFCDX" new
MsgInfo( Alias() )

antes del browse, tendr铆a que mostrar siempre DEFINICIONES, es as铆 ?

regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 233
Joined: Wed Aug 09, 2006 03:07 PM
Problema de reconocimiento de alias...
Posted: Mon Mar 19, 2007 05:53 PM

Hola Antonio, por fin he dado con el problema!. Mir茅 por todo el c贸digo que estaba relacionado con esta funci贸n (bas谩ndome en lo que me dec铆as de que estaba reutilizando el 谩rea de trabajo o directamente me lo estaba cargando) y efectivamente en una parte de una funci贸n estaba haciendo un 'use' que no deb铆a hacer. Lo he quitado y todo est谩 correcto.

De nuevo muchas gracias por tu tiempo.

Saludos.

El铆as Torres.

Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Problema de reconocimiento de alias...
Posted: Mon Mar 19, 2007 08:16 PM

bien :-)

regards, saludos

Antonio Linares
www.fivetechsoft.com

Continue the discussion