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 22-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, ¿te resultó? ¿Conseguiste otro código?

Saludos.
__________________

Mi BLOG - ¡Joder, leanse la guia de estilo!
Las Palabras son enanas, los ejemplos gigantes.
Responder Con Cita
  #2  
Antiguo 23-10-2008
Pollo2004 Pollo2004 is offline
Miembro
 
Registrado: sep 2006
Posts: 64
Poder: 20
Pollo2004 Va por buen camino
hola enecumene, no he logrado compilarlo, te paso como lo deje a tu codigo y te indico donde me sale el error
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;
TDeta.TDetaSinIva.AsCurrency := Suma; (aca tengo el error al compilar,TDetaSinIva es un campo calculado)
end;


Me larga un error diciendo q no esta declarado el identidicador TDetaSinIva.

mañana lo voy a ver con un poco mas tiempo, para ver si le encuentro la solucion, cualquier sugerencia es bienvenida!
saludos! Nos vemos!
Responder Con Cita
  #3  
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
  #4  
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
  #5  
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
  #6  
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
  #7  
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
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 10:05: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
Copyright 1996-2007 Club Delphi