Patch level : 10.0
Files correlati : ve0.exe Ricompilazione Demo : [ ] Commento : Tolta generazione file di debug conai git-svn-id: svn://10.65.10.50/trunk@19833 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
parent
c6ed5a8d50
commit
b9c8acabc4
105
ve/velib03.cpp
105
ve/velib03.cpp
@ -2737,26 +2737,11 @@ void TDocumento::update_spese_aut(TString_array & spese_aut, bool preserve_old,
|
||||
real TDocumento::calc_conai_qta(TCONAI_class type)
|
||||
{
|
||||
real qta;
|
||||
|
||||
if (type == CONAI_CARTA)
|
||||
{
|
||||
ofstream dbg("conai.caz");
|
||||
FOR_EACH_PHYSICAL_RDOC(*this, i, r) if (r->is_merce() || r->is_omaggio())
|
||||
{
|
||||
const real row_qta = r->calc_conai_qta(type);
|
||||
qta += row_qta;
|
||||
dbg << i << '\t' << row_qta.string() << endl;
|
||||
}
|
||||
FOR_EACH_PHYSICAL_RDOC(*this, i, r) if (r->is_merce() || r->is_omaggio())
|
||||
{
|
||||
const real row_qta = r->calc_conai_qta(type);
|
||||
qta += row_qta;
|
||||
}
|
||||
else
|
||||
{
|
||||
FOR_EACH_PHYSICAL_RDOC(*this, i, r) if (r->is_merce() || r->is_omaggio())
|
||||
{
|
||||
const real row_qta = r->calc_conai_qta(type);
|
||||
qta += row_qta;
|
||||
}
|
||||
}
|
||||
|
||||
return qta;
|
||||
}
|
||||
|
||||
@ -2802,8 +2787,7 @@ void TDocumento::update_conai()
|
||||
real qta = calc_conai_qta(pos);
|
||||
if (dataes.ok() && datadoc > dataes)
|
||||
perc_esenz = ZERO;
|
||||
const bool cli_esente = (esponi_esenti) && (perc_esenz == CENTO);
|
||||
|
||||
const bool cli_esente = esponi_esenti && (perc_esenz >= CENTO);
|
||||
if (!cli_esente && !perc_esenz.is_zero())
|
||||
qta = qta * (CENTO - perc_esenz) / CENTO; // More precise
|
||||
if (qta > ZERO)
|
||||
@ -2828,52 +2812,49 @@ void TDocumento::update_conai()
|
||||
const TString4 cod_iva_cli = codesiva() ;
|
||||
TSpesa_prest sp;
|
||||
|
||||
FOR_EACH_CONAI_CLASS(ct)
|
||||
FOR_EACH_CONFIGURED_CONAI_CLASS(ct) if (!updated[ct])
|
||||
{
|
||||
if (!updated[ct])
|
||||
const real perc_esenz = cfven.get_real(__conai_cf_names[ct]);
|
||||
const bool cli_esente = (esponi_esenti) && (perc_esenz == CENTO);
|
||||
real qta = calc_conai_qta(ct);
|
||||
if (!cli_esente && !qta.is_zero() && !perc_esenz.is_zero())
|
||||
qta = qta * (CENTO - perc_esenz) / CENTO; // More precise
|
||||
if (qta > ZERO)
|
||||
{
|
||||
const real perc_esenz = cfven.get_real(__conai_cf_names[ct]);
|
||||
const bool cli_esente = (esponi_esenti) && (perc_esenz == CENTO);
|
||||
real qta = calc_conai_qta(ct);
|
||||
if (!cli_esente && !qta.is_zero() && !perc_esenz.is_zero())
|
||||
qta = qta * (CENTO - perc_esenz) / CENTO; // More precise
|
||||
if (qta > ZERO)
|
||||
{
|
||||
const TString& s = conai_sp.row(ct);
|
||||
const TString& s = conai_sp.row(ct);
|
||||
|
||||
if (sp.read(s) != NOERR)
|
||||
message_box(FR("Il codice spesa CONAI %s specificato nei parametri ditta e' assente: '%s'"),
|
||||
conai_material(ct), (const char*)s);
|
||||
else
|
||||
{
|
||||
const TString4 tipo = sp.tipo_riga();
|
||||
TRiga_documento& riga = new_row(tipo);
|
||||
|
||||
riga.put(RDOC_CODART, s);
|
||||
riga.generata();
|
||||
riga.put("GENTIPO", "C");
|
||||
riga.put(RDOC_DESCR, sp.descrizione());
|
||||
riga.put(RDOC_QTA, qta);
|
||||
if (sp.read(s) != NOERR)
|
||||
message_box(FR("Il codice spesa CONAI %s specificato nei parametri ditta e' assente: '%s'"),
|
||||
conai_material(ct), (const char*)s);
|
||||
else
|
||||
{
|
||||
const TString4 tipo = sp.tipo_riga();
|
||||
TRiga_documento& riga = new_row(tipo);
|
||||
|
||||
riga.put(RDOC_CODART, s);
|
||||
riga.generata();
|
||||
riga.put("GENTIPO", "C");
|
||||
riga.put(RDOC_DESCR, sp.descrizione());
|
||||
riga.put(RDOC_QTA, qta);
|
||||
|
||||
const real cambio = get_real(DOC_CAMBIO);
|
||||
const TString4 valuta = get(DOC_CODVAL);
|
||||
const bool controeuro = get_bool(DOC_CONTROEURO);
|
||||
real prezzo = cli_esente ? ZERO : sp.prezzo();
|
||||
|
||||
sppr_calc(sp, valuta, cambio, prezzo, controeuro ? _exchange_contro : _exchange_base);
|
||||
if (this->tipo().calcolo_lordo())
|
||||
prezzo = riga.iva().lordo(prezzo, ALL_DECIMALS);
|
||||
riga.put(RDOC_PREZZO, prezzo);
|
||||
riga.put(RDOC_UMQTA, sp.um());
|
||||
if (cod_iva_cli.empty())
|
||||
riga.put(RDOC_CODIVA, sp.cod_iva());
|
||||
else
|
||||
riga.put(RDOC_CODIVA, cod_iva_cli);
|
||||
}
|
||||
}
|
||||
}
|
||||
const real cambio = get_real(DOC_CAMBIO);
|
||||
const TString4 valuta = get(DOC_CODVAL);
|
||||
const bool controeuro = get_bool(DOC_CONTROEURO);
|
||||
real prezzo = cli_esente ? ZERO : sp.prezzo();
|
||||
|
||||
sppr_calc(sp, valuta, cambio, prezzo, controeuro ? _exchange_contro : _exchange_base);
|
||||
if (this->tipo().calcolo_lordo())
|
||||
prezzo = riga.iva().lordo(prezzo, ALL_DECIMALS);
|
||||
riga.put(RDOC_PREZZO, prezzo);
|
||||
riga.put(RDOC_UMQTA, sp.um());
|
||||
if (cod_iva_cli.empty())
|
||||
riga.put(RDOC_CODIVA, sp.cod_iva());
|
||||
else
|
||||
riga.put(RDOC_CODIVA, cod_iva_cli);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user