Club Delphi  
    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

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 20-03-2019
Avatar de oscarac
[oscarac] oscarac is offline
Miembro Premium
 
Registrado: sep 2006
Ubicación: Lima - Perú
Posts: 2.010
Poder: 20
oscarac Va por buen camino
Cambiar DataSource Dinamicamente

buenos dias
tengo una rutina de suma de varios registros de un ClientDataSet

Código Delphi [-]
procedure TfrmIngresoComprobantesVarios.Sumar;
var _Position :TBookmark;
begin
 _position := CdsDetalle.GetBookmark;
  _TotalDebeMN := 0;
  _TotalHaberMN := 0;
  _TotalDebeME := 0;
  _TotalHaberME :=0;
  CdsDetalle.First;
  while Not CdsDetalle.Eof do
  begin
    if _en(CdsDetalleDh.AsString, '1DI+') then
    begin
      _TotalDebeMN := _TotalDebeMN + CdsDetallen_imp.AsFloat;
      _TotalDebeME := _TotalDebeME + CdsDetalleu_imp.AsFloat;
    end
    Else
    begin
      _TotalHaberMN := _TotalHaberMN + CdsDetallen_imp.AsFloat;
      _TotalHaberME := _TotalHaberME + CdsDetalleu_imp.AsFloat;
    end;
    CdsDetalle.Next;
  end;
  CdsDetalle.Bookmark := _Position;
end;

esto quiero llevarlo a una libreria para que pueda sumar los registros de diferentes ClientDataSet
como asigno dinamicamente el dataset a sumar?

me echan una mano?
__________________
Dulce Regalo que Satanas manda para mi.....
Responder Con Cita
  #2  
Antiguo 20-03-2019
Avatar de oscarac
[oscarac] oscarac is offline
Miembro Premium
 
Registrado: sep 2006
Ubicación: Lima - Perú
Posts: 2.010
Poder: 20
oscarac Va por buen camino
Lo Solucione de esta manera, por si a alguien le sucede lo mismo

Código Delphi [-]
Procedure _Cuadrar (Alias :TDataSource);
Var tn_hb, tn_db, tu_hb, tu_db : Double;
z_recno : TBookmark;
Data : TDataSet;
Begin
  Data := Alias.DataSet;
  tn_db := 0;
  tn_hb := 0;
  tu_db := 0;
  tu_hb := 0;

  z_recno := Data.GetBookmark;
  Data.First;
  while not Data.eof do
  begin
    if _En (Data.FieldByName('dh').AsString, '1Dd+') then
    begin
      tn_db := tn_db +  Data.FieldByName('n_imp').AsFloat;
      tu_db := tu_db +  Data.FieldByName('n_imp').AsFloat;
    end
    Else
    begin
      tn_hb := tn_hb +  Data.FieldByName('n_imp').AsFloat;
      tu_hb := tu_hb +  Data.FieldByName('n_imp').AsFloat;
    End;
    Data.Next;
  End;
__________________
Dulce Regalo que Satanas manda para mi.....
Responder Con Cita
  #3  
Antiguo 20-03-2019
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is online now
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.037
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Responder Con Cita
  #4  
Antiguo 20-03-2019
cloayza cloayza is offline
Miembro
 
Registrado: may 2003
Ubicación: San Pedro de la Paz, Chile
Posts: 913
Poder: 22
cloayza Tiene un aura espectacularcloayza Tiene un aura espectacular
Estimado Oscarac, si me lo permite, le presento esta otra opción que utilizo frecuentemente...

Opción 1:
Código Delphi [-]
{
_Cuadrar( Alias.DataSet );
}
Procedure _Cuadrar (Data:TDataset);
Var tn_hb, tn_db, tu_hb, tu_db : Double;
z_recno : TBookmark;
  {Data : TDataSet;}
Begin
    {Data := Alias.DataSet;}
....
End;

Opción 2
Código Delphi [-]
Procedure _Cuadrar (Data:TClientDataset);
Var tn_hb, tn_db, tu_hb, tu_db : Double;
z_recno : TBookmark;
 {Data : TDataSet;}
Begin
    {Data := Alias.DataSet;}
....
End;

Saludos cordiales
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
Crystal report, cambiar datasource rodno C++ Builder 0 22-11-2010 15:31:32
cambiar en tiempo de ejecución datasource de dbedits Galahad Varios 2 20-04-2009 19:08:23
cambiar datasource.dataset en tiempo de ejecución jzginez Conexión con bases de datos 2 30-11-2007 19:42:48
Cambiar iconos dinamicamente Diegoval Gráficos 1 25-06-2004 15:35:04
DataSource jzk Conexión con bases de datos 5 15-06-2004 08:56:00


La franja horaria es GMT +2. Ahora son las 15:16:44.


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