FoxPro/Visual FoxPro - Tabla con comandos SQL

 
Vista:

Tabla con comandos SQL

Publicado por Ramon (81 intervenciones) el 31/10/2011 19:46:14
Hola buenas tardes.. estoy tratando de crear una tabla para almacenar comandos sql.. en mi aplicacion estara en la opcion Editor SQL del Menú Principal.
Abrirá una tabla llamada ACCIONSQL que tendrá 2 campos

tabla c(80) Accion C(80)
AbrexTabla SELECT * FROM xtabla order by xcampo
AbrexTabla2 SELECT * FROM XtABLA2 order by xcampo2
Guarda¨Tabla1 INSERT INTO TABLA1(xcam1,xcamp2) values(?xVar1, ?xVar2)

EN EL ARCHIVO DE FUNCIONES LLAMAR A LA SIGUIENTE FUNCION.

la llamo desde un form asi.
set procedure to funciones
cTable='mitabla'
=Acciones(cTable) && Variable con el nombre de la tabla declarada antes.

**** esta funcion pretendo hacer pero no me resulta...
FUNCTION acciones
PARAMETERS cTable
PUBLIC cmdAc1
SET PROCEDURE TO funciones
=AbreDatos()
Try
SQLEXEC(Con,'Select * from Accionslq','Comandos')
CATCH
=NoConecta()
ENDTRY
SELECT Comandos
GO Top
LOCATE FOR ALLTRIM(tabla)=&cTable
=SQLEXEC(Con,ALLTRIM(Accion),&cTable)
SELECT &cTable
BROWSE & & Aqui me debe abrir la TABLA PARA CONSULTARLA


function AbreDatos()
lBaseData=lcNewDir+'\DATOS\MIbD.mdb'
Endfun

Ahi les encargo... una ayudadita...
Saludos
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

Tabla con comandos SQL CORRECCION

Publicado por Ramon (81 intervenciones) el 31/10/2011 19:50:41
PERDON

**** AL SELECCIONAR LA TABLA COMANDOS.. LO QUE VOY A
** LA BUSQUEDA QUEDARIA ASI..

=SQLEXEC(Con,ALLTRIM(cmdAc1),&cTable)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

Tabla con comandos SQL CORRECCION

Publicado por Carlos Cuyé (75 intervenciones) el 01/11/2011 19:33:07
La variable 'CON' usada en la función SQLEXEC() quizás tenga problemas porque 'CON' es un dispositivo interno del MS-DOS. Podrías usar otro nombre para probar si funciona.
Nombre de dispositivos que debes asumir que son palabras reservadas:
PUERTOS:
Los puertos son los elementos que permiten a la CPU comunicarse con el exterior. MS-DOS reconoce:
Los puertos serie o puertos de comunicaciones (envían la información bit a bit -módem-) se los conoce como COM1, COM2, COM3, COM4. COM3 suele utilizarse para el módem interno, exteriormente es un conector de línea telefónica.
Los puertos paralelo (envían la información byte a byte -impresora-) se reconocen como LPT1, LPT2 (Line Printer)
obs. Al primer puerto serie COM1 también se le conoce como AUX.
al primer puerto paralelo LPT1 también se le conoce bajo el nombre PRN
CONSOLA (pantalla y teclado)
La consola se identifica como CON. Nunca existirá ambigüedad, ya que el teclado es de entrada y la pantalla de salida.
NULO:
NUL, el dispositivo nulo no tiene ningún periférico asociado, es un dispositivo ficticio. Suele utilizarse para desviar informaciones que no nos interesan (normalmente informaciones de error). Es como una "papelera" sin fondo, donde pueden escribir los comandos.
NOTA: Los nombres de dispositivos MS-DOS han dado lugar a palabras reservadas, de manera que no podemos crear un archivo como nul.txt o con.jpg, o una carpeta denominada aux.
Fuente:http://www.palomatica.info/juckar/microsoft/msdos/basico/caracteristicas_generales.html
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Tabla con comandos SQL CORRECCION

Publicado por Ramon (81 intervenciones) el 03/11/2011 20:34:47
Hola... creo que tiene razón... voy a cambiar el nombre de mi conexión ya que la iba a llamar :
conexion... pero se mi hizo muy largo el nombre para andarla incluyendo en cada vez que voy a llamar al realizarla y le quite las latras.... EXION... PARA SIMPLIFICAR...

PERO NUNCA PENSE QUE SE TRATABA DE ALGUN COMANDO DE MSDOS...

100O DISCULPAS...
voy a nombrarlo... como yo.... je je.... monchis..... je je... asi no fallo... verdad...??
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

Tabla con comandos SQL

Publicado por Carlos Cuyé (75 intervenciones) el 01/11/2011 19:37:48
Tu función AbreDatos(), según su nombre, debería abrir algún archivo pero no lo hace.
Creo que te falta allí una función SQLCONNECT( ), que supongo debería abrir la base de datos referenciada en la variable lBaseData
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

Tabla con comandos SQL

Publicado por Carlos Cuyé (75 intervenciones) el 01/11/2011 19:47:15
En las siguientes lineas de tu código, deberías quitar el andpersand (&)
LOCATE FOR ALLTRIM(tabla)=&cTable
=SQLEXEC(Con,ALLTRIM(Accion),&cTable)

En el comando SELECT deberías usar esta sintaxis (según la doc del VFP, es mas conveniente que usar macros &):
SELECT (cTable)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar