2001-05-02 13:40:49 +00:00
|
|
|
#include <currency.h>
|
1998-05-04 10:08:01 +00:00
|
|
|
|
1995-12-12 13:37:30 +00:00
|
|
|
#include "sc2102.h"
|
|
|
|
|
|
|
|
///////////////////////////////////////////////////////////
|
|
|
|
// Totalizzatore
|
|
|
|
///////////////////////////////////////////////////////////
|
|
|
|
|
|
|
|
TTotal::TTotal(const TImporto& imp, const real& sca,
|
2002-09-13 14:06:05 +00:00
|
|
|
const real& esp, const real& eur)
|
|
|
|
: _importo(imp), _scaduto(sca), _esposto(esp), _importo_euro(eur)
|
1995-12-12 13:37:30 +00:00
|
|
|
{ }
|
|
|
|
|
1996-01-18 18:03:29 +00:00
|
|
|
TTotal::TTotal(const TImporto& uns)
|
|
|
|
: _unassigned(uns)
|
|
|
|
{ }
|
|
|
|
|
1995-12-12 13:37:30 +00:00
|
|
|
void TTotalizer::add(const TImporto& imp, const real& sca,
|
|
|
|
const real& esp, const real& lit, const TString& val)
|
|
|
|
{
|
|
|
|
TString16 codice(val);
|
2001-05-02 13:40:49 +00:00
|
|
|
if (codice == TCurrency::get_firm_val())
|
1995-12-12 13:37:30 +00:00
|
|
|
codice.cut(0);
|
|
|
|
|
|
|
|
TObject* obj = objptr(codice);
|
|
|
|
if (obj != NULL)
|
|
|
|
{
|
|
|
|
TTotal& tot = (TTotal&)*obj;
|
|
|
|
tot.importo() += imp;
|
|
|
|
tot.scaduto() += sca;
|
|
|
|
tot.esposto() += esp;
|
2002-09-13 14:06:05 +00:00
|
|
|
tot.importo_euro() += lit;
|
1995-12-12 13:37:30 +00:00
|
|
|
}
|
|
|
|
else
|
|
|
|
{
|
|
|
|
obj = new TTotal(imp, sca, esp, lit);
|
|
|
|
TAssoc_array::add(codice, obj);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
1996-01-18 18:03:29 +00:00
|
|
|
void TTotalizer::add(const TImporto& uns, const TString& val)
|
|
|
|
{
|
|
|
|
TString16 codice(val);
|
2001-05-02 13:40:49 +00:00
|
|
|
if (codice == TCurrency::get_firm_val())
|
1996-01-18 18:03:29 +00:00
|
|
|
codice.cut(0);
|
|
|
|
|
|
|
|
TObject* obj = objptr(codice);
|
|
|
|
if (obj != NULL)
|
|
|
|
{
|
|
|
|
TTotal& tot = (TTotal&)*obj;
|
|
|
|
tot.unassigned() += uns;
|
|
|
|
}
|
|
|
|
else
|
|
|
|
{
|
|
|
|
obj = new TTotal(uns);
|
|
|
|
TAssoc_array::add(codice, obj);
|
|
|
|
}
|
|
|
|
}
|