Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Coloboración Paypal con ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 23-10-2008
Avatar de enecumene
[enecumene] enecumene is offline
Miembro de Oro
 
Registrado: may 2006
Ubicación: Santo Domingo, Rep. Dom.
Posts: 3.040
Poder: 24
enecumene Va por buen camino
Hola, Amigo no puedes mostrar un resultado en un campo calculado debes mostrarlo en un campo normal o en un edits, cuando tengas más tiempo estúdialo y verás que es un código muy sencillo .

Saludos.
__________________

Mi BLOG - ¡Joder, leanse la guia de estilo!
Las Palabras son enanas, los ejemplos gigantes.
Responder Con Cita
  #2  
Antiguo 23-10-2008
Avatar de jhonny
jhonny jhonny is offline
Jhonny Suárez
 
Registrado: may 2003
Ubicación: Colombia
Posts: 7.070
Poder: 32
jhonny Va camino a la famajhonny Va camino a la fama
Cita:
Empezado por enecumene Ver Mensaje
debes mostrarlo en un campo normal o en un edits...
O en un TAggregateField
__________________
Lecciones de mi Madre. Tema: modificación del comportamiento, "Pará de actuar como tu padre!"

http://www.purodelphi.com/
http://www.nosolodelphi.com/
Responder Con Cita
  #3  
Antiguo 28-10-2008
Pollo2004 Pollo2004 is offline
Miembro
 
Registrado: sep 2006
Posts: 64
Poder: 20
Pollo2004 Va por buen camino
Exclamation No me funciona la suma

Hola nuevamente, perdon por la demora....enecumene he logrado compilar tu idea, pero no me funciona, la verdad no se xq...
corregi mi error de esta manera, puse un label.caption:= currtostr(suma);

Bueno aca no me muestra nada.

Yo lo q me gustaria es recorrer el dbgrid y controlar desde ahi las filas q ingreso, pero no se como moverme x fila, si alguien lo sabe soy todo oido..

Por las dudas te paso mi form para q le hechen una miradita
Código Delphi [-]
unit Factura;
interface
uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, DB, StdCtrls, DBTables, Mask, DBCtrls, Grids, DBGrids, ExtCtrls,
  Buttons;
type
  TForm5 = class(TForm)
    Panel1: TPanel;
    Panel2: TPanel;
    Panel3: TPanel;
    DBGrid1: TDBGrid;
    DBText1: TDBText;
    DBText2: TDBText;
    DBText3: TDBText;
    DBText4: TDBText;
    DBLookupComboBox1: TDBLookupComboBox;
    DBText5: TDBText;
    DBEdit1: TDBEdit;
    DBText6: TDBText;
    DSCliente: TDataSource;
    TCliente: TTable;
    DSProd: TDataSource;
    TProd: TTable;
    DSFact: TDataSource;
    TFact: TTable;
    DSDeta: TDataSource;
    TDeta: TTable;
    Label1: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    TClienteIdCliente: TStringField;
    TClienteRazonSocial: TStringField;
    TClienteDireccion: TStringField;
    TClienteLocalidad: TStringField;
    TClienteCodigoPostal: TFloatField;
    TClienteTelefono: TFloatField;
    TClienteCuitCuil: TFloatField;
    TProdCodProducto: TStringField;
    TProdDetalle: TStringField;
    TProdCosto: TCurrencyField;
    TProdPrecioLista: TCurrencyField;
    TProdStock: TFloatField;
    TProdStockMin: TFloatField;
    TFactNumFact: TFloatField;
    TFactTipo: TStringField;
    TFactFecha: TDateField;
    TFactTotal: TCurrencyField;
    TFactIdCliente: TStringField;
    TDetaIditem: TAutoIncField;
    TDetaCodProducto: TStringField;
    TDetaCantidad: TFloatField;
    TDetaNumFactura: TFloatField;
    TDetaPrecioLista: TCurrencyField;
    TDetaDetalle: TStringField;
    TDetaTotal: TCurrencyField;
    SpeedButton1: TSpeedButton;
    BitBtn1: TBitBtn;
    TDetaPrecio: TCurrencyField;
    Label4: TLabel;
    Label5: TLabel;
    TFactSubTot: TCurrencyField;
    TDetaSinIva: TCurrencyField;
    Label6: TLabel;
    procedure FormActivate(Sender: TObject);
    procedure TDetaCalcFields(DataSet: TDataSet);
    procedure DBGrid1Enter(Sender: TObject);
    procedure SpeedButton1Click(Sender: TObject);
    procedure TDetaCantidadValidate(Sender: TField);
    procedure BitBtn1Click(Sender: TObject);
    procedure TDetaAfterDelete(DataSet: TDataSet);
 

  
  private
    { Private declarations }
  public
    { Public declarations }
  end;
var
  Form5: TForm5;
  NFact: integer;
implementation
{$R *.dfm}
procedure TForm5.FormActivate(Sender: TObject);
begin

  TFact.last;
  Tfact.edit;
  NFact:= TFactNumFact.asinteger;
  NFact:= NFact + 1;
  TFact.append;
  TFactFecha.AsDateTime:= now;
  TfactNumFact.AsInteger:= NFact;
end;
 
procedure TForm5.TDetaCalcFields(DataSet: TDataSet);
begin
  TDetaTotal.ascurrency:= TDetaCantidad.asinteger * TDetaPrecio.ascurrency;
end;
procedure TForm5.DBGrid1Enter(Sender: TObject);
begin
  if TFact.state in dseditmodes then
    TFact.post;
    TDeta.append;
