Files correlati : fp0 Commento : - Rifatto calcolo imponibile, adesso al posto di chiamare la funzione di TDocumento importo() chiama imponibile() - Tolti decimali di troppo, adesso vengono usati quelli impostati nella valuta
37 lines
1.1 KiB
C++
37 lines
1.1 KiB
C++
#include "fplib.h"
|
|
|
|
TFP_righe_custom& fp_righe_custom()
|
|
{
|
|
static TFP_righe_custom* fidel_custom = nullptr;
|
|
if(fidel_custom == nullptr)
|
|
{
|
|
fidel_custom = new TFP_righe_custom;
|
|
}
|
|
return *fidel_custom;
|
|
}
|
|
|
|
real TFPRiga_documento::prezzo(const bool scontato, const bool lordo, const int ndec) const
|
|
{
|
|
const TString& field_prezzo = fp_righe_custom().get_prezzo(tipo().codice(), doc().tipo().codice());
|
|
return field_prezzo.full() ? get_real(field_prezzo) : TRiga_documento::prezzo(scontato, lordo, ndec);
|
|
}
|
|
|
|
real TFPRiga_documento::imponibile(const bool lordo) const
|
|
{
|
|
const TString& field_importo = fp_righe_custom().get_imponibile(tipo().codice(), doc().tipo().codice());
|
|
return field_importo.full() ? get_real(field_importo) : TRiga_documento::imponibile(lordo);
|
|
}
|
|
|
|
real TFPRiga_documento::quantita() const
|
|
{
|
|
const TString& field_qta = fp_righe_custom().get_qta(tipo().codice(), doc().tipo().codice());
|
|
real qta = field_qta.full() ? get_real(field_qta) : TRiga_documento::quantita();
|
|
return qta.is_zero() ? UNO : qta;
|
|
}
|
|
|
|
TString& TFPRiga_documento::quantita_string() const
|
|
{
|
|
static TString qta_string;
|
|
qta_string.cut(0) << quantita().string();
|
|
return qta_string;
|
|
} |