SQL - Consulta SQL con origen de campo dinamico

   
Vista:

Consulta SQL con origen de campo dinamico

Publicado por Adrian Gastón (2 intervenciones) el 02/11/2013 16:55:55
Hola a todos, antes que nada me presento, mi nombre es gastón soy tecnico en informática desde hace muchos años y ahora estoy queriendo pasear por la programación; en un desarrollo que estoy haciendo en access necesito usar una consulta que obtenga valores de un campo u otro de una tabla de manera dinamica; para que se entienda pego la consulta como yo crei que seria y no funciona

1
2
SELECT (SELECT Valor FROM Config WHERE (((Valor)="Terminal"));) AS Practica
FROM AsignacionPracticasMedicas;

básicamente tengo una tabla de configuracion de este front-end que hice y depende de la configuración deberia leer una campo u otro de la tabla AsignacionPracticasMedicas

Me urge resolverlo, si sus caritativas mentes me dan una mano estare eternamente agradecido

saludos desde Patagonia Argentina

Graficamente lo que necesito sería algo así

--------------
| Practica | <===El nombre del campo siempre será "practica" pero el origen puede ser
-------------- La columna Electro, o Radiologia, etc, etc, etc. de la tabla
| Registro | "AsignacionPracticasMedicas.
-------------- De esta manera podre configurar una misma terminal para dif funciones
| Registro | Sin tener que editar las consultas depende de para que lo use
--------------
| Registro |
--------------
| Registro |
--------------
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
Imágen de perfil de xve

Consulta SQL con origen de campo dinamico

Publicado por xve (237 intervenciones) el 02/11/2013 20:57:15
Hola Adrian, desconozco la estructura de tu tabla, y el error que te da, pero creo que puedes hacerlo mas sencillo...

1
SELECT Valor as Practica FROM Config WHERE Valor="Terminal"

No se si te sirve... si nos puedes comentar...
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

Consulta SQL con origen de campo dinamico

Publicado por Adrian Gastón (2 intervenciones) el 02/11/2013 23:04:11
Hola XVE muchas gracias por tu pronta respuesta, pero creo que tu ejemplo no es lo que necesito.
cuento con dos tablas (AsigancionPracticasMedicas, que es donde almaceno cada paciente y el recorrido que tiene que hacer por las practicasmedicas) y (Config que es donde almaceno la configuracion del front-end) genero un front-end para alojar en una terminal en cada secor de pracicas medicas, entiendase: Electro, examen medico, Fonoaudiologia, Etc
el front-end es iagual en todas las áreas la diferencia es que cada uno de los front-end trabaja sobre su campo denntro de cada registro de asignacionpracticasmedicas entonces el de electro lee los datos de los pacientes, pero escribe solo en el campo electro y asi cada uno de los terminales.

entonces cada terminal tiene una consulta donda donde yo actualmente pongo ej; Electro As Practica; si yo cambio ese valor por ExamenMedico As Practica, sólo edito la consulta en vez de editar todo el formulario y sus referencias.
ahora quiero ir un paso mas hacia adelante; el nombre de la terminal lo almaceno en una tabla donde tengo la configuracion y las variables de todo el sistema, entonces la idea es que con solo editar los valores de la tabla se modifique la función del terminal

por eso mi consulta original que no funciona es
1
2
SELECT (SELECT Valor FROM Config WHERE (((Valor)="Terminal"));) AS Practica
FROM AsignacionPracticasMedicas;

el valor resultante del codigo que esta entre parentesis despues del primer select es el nombre de la columna origen de datos en la tabla asignacionpracticasmedicas. pero el nombre la consulta lo deberia obtener del campo valor en la tabla config donde Variable es = terminal

asi deberia quedar el resultado de la consulta por ejemplo

1
SELECT Electro AS Practica FROM AsignacionPracticasMedicas

donde la palabra Electro es un valor que en realidad lo lee de otra tabla
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