end;
procedure TForm5.SpeedButton1Click(Sender: TObject);
begin
  TDeta.Append;
  TDeta.Post;
  if messagedlg ('LA FACTUA FUE CREADA CON EXITO', mtInformation, mbokCancel,0) = mrok
    then
      form5.close;
end;
 
procedure TForm5.TDetaCantidadValidate(Sender: TField);
begin
if TDetaCantidad.asinteger > TProdStock.asinteger then
    showmessage ('NO HAY SUFICIENTE STOCK PARA ESTE PEDIDO')
    else
      TProd.edit;
      TProdStock.AsInteger:= TProdStock.AsInteger - TDetaCantidad.asinteger;
       TProd.post;
end;
procedure TForm5.BitBtn1Click(Sender: TObject);
begin
  TFact.Cancel;
  TDeta.edit;
  TDeta.Prior;
  TDeta.Delete;
  Form5.Close;
end;
procedure TForm5.TDetaAfterDelete(DataSet: TDataSet);
var
  Suma: Double;
  Campo: TField;
Begin
     Suma:=0;
     Try
        With DsDeta Do Begin
             TDeta.DisableControls;
             Campo := TDetaTotal;
             TDeta.First;
             While Not EoF Do Begin
                   Suma := Suma + Campo.AsFloat;
                   Next;
             End;
        End;
     Finally
        TDeta.EnableControls;
     End;
     label6.caption := currtostr(Suma);
end;
 
 
end.

Gracias otra vez por el aguante y las pilas q le ponen!!!
Responder Con Cita
  #4  
Antiguo 28-10-2008
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 27
Caral Va por buen camino
Hola
La verdad es que he seguido el hilo y cada vez entiendo menos.
No se exactamente lo que se pretende, me da la impresión de que se quiere sumar los datos que hay en un campo que presenta un dbgrid, pero no entiendo por que el uso de un campo calculado.
Me pongo a pensar: Que pasa si no se quiere calcular todos los campos del dbgrid o si hay algún error y se quiere corregir?.
No se, no lo capto.
Saludos
__________________
Siempre Novato
Responder Con Cita
  #5  
Antiguo 28-10-2008
Pollo2004 Pollo2004 is offline
Miembro
 
Registrado: sep 2006
Posts: 64
Poder: 20
Pollo2004 Va por buen camino
Tratar de aclarar!!!

Cita:
Empezado por Caral Ver Mensaje
Hola
La verdad es que he seguido el hilo y cada vez entiendo menos.
No se exactamente lo que se pretende, me da la impresión de que se quiere sumar los datos que hay en un campo que presenta un dbgrid, pero no entiendo por que el uso de un campo calculado.
Me pongo a pensar: Que pasa si no se quiere calcular todos los campos del dbgrid o si hay algún error y se quiere corregir?.
No se, no lo capto.
Saludos
Mira lo q yo pretendo hacer es una factura y a medida q ingreso un producto, calculo precio * cantidad y me da el resultado de ese producto, ok? hasta ahi todo claro, el tema es cuando ingreso otro producto tengo q hacer lo mismo, pero a su vez tengo q acumular un total general de la factura, q viene a ser todos los resultados de precio * cantidad de todos los productos q vendi.

Espero aclarar tu panorama y q puedas aportar tus ideas. gracias caral!
Responder Con Cita
  #6  
Antiguo 28-10-2008
Avatar de enecumene
[enecumene] enecumene is offline
Miembro de Oro
 
Registrado: may 2006
Ubicación: Santo Domingo, Rep. Dom.
Posts: 3.040
Poder: 24
enecumene Va por buen camino
Hola, el código que te propuse hace exactamente eso que quieres hacer, lo uso y me funciona perfecto, te aconsejo revises bien donde está fallando.

Saludos.
__________________

Mi BLOG - ¡Joder, leanse la guia de estilo!
Las Palabras son enanas, los ejemplos gigantes.
Responder Con Cita
  #7  
Antiguo 29-10-2008
Pollo2004 Pollo2004 is offline
Miembro
 
Registrado: sep 2006
Posts: 64
Poder: 20
Pollo2004 Va por buen camino
I/O error 6

Cita:
Empezado por enecumene Ver Mensaje
Hola, el código que te propuse hace exactamente eso que quieres hacer, lo uso y me funciona perfecto, te aconsejo revises bien donde está fallando.

Saludos.
Estoy trantando de seguir paso a paso el codigo y me entro una duda con respecto a la sentencia WITH, funciona como un IF? o es de la ecepcion?
el disablecontrols coloca la tabla en q estado? despues el resto lo entiendo.

otra duda q me entro mirando detenidamente el codigo es el soguiente!
Table1.first, lo coloca en el inicio de la tabla, esto es correcto?
Entonces me pregunto, me sumaria todos los registros, viejos, nuevos de otras facturas completamentes todos?, o al existir una integridad referencial fijo un dominio q solamente me sume los q cargo en ultimo para ese num de factura?
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

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
Hacer que una columna de un DbGrid aparezca distinta según valor Aprendiendo OOP 11 30-11-2018 14:47:20
suma de una columna del Report megaredoxk Impresión 3 04-12-2007 14:05:11
suma de una columna en mysql coletaun MySQL 5 09-01-2006 14:29:38
Suma de elementos de una columna Mathom SQL 4 15-12-2005 18:49:24
Suma de Datos de Columna en paradox gersongelabert Tablas planas 2 14-08-2005 06:20:37


La franja horaria es GMT +2. Ahora son las 07:46:10.


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