Patch level :
Files correlati : Ricompilazione Demo : [ ] Commento : Casini su budget by Enrichetta: segnalazione 1 ok! (valori che calano) git-svn-id: svn://10.65.10.50/branches/R_10_00@20856 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
parent
b72f5caffb
commit
5462140c04
@ -13,6 +13,8 @@
|
||||
#include "../ca/rmovana.h"
|
||||
#include "../ca/saldana.h"
|
||||
|
||||
#include "../cg/cglib03.h"
|
||||
|
||||
#include "../ve/velib.h"
|
||||
|
||||
#include "ps1001.h"
|
||||
@ -1354,6 +1356,11 @@ void TVariazione_budget_mask::calcola_impegnato(const TString& cms, const bool i
|
||||
continue;
|
||||
|
||||
const char tipocf = doc.tipocf();
|
||||
|
||||
const TString& codcaus = doc.tipo().causale();
|
||||
const int caus_anno = doc.get_int(DOC_ANNO);
|
||||
TCausale caus(codcaus, caus_anno);
|
||||
const TipoIVA tiva = caus.iva();
|
||||
//il documento virtuale è adesso un ordine non evaso
|
||||
//tarocchiamo il documento prendendo solo le righe non evase (almeno una ci sarà, perchè la query del recordset..
|
||||
//..richiedeva che la rigadoc fosse non evasa, quindi quella riga nel doc esiste, magari in compagnia di altre)
|
||||
@ -1368,10 +1375,25 @@ void TVariazione_budget_mask::calcola_impegnato(const TString& cms, const bool i
|
||||
if (_cms_supporto.get_pos(rigadoc_cms) >= 0) //deve avere commessa valida!!!
|
||||
{
|
||||
//è inutile fare un sacco di conti su una riga senza valore!
|
||||
const real valore = rigadoc.importo(true, true, AUTO_DECIMALS);
|
||||
real valore = rigadoc.importo(true, false);
|
||||
if (valore.is_zero())
|
||||
continue;
|
||||
|
||||
//attenzione alle indetraibilità IVA!!!! (Enrichetta 14/09/2010)
|
||||
//va sommata all'importo la % dovuta all'iva
|
||||
if (tiva != iva_vendite)
|
||||
{
|
||||
const TString4 tipodet = rigadoc.get(RDOC_TIPODET);
|
||||
int td;
|
||||
const real pind = indetraibile_al(tipodet, caus, caus_anno, td);
|
||||
if (pind > ZERO)
|
||||
{
|
||||
const real ivaind = (rigadoc.imposta(false) * pind) / CENTO;
|
||||
valore += ivaind;
|
||||
valore.round(2);
|
||||
}
|
||||
}
|
||||
|
||||
TString16 rigadoc_conto, rigadoc_fase;
|
||||
TString80 rigadoc_cdc;
|
||||
|
||||
@ -1392,8 +1414,6 @@ void TVariazione_budget_mask::calcola_impegnato(const TString& cms, const bool i
|
||||
if (find_conto_rigadoc(rigadoc, tipocf, zio))
|
||||
{
|
||||
rigadoc_conto.format("%03d%03d%06ld", zio.gruppo(), zio.conto(), zio.sottoconto());
|
||||
if (rigadoc_conto == "004001000073")
|
||||
int cazzone = 1;
|
||||
//cdc
|
||||
rigadoc_cdc = rigadoc.codice_costo();
|
||||
//eventuale fase
|
||||
@ -1407,6 +1427,10 @@ void TVariazione_budget_mask::calcola_impegnato(const TString& cms, const bool i
|
||||
if (index >= 0)
|
||||
{
|
||||
TToken_string& row = sf_righe.row(index);
|
||||
#ifdef DBG
|
||||
if (rigadoc_conto == "004001000053")
|
||||
int cazzone = 1;
|
||||
#endif
|
||||
real row_valore_impegnato = row.get(_pos_ipg);
|
||||
row_valore_impegnato += valore;
|
||||
row.add(row_valore_impegnato.string(), _pos_ipg);
|
||||
|
Loading…
x
Reference in New Issue
Block a user