Patch level : 12.0 900

Files correlati     : ve0.exe ve6.exe
Commento            :

Contollata la sottocategoria e il codice spesa coani in fatturazione bolle
This commit is contained in:
Alessandro Bonazzi 2019-11-15 16:59:50 +01:00
parent 192867cff1
commit 3cde95efb6
3 changed files with 59 additions and 53 deletions

View File

@ -563,7 +563,8 @@ class TConai : public TObject
TAssoc_array _conais; TAssoc_array _conais;
public: public:
const TSpesa_prest& get_spesa(const TString& sottocat) { return (const TSpesa_prest &) _conais[sottocat]; } bool exist_sottocat(const TString& sottocat) { return _conais.objptr(sottocat); }
const TSpesa_prest& get_spesa(const TString& sottocat) { return (const TSpesa_prest &)_conais[sottocat]; }
const bool find(const TString& cod_spesa) { return _conais.objptr(cod_spesa) != NULL; } const bool find(const TString& cod_spesa) { return _conais.objptr(cod_spesa) != NULL; }
int get_lista_cod_spesa(TString_array & keys) { return _conais.get_keys(keys); } int get_lista_cod_spesa(TString_array & keys) { return _conais.get_keys(keys); }

View File

@ -182,8 +182,7 @@ TSpesa_prest::TSpesa_prest(const char* codice, char tipo)
if (codice && *codice) if (codice && *codice)
{ {
const int err = read(codice); const int err = read(codice);
/*
#ifdef DBG
if (err != NOERR) if (err != NOERR)
switch (tipo) switch (tipo)
{ {
@ -203,8 +202,6 @@ TSpesa_prest::TSpesa_prest(const char* codice, char tipo)
error_box("Spesa %s assente", codice); error_box("Spesa %s assente", codice);
break; break;
} }
#endif
*/
} }
} }

View File

@ -3125,18 +3125,20 @@ void TDocumento::update_conai()
FOR_EACH_ASSOC_OBJECT(_conaiqta, o, key, item) FOR_EACH_ASSOC_OBJECT(_conaiqta, o, key, item)
{ {
const TString cod_sottocat = key; const TString8 cod_sottocat = key;
// Se l'ho già fatto skippo // Se l'ho già fatto skippo
if (conai_aggiornati.objptr(cod_sottocat) != NULL) if (conai_aggiornati.objptr(cod_sottocat) != NULL)
continue; continue;
if (conai.exist_sottocat(cod_sottocat))
{
TSpesa_prest sp = conai.get_spesa(cod_sottocat); TSpesa_prest sp = conai.get_spesa(cod_sottocat);
// Aggiungo la spesa // Aggiungo la spesa
const real perc_esenz = cfven.get_real(get_cf_esenz(cod_sottocat.left(2))); const real perc_esenz = cfven.get_real(get_cf_esenz(cod_sottocat.left(2)));
const bool cli_esente = (esponi_esenti) && (perc_esenz >= CENTO); const bool cli_esente = (esponi_esenti) && (perc_esenz >= CENTO);
const real qta_lorda = *((real *) item); const real qta_lorda = *((real *)item);
real qta = qta_lorda; real qta = qta_lorda;
if (!cli_esente && !qta_lorda.is_zero() && !perc_esenz.is_zero()) if (!cli_esente && !qta_lorda.is_zero() && !perc_esenz.is_zero())
{ {
@ -3146,7 +3148,10 @@ void TDocumento::update_conai()
if (qta > ZERO) if (qta > ZERO)
{ {
const TString4 tipo = sp.tipo_riga(); TString4 tipo = sp.tipo_riga();
if (tipo.blank())
tipo = "03";
TRiga_documento& riga = new_row(tipo); TRiga_documento& riga = new_row(tipo);
riga.put(RDOC_CODART, sp.codice()); riga.put(RDOC_CODART, sp.codice());
@ -3175,6 +3180,9 @@ void TDocumento::update_conai()
riga.put(RDOC_CODIVA, cod_iva_cli); riga.put(RDOC_CODIVA, cod_iva_cli);
} }
} }
else
error_box("Sottocategoria CONAI %s assente", (const char *) cod_sottocat);
}
} }
} }
} }