Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Problema con Query y tabla (https://www.clubdelphi.com/foros/showthread.php?t=61104)

einarcito 26-10-2008 04:19:21

Problema con Query y tabla
 
hola chicos tengo un problemita, estoy con un sistema de ventas el cual necesito hacer una suma de los subtotales de todas las lineas de ventas y el resultado colocarlo en un Tedit. Lo q estoy haciendo es esto. Nose si tiene algun sentido para uds.

Código Delphi [-]
with dm.qpagar do begin
      active:=false;
      sql.Clear;
      sql.Add('SELECT sum(subtotal) as total from ventaActual ');
      active:=true;
      qpagar:= fieldbyname('total').asVariant;
      editTotal.Text:=dm.qpagar;
los errores q me da son:
[Error] UnitVentas.pas(227): Undeclared identifier: 'qpagar'
[Error] UnitVentas.pas(228): Incompatible types: 'String' and 'TQuery'
[Fatal Error] sistema.dpr(25): Could not compile used unit 'UnitVentas.pas'

fundamentalmente el compilador me marca en esta linea

qpagar:= fieldbyname('total').asVariant;


Gracias.

marcoszorrilla 26-10-2008 09:23:59

Código Delphi [-]
with dm.qpagar do begin
      active:=false;
      sql.Clear;
      sql.Add('SELECT sum(subtotal) as total from ventaActual ');
      active:=true;
      editTotal.Text:=dm.qApagar.Fields[0].AsString;


Un Saludo.

Neftali [Germán.Estévez] 26-10-2008 09:31:58

Iba a comentarte que con casi 70 mensajes ya deberías haber aprendido a usar TAGS, aunque veo que otra persona (marcos) ya ha hecho el trabajo.

En cuanto al error, pues el primero se debe a que en varios sitios haces referencia a qpagar sin poner delante dm. como has hecho en la primera línea.

Personalmente nunca me ha gustado el with, porque a veces lía más las cosas y da más problemas que las ventajas que ofrece. Este es un ejemplo de ello.

Mi opinión es que elimines el with y pruebes el código sin él.

El segun error es por esta línea:

Código Delphi [-]
editTotal.Text:=dm.qpagar;
en la que estás intentando asignar a un string (izquierda) una cosa que es un TQuery/TTable (derecha).

EDITO: Veo que Marcos ya ha completado el mensaje.
por faor utiliza TAGs.

einarcito 26-10-2008 14:07:44

problema con query y tabla
 
gracias chicos me funciono, no se cual es el tag para la sintaxis de delphi :S

enecumene 26-10-2008 14:12:43

Cita:

Empezado por einarcito (Mensaje 322407)
gracias chicos me funciono, no se cual es el tag para la sintaxis de delphi :S

El TAG de Delphi es el que está al lado del SQL ese que parece un monumento romano ;). Además lo puedes poner manual de la siguiente forma:

[ DELPHI] codigos [/DELPHI ]

Nota: no puede haber espacios entre los corchetes, lo hice así para que vieras como ejemplo.

Saludos.

einarcito 26-10-2008 14:16:56

Ok gracias. ahora una cosita
Código Delphi [-]
dm.query.fields[0].asstring
el fields[0].asstring seria lo mismo q un fieldbyname.AsVariant? cual es la diferencia porq la cual no anda mi programa?

enecumene 26-10-2008 14:21:24

Cita:

Empezado por einarcito (Mensaje 322410)
Ok gracias. ahora una cosita
Código Delphi [-]dm.query.fields[0].asstring

el fields[0].asstring seria lo mismo q un fieldbyname.AsVariant? cual es la diferencia porq la cual no anda mi programa?

Fields[0].Asstring llama al campo a través del índice de los campos persistentes del Dataset, y FieldByName('campo').asstring llama al campo por su nombre. FieldByName.AsVariant no estás llamando ningún campo por ende no te funciona.

Saludos.

einarcito 26-10-2008 14:23:44

muy biennn mas que claro muchas gracias hasta la proxima

Neftali [Germán.Estévez] 26-10-2008 17:53:54

Cita:

Empezado por einarcito (Mensaje 322407)
gracias chicos me funciono, no se cual es el tag para la sintaxis de delphi :S

Poner TAG's en los códigos Delphi

No era tan difícil :(:(:(


La franja horaria es GMT +2. Ahora son las 05:36:50.

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