Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > SQL
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 11-11-2010
Avatar de BlueSteel
[BlueSteel] BlueSteel is offline
Miembro Premium
 
Registrado: may 2003
Ubicación: Concepción - Chile
Posts: 2.310
Poder: 24
BlueSteel Va por buen camino
Consulta para obtener Max

Hola

Tengo una consulta en donde busco el mayor valor de un campo determinado...

Código SQL [-]
Select Max(Tar_CodigoBarra)+1 as sFol
From Tarjeta

El resultado de esto es : sFol = N (cualquier valor numerico)

desde delphi 7, lanzo la consulta así

Código Delphi [-]
     Datos.AQ_Select.Close;
     Datos.AQ_Select.SQL.Clear;
     Datos.AQ_Select.SQL.Add('Select Max(Tar_CodigoBarra)+1 From Tarjeta as sFol');
     Datos.AQ_Select.Open;

Y quiero pasar el resultado a una campo Edit de mi formulario.. lo trato de pasar así, pero me dice que el campo sFol no existe

Código Delphi [-]
sFol.Text := IntToStr(Datos.AQ_Select['sFol']);

el error al ejecutar es

'AQ_Select: Field 'sFol' not found

alguien sabe como pasar ese parametro a una variable....

Salu2
__________________
BlueSteel
Responder Con Cita
  #2  
Antiguo 11-11-2010
Avatar de movorack
[movorack] movorack is offline
Miguel A. Valero
 
Registrado: feb 2007
Ubicación: Bogotá - Colombia
Posts: 1.346
Poder: 20
movorack Va camino a la famamovorack Va camino a la fama
Cita:
Empezado por BlueSteel Ver Mensaje
Código Delphi [-]
Datos.AQ_Select.Close;
Datos.AQ_Select.SQL.Clear;
Datos.AQ_Select.SQL.Add('Select Max(Tar_CodigoBarra)+1 From Tarjeta as sFol');
Datos.AQ_Select.Open;
Hola BlueSteel

Intenta cambiando el SQL que estás enviando. tal cual lo estás enviando, el parametro se llamaria 'max' no 'sFol'.

Código Delphi [-]
Datos.AQ_Select.SQL.Add('Select Max(Tar_CodigoBarra)+1 as sFol From Tarjeta');
__________________
Buena caza y buen remar... http://mivaler.blogspot.com
Responder Con Cita
  #3  
Antiguo 11-11-2010
Avatar de BlueSteel
[BlueSteel] BlueSteel is offline
Miembro Premium
 
Registrado: may 2003
Ubicación: Concepción - Chile
Posts: 2.310
Poder: 24
BlueSteel Va por buen camino
Cita:
Empezado por movorack Ver Mensaje
Hola BlueSteel

Intenta cambiando el SQL que estás enviando. tal cual lo estás enviando, el parametro se llamaria 'max' no 'sFol'.
Hola Movorack

Ya lo realice.. pero igual me da el error: 'AQ_Select: Field 'max' not found

lo realice de 2 formas distintas...
Código SQL [-]
Datos.AQ_Select.SQL.Add('Select Max(Tar_CodigoBarra)+1 as max From Tarjeta');


y

Código SQL [-]
Datos.AQ_Select.SQL.Add('Select Max(Tar_CodigoBarra)+1 From Tarjeta');


pero no funco....

Salu2
__________________
BlueSteel

Última edición por BlueSteel fecha: 11-11-2010 a las 19:43:50.
Responder Con Cita
  #4  
Antiguo 11-11-2010
Avatar de marcoszorrilla
marcoszorrilla marcoszorrilla is offline
Capo
 
Registrado: may 2003
Ubicación: Cantabria - España
Posts: 11.221
Poder: 10
marcoszorrilla Va por buen camino
Código Delphi [-]
sFol.Text := Datos.AQ_Select.Fields[0].AsString;

Intenta algo asi, no tengo Delphi a mano para hacer la prueba.

Un Saludo.
__________________
Guía de Estilo de los Foros
Cita:
- Ça c'est la caisse. Le mouton que tu veux est dedans.
Responder Con Cita
  #5  
Antiguo 11-11-2010
Avatar de BlueSteel
[BlueSteel] BlueSteel is offline
Miembro Premium
 
Registrado: may 2003
Ubicación: Concepción - Chile
Posts: 2.310
Poder: 24
BlueSteel Va por buen camino
Hola

Gracias.. ya me funciono... utilice lo sgte:

Código Delphi [-]
Datos.AQ_Select.Close;
Datos.AQ_Select.SQL.Clear;
Datos.AQ_Select.SQL.Add('Select Max(Tar_CodigoBarra)+1 From Tarjeta');
Datos.AQ_Select.Open;
sFol.Text := IntToStr(Datos.AQ_Select.Fields[0].AsInteger);

Salu2
__________________
BlueSteel
Responder Con Cita
  #6  
Antiguo 12-11-2010
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola BlueSteel.

Primero que nada, me alegro que hayas resuelto el problema.
Después, a modo de aclaración, voy a reivindicar el código de movorack, ya que es correcto.

La primera prueba no funcionó por que el nombre de la función agregada Max es igual al nombre del campo que va a contener su resultado: max.
Código Delphi [-]
Datos.AQ_Select.SQL.Add('Select Max(Tar_CodigoBarra)+1 as max From Tarjeta');

Y en la segunda falta la sentencia AS y el nombre del campo que recibe el resultado:
Código Delphi [-]
Datos.AQ_Select.SQL.Add('Select Max(Tar_CodigoBarra)+1 AS NOMBRE  From Tarjeta');


Saludos.

Última edición por ecfisa fecha: 12-11-2010 a las 04:31:33.
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Obtener el resultado de una consulta devric SQL 3 02-03-2010 06:01:17
Como obtener valores de una consulta Alexandro SQL 5 26-02-2009 22:21:22
Obtener datos consulta SQL adrall SQL 1 04-03-2008 19:16:42
Obtener la consulta sql que se ejecuta pborges36 Conexión con bases de datos 12 22-02-2007 20:56:17
Obtener el resultado de una consulta zurech MySQL 3 13-07-2005 11:33:11


La franja horaria es GMT +2. Ahora son las 09:32:41.


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
Copyright 1996-2007 Club Delphi