Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Extraer campos (https://www.clubdelphi.com/foros/showthread.php?t=70123)

dtomeysoto 30-09-2010 21:52:00

Extraer campos
 
Hola amigos, estoy usando un TADOQuery con la siguiente sentencia SQL:

Código SQL [-]
SELECT EMPRESAS.CODIGO, EMPRESAS.NOMBRE, [EMPRESAS].[DIRECCION]+', '+[PROVINCIA]+', '+[MUNICIPIO] AS DIRECCION
FROM PROVINCIAS INNER JOIN (MUNIPROV INNER JOIN EMPRESAS ON MUNIPROV.CODIGO = EMPRESAS.CODMUNPRO) ON PROVINCIAS.CODIGO = MUNIPROV.CODPROV
ORDER BY EMPRESAS.CODIGO;

Necesito extraer de la cláusula SELECT los campos pero con la tabla, es decir:

EMPRESAS.CODIGO
EMPRESAS.NOMBRE
[EMPRESAS].[DIRECCION]+', '+[PROVINCIA]+', '+[MUNICIPIO]

Existe alguna función en el componente que estoy usando que me de lo que necesito o hay que programarlo?

Gracias.

maeyanes 30-09-2010 21:56:05

Hola...

¿Exáctamente que quieres hacer?


Saludos...

dtomeysoto 30-09-2010 22:32:31

Cita:

Empezado por maeyanes (Mensaje 378043)
Hola...

¿Exáctamente que quieres hacer?


Saludos...

ummm al parecer no me expliqué bien.

Necesito para cualquier consulta que esté almacenada en un TADOQuery extraer los nombres de los campos pero con la tabla delante (NOMBRE_TABLA.NOMBRE_CAMPO) como puse en primer post.

maeyanes 30-09-2010 23:13:04

Hola...

Puedes revisar la ayuda de Delphi sobre TADOQuery a ver si hay algo que te sirva o ya de plano vas a tener que extraer esa información a "pie"



Saludos...

ecfisa 30-09-2010 23:32:41

Cita:

Empezado por dtomeysoto (Mensaje 378053)
ummm al parecer no me expliqué bien.

Necesito para cualquier consulta que esté almacenada en un TADOQuery extraer los nombres de los campos pero con la tabla delante (NOMBRE_TABLA.NOMBRE_CAMPO) como puse en primer post.

Código Delphi [-]
procedure TForm1.Button1Click(Sender: TObject);
var
  i: Integer;
begin
   for i:= 0 to  ADOQuery1.FieldList.Count - 1 do
    // Nombres de los campos con la tabla delante en Memo.
     Memo1.Lines:= Add('NOMBRE_DE_TABLA.' + ADOQuery1.FieldList.Fields[i].FieldName);
end;

Saludos.

cloayza 30-09-2010 23:51:55

Podria ser asi:

Código Delphi [-]
strOrigen:=ADOQuery1.Fields[0].Origin;
//O podria ser
strOrigen:=ADOQuery1.FieldByname('ID'].Origin;

Ambos deberian entregarte lo que requieres.

Saludos

maeyanes 01-10-2010 16:19:56

Hola...

Cita:

Empezado por cloayza (Mensaje 378064)
Podria ser asi:

Código Delphi [-]
strOrigen:=ADOQuery1.Fields[0].Origin;
//O podria ser
strOrigen:=ADOQuery1.FieldByname('ID'].Origin;

Ambos deberian entregarte lo que requieres.

Saludos

Estuve investigando precisamente sobre esa propiedad y según la ayuda, solo sirve para campos persistentes y solo si estás usando el BDE, es por eso que no lo mencioné...



Saludos...

cloayza 01-10-2010 17:12:56

Cita:

Empezado por maeyanes (Mensaje 378123)
Hola...
Estuve investigando precisamente sobre esa propiedad y según la ayuda, solo sirve para campos persistentes y solo si estás usando el BDE, es por eso que no lo mencioné...
Saludos...

Tienes razon solo funciona con el BDE, pero si funciona aunque los campos no sean persistentes.

Marcador igualado a 1 :D

Un abrazo


La franja horaria es GMT +2. Ahora son las 18:03:09.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi