Patch level : 10.0 patch 816
Files correlati : ca2.exe ve0.exe ve6.exe Ricompilazione Demo : [ ] Commento Aggiunti ai saldi di analitica i campi dei saldi inidiretti per potre fare report su questi git-svn-id: svn://10.65.10.50/branches/R_10_00@20982 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
parent
3026c11ed1
commit
b61bf06ae6
@ -1783,6 +1783,19 @@ void TAnal_mov::saldo_set_reset(const TRectype& row, bool reset)
|
||||
*imp -= curr_imp;
|
||||
else
|
||||
*imp += curr_imp;
|
||||
if (ca_ori_present(row))
|
||||
{
|
||||
TImporto* impind = (TImporto*)_saldind.objptr(key);
|
||||
if (impind == NULL)
|
||||
{
|
||||
impind = new TImporto;
|
||||
_saldind.add(key, impind);
|
||||
}
|
||||
if (reset)
|
||||
*impind -= curr_imp;
|
||||
else
|
||||
*impind += curr_imp;
|
||||
}
|
||||
}
|
||||
}
|
||||
else //saldo in un solo anno (caso standard)
|
||||
@ -1797,6 +1810,19 @@ void TAnal_mov::saldo_set_reset(const TRectype& row, bool reset)
|
||||
*imp -= imp_row;
|
||||
else
|
||||
*imp += imp_row;
|
||||
if (ca_ori_present(row))
|
||||
{
|
||||
TImporto* impind = (TImporto*)_saldind.objptr(key);
|
||||
if (impind == NULL)
|
||||
{
|
||||
impind = new TImporto;
|
||||
_saldind.add(key, impind);
|
||||
}
|
||||
if (reset)
|
||||
*impind -= imp_row;
|
||||
else
|
||||
*impind += imp_row;
|
||||
}
|
||||
|
||||
imp->valore().round(dec);
|
||||
}
|
||||
@ -1805,7 +1831,10 @@ void TAnal_mov::saldo_set_reset(const TRectype& row, bool reset)
|
||||
void TAnal_mov::load_saldi(bool reset)
|
||||
{
|
||||
if (reset)
|
||||
{
|
||||
_saldi.destroy();
|
||||
_saldind.destroy();
|
||||
}
|
||||
|
||||
const TRecord_array& a = body(LF_RMOVANA);
|
||||
for (int i = a.last_row(); i > 0; i--)
|
||||
@ -1896,6 +1925,26 @@ bool TAnal_mov::save_saldi(const int annoes)
|
||||
|
||||
saldi.put(fld_sez, saldo.sezione());
|
||||
saldi.put(fld_val, saldo.valore());
|
||||
|
||||
const TImporto * ind = (const TImporto*) _saldind.objptr(key);
|
||||
|
||||
if (ind != NULL)
|
||||
{
|
||||
const TImporto& impind = *(const TImporto*)ind;
|
||||
switch (tipo)
|
||||
{
|
||||
case 'P': fld_sez = SALDANA_SEZIONEIP; fld_val = SALDANA_SALDOIP; break;
|
||||
case 'V': fld_sez = SALDANA_SEZIONEIV; fld_val = SALDANA_SALDOIV; break;
|
||||
default : fld_sez = SALDANA_SEZIONEI; fld_val = SALDANA_SALDOI; break;
|
||||
}
|
||||
TImporto saldoind(saldi.get_char(fld_sez), saldi.get_real(fld_val));
|
||||
|
||||
saldoind += impind;
|
||||
saldoind.normalize();
|
||||
|
||||
saldi.put(fld_sez, saldoind.sezione());
|
||||
saldi.put(fld_val, saldoind.valore());
|
||||
}
|
||||
err = saldi.rewrite();
|
||||
}
|
||||
|
||||
|
@ -140,6 +140,7 @@ protected:
|
||||
class TAnal_mov : public TMultiple_rectype
|
||||
{
|
||||
TAssoc_array _saldi;
|
||||
TAssoc_array _saldind;
|
||||
|
||||
protected:
|
||||
void saldo_set_reset(const TRectype& row, bool reset);
|
||||
|
@ -1,3 +1,3 @@
|
||||
151
|
||||
0
|
||||
$saldana|0|0|132|0|Saldi contabilita' analitica|||
|
||||
$saldana|0|0|189|0|Saldi contabilita' analitica|||
|
||||
|
14
ca/f151.trr
14
ca/f151.trr
@ -1,5 +1,5 @@
|
||||
151
|
||||
11
|
||||
17
|
||||
ANNO|9|4|0|Codice esercizio
|
||||
COSTO|1|20|0|Centro Di costo
|
||||
COMMESSA|1|20|0|Commessa
|
||||
@ -9,8 +9,14 @@ SEZIONE|7|1|0|Sezione (Normale)
|
||||
SALDO|4|18|3|Saldo (Normale)
|
||||
SEZIONEP|7|1|0|Sezione (Preventivo)
|
||||
SALDOP|4|18|3|Saldo (Preventivo)
|
||||
SEZIONEV|7|1|0|Sezione (Variazione preventivo)
|
||||
SALDOV|4|18|3|Saldo (Variazione preventivo)
|
||||
SEZIONEV|7|1|0|Sezione (Variazione Preventivo)
|
||||
SALDOV|4|18|3|Saldo (Variazione Preventivo)
|
||||
SEZIONEI|7|1|0|Sezione Indiretto (Normale)
|
||||
SALDOI|4|18|3|Saldo Indiretto (Normale)
|
||||
SEZIONEIV|7|1|0|Sezione Indiretto (Preventivo)
|
||||
SALDOIV|4|18|3|Saldo Indiretto (Preventivo)
|
||||
SEZIONEIP|7|1|0|Sezione Indiretto (Variazione Preventivo)
|
||||
SALDOIP|4|18|3|Saldo Indiretto (Variazione Preventivo)
|
||||
2
|
||||
ANNO+CONTO+COSTO+COMMESSA+FASE|
|
||||
ANNO+CONTO+COSTO+COMMESSA+FASE|
|
||||
CONTO+ANNO+COSTO+COMMESSA+FASE|
|
||||
|
@ -13,5 +13,11 @@
|
||||
#define SALDANA_SALDOP "SALDOP"
|
||||
#define SALDANA_SEZIONEV "SEZIONEV"
|
||||
#define SALDANA_SALDOV "SALDOV"
|
||||
#define SALDANA_SEZIONEI "SEZIONEI"
|
||||
#define SALDANA_SALDOI "SALDOI"
|
||||
#define SALDANA_SEZIONEIP "SEZIONEIP"
|
||||
#define SALDANA_SALDOIP "SALDOIP"
|
||||
#define SALDANA_SEZIONEIV "SEZIONEIV"
|
||||
#define SALDANA_SALDOIV "SALDOIV"
|
||||
|
||||
#endif
|
Loading…
x
Reference in New Issue
Block a user