Apertura de archivos
Publicado por alexcoinc (450 intervenciones) el 01/09/2007 16:08:41
Tengo unas tablas libres creadas en una carpeta determinada asi: ruta='\ta2007\'
(Ruta es una variable pública)
En dicha carpeta estaran todas las tablas del año 2007 y si coloco ruta='\ta2008\', pues estaran las tablas del año
2008, etc.
Ahora bien, como mis formularios no tendrán definidas tablas en el entorno de datos, se creo una función que me abre
las tablas que el usuario desee desde la ruta escogida libremente, es decir desde TA2007 o TA2008.
La función es:
FUNCTION abrearchi
PARAMETERS como,opci
DO CASE
CASE como=1
DO CASE
CASE opci=1
SELE 54
USE alltrim(ruta)+'tipotar' alias movtita
set order to codigo
go top
do form f_tipotar
CASE opci=2
SELE 55
USE alltrim(ruta)+'tarifa' alias movtari
set order to institucio
go top
do form f_procedi
ENDCASE
OTHERWISE
ENDCASE
RETURN
Si quiero abrir la tabla TIPOTAR, ejecuto: abrearchi(1,1)
Si quiero abrir la tabla TARIFA, ejecuto: abrearchi(1,2)
EN TIEMPO DE EJECUCION:
***********************
En el formulario f_procedi, pido algunos datos y tengo un combo que me utiliza la tabla TIPOTAR, en el rowsource, asi:
sele nombre,codigo from (alltrim(ruta)+'tipotar') into cursor cur_titar
(Instrucción SQL)
Hasta aqui todo funciona bien y puedo salir de este formulario: thisform.release()
PERO INMEDIATAMENTE, cuando se desea utilizar el otro formulario es decir el f_tipotar(de la función), ejecuto abrearchi(1,1) e
inmediatamente me arroja un error que dice: "La tabla ya esta en uso".
Que está pasando, acaso con el thisform.release() no se cierran todas la tablas o es que la tabla utilizada en el combo del
formulario anteriormente abierto, me quedó usada ????
Les agradezco su colaboración.
Por favor denme una solución, o que estoy haciendo indebidamente ....
Gracias.
[email protected]
(Ruta es una variable pública)
En dicha carpeta estaran todas las tablas del año 2007 y si coloco ruta='\ta2008\', pues estaran las tablas del año
2008, etc.
Ahora bien, como mis formularios no tendrán definidas tablas en el entorno de datos, se creo una función que me abre
las tablas que el usuario desee desde la ruta escogida libremente, es decir desde TA2007 o TA2008.
La función es:
FUNCTION abrearchi
PARAMETERS como,opci
DO CASE
CASE como=1
DO CASE
CASE opci=1
SELE 54
USE alltrim(ruta)+'tipotar' alias movtita
set order to codigo
go top
do form f_tipotar
CASE opci=2
SELE 55
USE alltrim(ruta)+'tarifa' alias movtari
set order to institucio
go top
do form f_procedi
ENDCASE
OTHERWISE
ENDCASE
RETURN
Si quiero abrir la tabla TIPOTAR, ejecuto: abrearchi(1,1)
Si quiero abrir la tabla TARIFA, ejecuto: abrearchi(1,2)
EN TIEMPO DE EJECUCION:
***********************
En el formulario f_procedi, pido algunos datos y tengo un combo que me utiliza la tabla TIPOTAR, en el rowsource, asi:
sele nombre,codigo from (alltrim(ruta)+'tipotar') into cursor cur_titar
(Instrucción SQL)
Hasta aqui todo funciona bien y puedo salir de este formulario: thisform.release()
PERO INMEDIATAMENTE, cuando se desea utilizar el otro formulario es decir el f_tipotar(de la función), ejecuto abrearchi(1,1) e
inmediatamente me arroja un error que dice: "La tabla ya esta en uso".
Que está pasando, acaso con el thisform.release() no se cierran todas la tablas o es que la tabla utilizada en el combo del
formulario anteriormente abierto, me quedó usada ????
Les agradezco su colaboración.
Por favor denme una solución, o que estoy haciendo indebidamente ....
Gracias.
[email protected]
Valora esta pregunta


0