Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   No puedo obtener el ultimo valor de un campo en una variable! (https://www.clubdelphi.com/foros/showthread.php?t=75743)

ezequiel913 16-09-2011 01:16:13

No puedo obtener el ultimo valor de un campo en una variable!
 
Hola gente!!!

bueno el problema que tengo es el siguiente, tengo que poder obtener el ultimo valor de un campo de una tabla situada en una base de datos de SQL Server 2000. Por que quiero hacer esto? - bueno necesito obtener ese valor para poder sumarle uno mas y tirarlo en un Edit sin que el usuario lo ingrese, osea el valor de ese Edit se lo doy yo con la sumatoria en uno mas del ultimo valor del campo.

por ejemplo:

si el ultimo valor del campo de la tabla que quiero obtener es 5 yo le tengo que sumar 1 y mostrar en el edit el 6.

el codigo que tengo en Delphi 7 es el siguiente:
Código Delphi [-]
var N, P: Integer;

     N:= 0;
     P:= 1;
               
           
           Query1.SQL.Clear;
           Query1.SQL.Add('Select Max(Numero) From OrdenCompra');
           Query1.Open;
           N:= Query1.FieldByName('Numero').AsInteger;

           Numero.Text:= Num + IntToStr(P);

este es el codigo que tengo para obtener el ultimo campo de la columna NUMERO, el tema es que me tira error, me dice que el FIELD 'NUMERO' NO FOUND.

asique ya nose que mas hacer.

bueno eso seria todo, si no se entiende lo que quiero avísenme.

saludos.!!!

Caral 16-09-2011 01:26:49

Hola
El error dice que no tienes por que no encuentra ningún campo que se llame Numero.
Por otro lado:

Código Delphi [-]
 Query1.SQL.Clear;
 Query1.SQL.Add('Select Max(Numero) From OrdenCompra');
 Query1.Open;
 Numero.Text:= IntToStr(Query1.Fields[0].AsInteger+1);

Para que variables ?.
Saludos

Cañones 16-09-2011 01:31:26

Porque el campo 'numero' no existe, por eso no podes hacer referencia.
La sentencia sql la agregas en la propiedad sql del query.
Sobre el query1 haces doble click y en el editor de campos haces click derecho y le das a add all fields.
Hay otras formas, pero esta es la que se y la que uso.

ezequiel913 16-09-2011 01:32:10

Cita:

Empezado por Caral (Mensaje 412291)
Hola
El error dice que no tienes por que no encuentra ningún campo que se llame Numero.
Por otro lado:

Código Delphi [-]
 Query1.SQL.Clear;
 Query1.SQL.Add('Select Max(Numero) From OrdenCompra');
 Query1.Open;
 Numero.Text:= IntToStr(Query1.Fields[0].AsInteger+1);

Para que variables ?.
Saludos


gracias Caral. me anduvo lo que me dijiste, muchas gracias.

Caral 16-09-2011 01:37:21

Hola
Que bueno que te sirviera.
También se puede hacer con variables, pero servirían si en algún momento quieres cambiar la suma de 1 a mas.
Saludos

defcon1_es 16-09-2011 18:02:19

Una solución alternativa a la de caral:
Código Delphi [-]
Query1.SQL.Add('Select Max(Numero) as NUMERO From OrdenCompra');


La franja horaria es GMT +2. Ahora son las 04:43:27.

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