Patch level : 12.0 1064
Files correlati : li0.exe li0300a.msk ve0.exe ve6.exe Commento : Aggiunto un flag per stampare l'importo utilizzato per ogni dichiarazione di intenti sulle fatture.
This commit is contained in:
parent
36571c8cbc
commit
75e1142868
@ -121,21 +121,7 @@ void sppr_calc(const TRectype & rec, const TString & valuta_doc, const real & ca
|
||||
if (!same_values(sppr_valuta, valuta_doc))
|
||||
{
|
||||
const bool prezzo_un = rec.get_char("S6") == 'Q';
|
||||
/* Non capisco bene il cambio in gioco ...
|
||||
if (prezzo_un)
|
||||
{
|
||||
TPrice val(prezzo, sppr_valuta);
|
||||
val.change_value(valuta_doc, cambio);
|
||||
prezzo = val.get_num();
|
||||
}
|
||||
else
|
||||
{
|
||||
TCurrency val(prezzo, sppr_valuta);
|
||||
val.change_value(valuta_doc, cambio);
|
||||
prezzo = val.get_num();
|
||||
}
|
||||
*/
|
||||
// ... ma mi adeguo
|
||||
|
||||
TCurrency val(prezzo, sppr_valuta, ZERO, prezzo_un);
|
||||
val.change_value(valuta_doc, cambio);
|
||||
prezzo = val.get_num();
|
||||
@ -957,14 +943,10 @@ void TDocumento::set_riga_sconto()
|
||||
const TString80 sconto(get(DOC_SCONTOPERC));
|
||||
|
||||
if (!is_real_discount(sconto))
|
||||
{
|
||||
if(_sconto != NULL)
|
||||
delete _sconto;
|
||||
_sconto = NULL;
|
||||
}
|
||||
safe_delete(_sconto);
|
||||
else
|
||||
{
|
||||
if (_sconto == NULL)
|
||||
if (_sconto == nullptr)
|
||||
{
|
||||
static TString4 _tipo_riga_sc;
|
||||
if (_tipo_riga_sc.empty())
|
||||
@ -1081,7 +1063,7 @@ void TDocumento::set_riga_esenzione()
|
||||
_des_esenz.insert(" ");
|
||||
_des_esenz.insert("Fattura non imponibile");
|
||||
}
|
||||
if (_esenzione == NULL)
|
||||
if (_esenzione == nullptr)
|
||||
_esenzione = new TRiga_documento(this, _tipo_riga_es);
|
||||
|
||||
TString d = _des_esenz;
|
||||
@ -1096,11 +1078,13 @@ void TDocumento::set_riga_esenzione()
|
||||
|
||||
if (utilizzo != ZERO)
|
||||
{
|
||||
|
||||
TToken_string key(plaf.get(_planno)); key.add(plaf.get(_plnumprot));
|
||||
const TRectype & rec_plaf = cache().get(LF_LETINT, key);
|
||||
|
||||
d << TR("N. di protocollo di invio: ") << rec_plaf.get(LETINT_PROTINTF) << TR("-") << rec_plaf.get(LETINT_PROTINTS) << " del " << rec_plaf.get(LETINT_VSDATA) << "\n";
|
||||
d << TR("N. di protocollo di invio: ") << rec_plaf.get(LETINT_PROTINTF) << TR("-") << rec_plaf.get(LETINT_PROTINTS) << " del " << rec_plaf.get(LETINT_VSDATA);
|
||||
if (ini_get_bool(CONFIG_DITTA, "li", "ADDUTILIZZATO"))
|
||||
d << TR(" per € ") << utilizzo.stringa(0, decimals());
|
||||
d << "\n";
|
||||
}
|
||||
}
|
||||
_esenzione->set_descr(d);
|
||||
@ -2804,16 +2788,35 @@ TCli_for& TDocumento::clifor(bool force_reload) const
|
||||
const real TDocumento::importo_plafond(bool diff) const
|
||||
{
|
||||
real importo_plafond;
|
||||
real perc_sconto;
|
||||
real importo_sconto;
|
||||
|
||||
FOR_EACH_SELF_PHYSICAL_RDOC( r, rdoc)
|
||||
FOR_EACH_SELF_RDOC( r, rdoc)
|
||||
// Se l'iva del documento è diversa non mi interessa
|
||||
if (!rdoc->is_descrizione() && !rdoc->is_descrizione())
|
||||
{
|
||||
const TString & codiva = rdoc->iva().codice();
|
||||
const TString & codiva = rdoc->iva().codice();
|
||||
|
||||
if (codiva.full() && check_iva_plafond(codiva))
|
||||
importo_plafond += rdoc->imponibile();
|
||||
if (rdoc->is_sconto())
|
||||
{
|
||||
if (rdoc->is_sconto_perc())
|
||||
perc_sconto += rdoc->get_real(RDOC_SCONTO);
|
||||
else
|
||||
importo_sconto += rdoc->importo(true, false);
|
||||
}
|
||||
else
|
||||
{
|
||||
if (codiva.full() && check_iva_plafond(codiva))
|
||||
importo_plafond += rdoc->imponibile();
|
||||
}
|
||||
}
|
||||
if (importo_sconto != ZERO)
|
||||
perc_sconto += CENTO * (-importo_sconto / imponibile());
|
||||
if (perc_sconto != ZERO)
|
||||
{
|
||||
importo_plafond -= importo_plafond * perc_sconto / CENTO;
|
||||
importo_plafond.round(decimals());
|
||||
}
|
||||
if (is_nota_credito())
|
||||
importo_plafond = -importo_plafond;
|
||||
if (diff)
|
||||
|
Loading…
x
Reference in New Issue
Block a user