Stampa distinta di IVA differita e per cassa in liquidazione
git-svn-id: svn://10.65.10.50/branches/R_10_00@22821 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
parent
f7330b37c5
commit
9a787f7761
@ -183,7 +183,7 @@ TMask* TPrimanota_application::load_mask(int n)
|
||||
m->set_handler(O_PAIV, occas_cfpi_handler);
|
||||
break;
|
||||
default:
|
||||
CHECKD(0, "Che ca$$o di maschera e' la ", n);
|
||||
CHECKD(0, "Che ca$$o di maschera è la ", n);
|
||||
break;
|
||||
}
|
||||
|
||||
@ -371,7 +371,7 @@ bool TPrimanota_application::read_caus(const char* cod, int year)
|
||||
|
||||
if (err)
|
||||
{
|
||||
error_box(FR("Il conto della riga %d della causale e' %s"),
|
||||
error_box(FR("Il conto della riga %d della causale è %s"),
|
||||
i, err == 1 ? TR("sconosciuto") : TR("sospeso"));
|
||||
}
|
||||
|
||||
@ -849,7 +849,7 @@ void TPrimanota_application::init_insert_mode(TMask& m)
|
||||
TConfig ini(tmp, "23");
|
||||
ini2mask(ini, m, false);
|
||||
|
||||
// Controllo se e' stato salvato il campo virtuale col codice IVA
|
||||
// Controllo se è stato salvato il campo virtuale col codice IVA
|
||||
if (m.id2pos(F_CODIVA) > 0)
|
||||
{
|
||||
const TString& codiva = ini.get("CODIVA", "23");
|
||||
@ -880,7 +880,7 @@ void TPrimanota_application::init_modify_mode(TMask& m)
|
||||
|
||||
TSheet_field& cg = cgs();
|
||||
|
||||
// Determina se il movimento e' stato trasferito da AS/400:
|
||||
// Determina se il movimento è stato trasferito da AS/400:
|
||||
// praticamente controlla che non ci sia nessun tipo movimento sulle righe contabili.
|
||||
_as400 = false;
|
||||
if (is_saldaconto() || iva() != nessuna_iva)
|
||||
@ -917,7 +917,7 @@ void TPrimanota_application::init_modify_mode(TMask& m)
|
||||
m.show(F_ADJUST_PRORATA);
|
||||
m.set_handler(F_ADJUST_PRORATA, prorata_handler);
|
||||
|
||||
warning_box(TR("Questo movimento e' stato registrato con una percentuale\n"
|
||||
warning_box(TR("Questo movimento è stato registrato con una percentuale\n"
|
||||
"prorata non compatibile con quella corrente:\n"
|
||||
"Premere il bottone di correzione automatica delle righe."));
|
||||
}
|
||||
@ -940,11 +940,11 @@ void TPrimanota_application::init_modify_mode(TMask& m)
|
||||
{
|
||||
TString msg;
|
||||
if (mov.get_bool(MOV_STAMPATO))
|
||||
msg << '\n' << TR("Il movimento e' gia' stato stampato sul libro giornale.");
|
||||
msg << '\n' << TR("Il movimento è già stato stampato sul libro giornale.");
|
||||
if (mov.get_bool(MOV_REGST))
|
||||
msg << '\n' << TR("Il movimento e' gia' stato stampato sul bollato.");
|
||||
msg << '\n' << TR("Il movimento è già stato stampato sul bollato.");
|
||||
if (mov.get_bool(MOV_INVIATO))
|
||||
msg << '\n' << TR("Il movimento e' stato inviato ad un'altra contabilita'.");
|
||||
msg << '\n' << TR("Il movimento è stato inviato ad un'altra contabilità.");
|
||||
if (msg.not_empty())
|
||||
{
|
||||
msg.insert(TR("ATTENZIONE!"));
|
||||
@ -959,7 +959,7 @@ void TPrimanota_application::init_modify_mode(TMask& m)
|
||||
}
|
||||
|
||||
// Controlla sulla causale se il segno del totale documento (ritsoc=false)
|
||||
// o quello delle ritenute sociali (ritsoc=true) e' invertito rispetto al normale
|
||||
// o quello delle ritenute sociali (ritsoc=true) è invertito rispetto al normale
|
||||
bool TPrimanota_application::test_swap(bool ritsoc)
|
||||
{
|
||||
const char sez = ritsoc ? causale().sezione_ritsoc() : causale().sezione_clifo();
|
||||
@ -970,7 +970,7 @@ bool TPrimanota_application::test_swap(bool ritsoc)
|
||||
void TPrimanota_application::add_cup_or_cig(short id, const TRectype& rec, TToken_string& riga) const
|
||||
{
|
||||
const bool cup = id == CG_CUP;
|
||||
const TString80 cod = rec.get(cup ? RMV_CUP : RMV_CIG);
|
||||
const TString& cod = rec.get(cup ? RMV_CUP : RMV_CIG);
|
||||
if (cod.full())
|
||||
{
|
||||
riga.add(cod, id-FIRST_FIELD); // Tipo di riga 115 o 117
|
||||
@ -982,7 +982,7 @@ void TPrimanota_application::add_cup_or_cig(short id, const TRectype& rec, TToke
|
||||
void TPrimanota_application::add_cup_or_cig(short id, TConfig& ini, TToken_string& riga) const
|
||||
{
|
||||
const bool cup = id == CG_CUP;
|
||||
const TString80 cod = ini.get(cup ? RMV_CUP : RMV_CIG);
|
||||
const TString& cod = ini.get(cup ? RMV_CUP : RMV_CIG);
|
||||
if (cod.full())
|
||||
{
|
||||
riga.add(cod, id-FIRST_FIELD); // Tipo di riga 115 o 117
|
||||
@ -1158,12 +1158,12 @@ void TPrimanota_application::mask2rel(const TMask& m)
|
||||
}
|
||||
else
|
||||
s[0] = '\0';
|
||||
rec.put(MOV_TIPOMOV, s); // Tolto dalla maschera (su file e' alfanumerico)!
|
||||
rec.put(MOV_TIPOMOV, s); // Tolto dalla maschera (su file è alfanumerico)!
|
||||
|
||||
_rel->destroy_rows(numreg); // Destroy all records
|
||||
cgs_pack(); // Destroy all null rows
|
||||
|
||||
// Controlla se e' un movimento con righe contabili
|
||||
// Controlla se è un movimento con righe contabili
|
||||
if (iva() == nessuna_iva || !m.get_bool(F_SOLAIVA))
|
||||
{
|
||||
TString_array& rows = cgs().rows_array();
|
||||
@ -1233,7 +1233,7 @@ void TPrimanota_application::mask2rel(const TMask& m)
|
||||
{
|
||||
rec.put(MOV_TIPO, clifo());
|
||||
|
||||
if (m.field(F_OCCASEDIT).active()) // Se e' un occasionale
|
||||
if (m.field(F_OCCASEDIT).active()) // Se è un occasionale
|
||||
{
|
||||
const TMask& om = occas_mask();
|
||||
TRelation occas(LF_OCCAS);
|
||||
@ -1653,17 +1653,17 @@ long TPrimanota_application::calcola_m770(int tipo_coll, real& spese, real& comp
|
||||
imp = row;
|
||||
|
||||
const char cf = row.get_char(2);
|
||||
if (cf == 'F') // Evviva, e' un fornitore!
|
||||
if (cf == 'F') // Evviva, è un fornitore!
|
||||
{
|
||||
const long cod = row.get_long(5);
|
||||
char tipper;
|
||||
long codper;
|
||||
if (!is_percipient(cod, tipper, codper))
|
||||
continue; // Se non e' percipente ignoralo
|
||||
continue; // Se non è percipente ignoralo
|
||||
|
||||
if (forn == 0 && tipo_coll == 3)
|
||||
{
|
||||
forn = cod; // E' il primo che trovo!
|
||||
forn = cod; // è il primo che trovo!
|
||||
}
|
||||
else // Fine ricerca.
|
||||
{
|
||||
@ -1894,7 +1894,7 @@ void TPrimanota_application::ini2mask(TConfig& ini, TMask& msk, bool query)
|
||||
if (numrig != i) // Controllo se ho un numero riga valido
|
||||
{
|
||||
numrig = -1; // Normalmente aggiungi la riga in fondo
|
||||
// Cerca una riga che abbia gia' il tipo ed il conto richiesto
|
||||
// Cerca una riga che abbia già il tipo ed il conto richiesto
|
||||
if (strchr(" DINT", tipo) != NULL)
|
||||
{
|
||||
int nr = -1;
|
||||
@ -2349,13 +2349,13 @@ bool TPrimanota_application::link_anal(const TMask& msk, const char* action)
|
||||
if (action[0] == 'I')
|
||||
|
||||
{
|
||||
// Se non ci sono conti analitici e' inutile inserire
|
||||
// Se non ci sono conti analitici è inutile inserire
|
||||
if (!bAnalBill)
|
||||
return false;
|
||||
|
||||
}
|
||||
|
||||
// Controllo se esiste gia' il movimento
|
||||
// Controllo se esiste già il movimento
|
||||
long nExist = 0L;
|
||||
TLocalisamfile movana(LF_MOVANA);
|
||||
movana.setkey(3);
|
||||
@ -2370,12 +2370,12 @@ bool TPrimanota_application::link_anal(const TMask& msk, const char* action)
|
||||
|
||||
if (!bAnalBill) // Non c'erano e non ci sono tuttora conti analitici
|
||||
return false;
|
||||
action = "Insert"; // Il movimento e' andato perduto!
|
||||
action = "Insert"; // Il movimento è andato perduto!
|
||||
}
|
||||
else
|
||||
{
|
||||
if (action[0] == 'I')
|
||||
action = "Modify"; // Il movimento e' stato inserito preventivamente
|
||||
action = "Modify"; // Il movimento è stato inserito preventivamente
|
||||
}
|
||||
|
||||
TFilename ini; ini.tempdir();
|
||||
@ -2413,17 +2413,17 @@ bool TPrimanota_application::protected_record(TRectype& mov)
|
||||
{
|
||||
if (mov.get_bool(MOV_STAMPATO))
|
||||
{
|
||||
ok = yesno_box(FR("Il movimento %ld e' gia' stato stampato sul libro giornale:\n"
|
||||
ok = yesno_box(FR("Il movimento %ld è già stato stampato sul libro giornale:\n"
|
||||
"si desidera eliminarlo ugualmente?"), numreg);
|
||||
}
|
||||
if (ok && mov.get_bool(MOV_REGST))
|
||||
{
|
||||
ok = yesno_box(FR("Il movimento %ld e' gia' stato stampato sul bollato:\n"
|
||||
ok = yesno_box(FR("Il movimento %ld è già stato stampato sul bollato:\n"
|
||||
"si desidera eliminarlo ugualmente?"), numreg);
|
||||
}
|
||||
if (ok && mov.get_bool(MOV_INVIATO))
|
||||
{
|
||||
ok = yesno_box(FR("Il movimento %ld e' stato inviato ad un'altra contabilita':\n"
|
||||
ok = yesno_box(FR("Il movimento %ld è stato inviato ad un'altra contabilità:\n"
|
||||
"si desidera eliminarlo ugualmente?"), numreg);
|
||||
}
|
||||
if (ok)
|
||||
|
@ -13,7 +13,7 @@ int main(int argc,char** argv)
|
||||
case 4: cg4500(argc,argv); break; // Apertura nuovo esercizio
|
||||
case 5: cg4600(argc,argv); break; // Chiusura /Apertura
|
||||
case 6: cg4700(argc,argv); break; // Gestione acconti
|
||||
case 7: cg4800(argc,argv); break; // Creazione versamenti per acconto
|
||||
//case 7: cg4800(argc,argv); break; // Creazione versamenti per acconto
|
||||
case 8: cg4900(argc,argv); break; // Visualizzazione liquidazione acconti
|
||||
case 9: cg4a00(argc,argv); break; // Gestione Autotrasportatori
|
||||
default: cg4100(argc,argv); break; // Ricalcolo saldi
|
||||
|
@ -531,6 +531,7 @@ bool TLiquidazione_app::set_print(int)
|
||||
warning_box(TR("Nessuna ditta selezionata!"));
|
||||
}
|
||||
break;
|
||||
/*
|
||||
case 2: // estrazione deleghe
|
||||
_isprint = FALSE;
|
||||
_selected.reset();
|
||||
@ -546,25 +547,30 @@ bool TLiquidazione_app::set_print(int)
|
||||
else warning_box(TR("Nessuna ditta selezionata!"));
|
||||
}
|
||||
break;
|
||||
*/
|
||||
case 3: // calcolo acconto
|
||||
_isprint = TRUE;
|
||||
_month = 12;
|
||||
_selected.reset();
|
||||
_ditte->check(-1, FALSE);
|
||||
build_ditte_sheet(all);
|
||||
real inf; real ina; // cotale obbrobrio non fu da me cercato, ne' mai condiviso
|
||||
while (set_acconto(inf, ina))
|
||||
{
|
||||
if (_calcall || _selected.ones() > 0l)
|
||||
{
|
||||
recalc_acconti(inf, ina);
|
||||
return _isprint;
|
||||
}
|
||||
else warning_box(TR("Nessuna ditta selezionata!"));
|
||||
{
|
||||
_isprint = TRUE;
|
||||
_month = 12;
|
||||
_selected.reset();
|
||||
_ditte->check(-1, FALSE);
|
||||
build_ditte_sheet(all);
|
||||
real inf; real ina; // cotale obbrobrio non fu da me cercato, ne' mai condiviso
|
||||
while (set_acconto(inf, ina))
|
||||
{
|
||||
if (_calcall || _selected.ones() > 0l)
|
||||
{
|
||||
recalc_acconti(inf, ina);
|
||||
return _isprint;
|
||||
}
|
||||
else warning_box(TR("Nessuna ditta selezionata!"));
|
||||
}
|
||||
}
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
return FALSE;
|
||||
return false;
|
||||
}
|
||||
|
||||
long TLiquidazione_app::select_firm_range(long from, long to, wht freq)
|
||||
|
13
cg/cg4300.h
13
cg/cg4300.h
@ -592,10 +592,13 @@ public:
|
||||
void set_plm(_DescrItem& d);
|
||||
bool set_annual(_DescrItem& d);
|
||||
void set_grand(_DescrItem& d);
|
||||
void set_grand_1999(_DescrItem& d, int &rw);
|
||||
// void set_grand_1999(_DescrItem& d, int &rw);
|
||||
void set_grand_2000(_DescrItem& d, int &rw);
|
||||
void set_pim_head(_DescrItem& d);
|
||||
void set_liqacc_1999(_DescrItem& d);
|
||||
// void set_liqacc_1999(_DescrItem& d);
|
||||
|
||||
int calc_inc_diff(int tipoiva, real& imponibile_diff, real& imposta_diff, real& imponibile_xcas, real& imposta_xcas) const;
|
||||
int print_acc_diff_xcassa(const _DescrItem& d);
|
||||
void set_liqacc_2000(_DescrItem& d);
|
||||
|
||||
// Utility per stampare nella colonna debito o credito
|
||||
@ -658,13 +661,15 @@ public:
|
||||
bool is_first_month (int m);
|
||||
int liq_month(int x);
|
||||
|
||||
int previous_month (int m);
|
||||
int previous_month (int m) const;
|
||||
|
||||
// Funzioni accessorie: estrazione deleghe
|
||||
/* Funzioni accessorie: estrazione deleghe
|
||||
bool set_deleghe();
|
||||
bool extract_deleghe();
|
||||
bool extract_delega(int m, TArray& desc);
|
||||
bool video_conferma(const real&, const real&, const real&, bool to_del = FALSE);
|
||||
*/
|
||||
|
||||
// stampa
|
||||
void set_deltab(_DescrItem& d, bool iscred);
|
||||
|
||||
|
@ -98,7 +98,7 @@ bool TLiquidazione_app::is_first_month(int m)
|
||||
return _freqviva == "M" ? m == 1 : m == 3;
|
||||
}
|
||||
|
||||
int TLiquidazione_app::previous_month(int m)
|
||||
int TLiquidazione_app::previous_month(int m) const
|
||||
{
|
||||
// vale per LIM (mese o trimestre precedente)
|
||||
if (_freqviva == "M")
|
||||
|
178
cg/cg4304.cpp
178
cg/cg4304.cpp
@ -4,7 +4,7 @@
|
||||
// fv 21-1-94
|
||||
// ------------------------------------------------------------
|
||||
|
||||
#include <currency.h>
|
||||
#include <modaut.h>
|
||||
#include <recarray.h>
|
||||
#include <recset.h>
|
||||
#include <utility.h>
|
||||
@ -91,10 +91,14 @@ void TLiquidazione_app::set_page(int file, int cnt)
|
||||
set_grand(d);
|
||||
break;
|
||||
case LIQACC:
|
||||
/* Obsoleto
|
||||
if (atoi(_year) >= 2000)
|
||||
set_liqacc_2000(d);
|
||||
else
|
||||
set_liqacc_1999(d);
|
||||
*/
|
||||
set_liqacc_2000(d);
|
||||
|
||||
break;
|
||||
case ACCONTO:
|
||||
set_acconto_p(d);
|
||||
@ -1400,7 +1404,6 @@ void TLiquidazione_app::describe_consistence(const char* codatt)
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
void TLiquidazione_app::describe_error(const char* err, const char* codatt)
|
||||
{
|
||||
if (!_isprint || !_canprint || (_isregis && _isfinal))
|
||||
@ -1418,14 +1421,13 @@ void TLiquidazione_app::set_firm(_DescrItem& d)
|
||||
tim_title << TR("Liquidazione IVA");
|
||||
|
||||
if (d._f1 == 13)
|
||||
tim_title << format(FR(": Riepilogo Annuale %s"),(const char*)_year);
|
||||
tim_title << format(FR(": Riepilogo Annuale %s"), (const char*)_year);
|
||||
else
|
||||
{
|
||||
if (d._s2 == "T")
|
||||
tim_title << format(FR(" del %d° Trimestre %s"), d._f1/3, (const char *) _year);
|
||||
tim_title << format(FR(" del %d° Trimestre %s"), d._f1/3, (const char*) _year);
|
||||
else
|
||||
tim_title << format(FR(" del mese di %s %s"), itom(d._f1),
|
||||
(const char*)_year);
|
||||
tim_title << format(FR(" del mese di %s %s"), itom(d._f1), (const char*)_year);
|
||||
}
|
||||
|
||||
reset_header();
|
||||
@ -1438,15 +1440,13 @@ void TLiquidazione_app::set_firm(_DescrItem& d)
|
||||
}
|
||||
set_header(soh++,sep);
|
||||
set_header(soh++,FR("%s@102gFrequenza %s"),
|
||||
(const char*)tim_title,
|
||||
d._s2 == "T" ? TR("Trimestrale") : TR("Mensile"));
|
||||
(const char*)tim_title, d._s2 == "T" ? TR("Trimestrale") : TR("Mensile"));
|
||||
set_header(soh++,sep);
|
||||
set_header(soh++,"");
|
||||
|
||||
// notify errors if any
|
||||
int j = 0;
|
||||
int i;
|
||||
|
||||
int i = 0;
|
||||
for (i = 0; i < _errors.items(); i++)
|
||||
{
|
||||
_ErrItem& s = (_ErrItem&)_errors[i];
|
||||
@ -1489,10 +1489,9 @@ void TLiquidazione_app::set_att(_DescrItem& d)
|
||||
else
|
||||
{
|
||||
if (d._s4 == "T")
|
||||
tim_title << format(FR(" del %d° Trimestre %s"), d._f1/3, (const char *) _year);
|
||||
tim_title << format(FR(" del %d° Trimestre %s"), d._f1/3, (const char*)_year);
|
||||
else
|
||||
tim_title << format(FR(" del mese di %s %s"), itom(d._f1),
|
||||
(const char*)_year);
|
||||
tim_title << format(FR(" del mese di %s %s"), itom(d._f1), (const char*)_year);
|
||||
}
|
||||
|
||||
const char* tipatt = "";
|
||||
@ -1528,10 +1527,10 @@ void TLiquidazione_app::set_att(_DescrItem& d)
|
||||
if (d._s2 == s._att && s._firm == d._s0)
|
||||
{ j++; set_row(i+10, "@5g@b*** %s ***@r", (const char*)s._err); }
|
||||
}
|
||||
if (j) set_auto_ff(TRUE);
|
||||
if (j)
|
||||
set_auto_ff(TRUE);
|
||||
}
|
||||
|
||||
|
||||
void TLiquidazione_app::set_plafond(_DescrItem& d)
|
||||
{
|
||||
// In caso di stampa liquidazione da stampa registri, il prospetto plafond
|
||||
@ -1550,8 +1549,7 @@ void TLiquidazione_app::set_plafond(_DescrItem& d)
|
||||
|
||||
set_print_zero(TRUE);
|
||||
|
||||
set_row(1,TR("QUADRO RELATIVO ALLA DISPONIBILITA' ED ALL'UTILIZZO "
|
||||
"MENSILE DEI PLAFONDS"));
|
||||
set_row(1,TR("QUADRO RELATIVO ALLA DISPONIBILITA' ED ALL'UTILIZZO MENSILE DEI PLAFONDS"));
|
||||
|
||||
set_row(2,"");
|
||||
set_row(3,FR("@31gDisponibile@48g%r"), &(disponibile));
|
||||
@ -1574,6 +1572,8 @@ void TLiquidazione_app::set_plafond(_DescrItem& d)
|
||||
set_auto_ff();
|
||||
}
|
||||
|
||||
/* Obsoleto
|
||||
|
||||
void TLiquidazione_app::set_liqacc_1999(_DescrItem& d)
|
||||
{
|
||||
real r1 = d._r0 + d._r1 + d._r2 + d._r4;
|
||||
@ -1632,6 +1632,91 @@ void TLiquidazione_app::set_liqacc_1999(_DescrItem& d)
|
||||
|
||||
set_auto_ff();
|
||||
}
|
||||
*/
|
||||
|
||||
int TLiquidazione_app::calc_inc_diff(int tipoiva, real& imponibile_diff, real& imposta_diff, real& imponibile_xcas, real& imposta_xcas) const
|
||||
{
|
||||
int flag = 0;
|
||||
|
||||
imponibile_diff = imposta_diff = imponibile_xcas = imposta_xcas = ZERO;
|
||||
|
||||
TString limit; limit << "ANNOLIQ=" << _year;
|
||||
if (_month < 13) limit << " MESELIQ=" << _month;
|
||||
TString query;
|
||||
query << "USE IVADIFF KEY 2 SELECT (TIPOMOV>2)&&(TIPOIVA=" << tipoiva << ')';
|
||||
query << "\nFROM " << limit << "\nTO " << limit;
|
||||
|
||||
TISAM_recordset id(query);
|
||||
const TRectype& rec = id.cursor()->curr();
|
||||
for (bool ok = id.move_first(); ok; ok = id.move_next())
|
||||
{
|
||||
const real iva = rec.get_real(RMI_IMPOSTA);
|
||||
if (iva > ZERO)
|
||||
{
|
||||
const real imp = rec.get_real(RMI_IMPONIBILE);
|
||||
const int tipodiff = rec.get_int("TIPODIFF");
|
||||
if (tipodiff == 1)
|
||||
{
|
||||
imponibile_diff += imp;
|
||||
imposta_diff += iva;
|
||||
} else
|
||||
if (tipodiff == 2)
|
||||
{
|
||||
imponibile_xcas += imp;
|
||||
imposta_xcas += iva;
|
||||
}
|
||||
flag |= tipodiff;
|
||||
}
|
||||
}
|
||||
|
||||
return flag;
|
||||
}
|
||||
|
||||
int TLiquidazione_app::print_acc_diff_xcassa(const _DescrItem& d)
|
||||
{
|
||||
int i = 9;
|
||||
|
||||
const real& totiva = d._r0;
|
||||
real ivadiff_inc = d._r29;
|
||||
real ivadiff_pag = d._r33;
|
||||
|
||||
real ivaxcas_inc, ivaxcas_pag;
|
||||
|
||||
if (has_module(ICAUT))
|
||||
{
|
||||
// Calcolare qui la quota per cassa e toglierla a quella differita gloable
|
||||
}
|
||||
|
||||
if (!_isdiffacc)
|
||||
{
|
||||
set_row(i++,FR("@11gIva esigibile fino al 20/12@81g%r"), &totiva);
|
||||
|
||||
if (ivadiff_inc > ZERO)
|
||||
set_row(i++,FR("@11gIVA a liquidazione differita incassata fino al 20/12@75g%r"), &ivadiff_inc);
|
||||
if (ivadiff_pag > ZERO)
|
||||
set_row(i++,FR("@11gIVA a liquidazione differita pagata fino al 20/12@64g%r"), &ivadiff_pag);
|
||||
|
||||
if (ivaxcas_inc > ZERO)
|
||||
set_row(i++,FR("@11gIVA per cassa incassata fino al 20/12@75g%r"), &ivaxcas_inc);
|
||||
if (ivaxcas_pag > ZERO)
|
||||
set_row(i++,FR("@11gIVA per cassa pagata fino al 20/12@64g%r"), &ivaxcas_pag);
|
||||
}
|
||||
else
|
||||
{
|
||||
set_row(i++,FR("@11gIva sulle operazioni di vendita@81g%r"), &totiva);
|
||||
|
||||
if (ivadiff_inc > ZERO)
|
||||
set_row(i++,FR("@11gIVA a liquidazione differita incassata@75g%r"), &ivadiff_inc);
|
||||
if (ivadiff_pag > ZERO)
|
||||
set_row(i++,FR("@11gIVA a liquidazione differita pagata@64g%r"), &ivadiff_pag);
|
||||
|
||||
if (ivadiff_inc > ZERO)
|
||||
set_row(i++,FR("@11gIVA per cassa incassata@75g%r"), &ivadiff_inc);
|
||||
if (ivadiff_pag > ZERO)
|
||||
set_row(i++,FR("@11gIVA per cassa pagata@64g%r"), &ivadiff_pag);
|
||||
}
|
||||
return i;
|
||||
}
|
||||
|
||||
void TLiquidazione_app::set_liqacc_2000(_DescrItem& d)
|
||||
{
|
||||
@ -1645,23 +1730,9 @@ void TLiquidazione_app::set_liqacc_2000(_DescrItem& d)
|
||||
|
||||
if (d._r3 > ZERO)
|
||||
d._r0 += d._r3; // Aggiungi rettifiche a debito
|
||||
int i = 9;
|
||||
if (!_isdiffacc)
|
||||
{
|
||||
set_row(i++,FR("@11gIva esigibile fino al 20/12@81g%r"), &d._r0);
|
||||
if (d._r29 > ZERO)
|
||||
set_row(i++,FR("@11gIVA a liquidazione differita incassata fino al 20/12@75g%r"), &d._r29);
|
||||
if (d._r33 > ZERO)
|
||||
set_row(i++,FR("@11gIVA a liquidazione differita pagata fino al 20/12@64g%r"), &d._r33);
|
||||
}
|
||||
else
|
||||
{
|
||||
set_row(i++,FR("@11gIva sulle operazioni di vendita@81g%r"), &d._r0);
|
||||
if (d._r29 > ZERO)
|
||||
set_row(i++,FR("@11gIVA a liquidazione differita incassata@75g%r"), &d._r29);
|
||||
if (d._r33 > ZERO)
|
||||
set_row(i++,FR("@11gIVA a liquidazione differita pagata@64g%r"), &d._r33);
|
||||
}
|
||||
|
||||
int i = print_acc_diff_xcassa(d);
|
||||
|
||||
if (!_isdiffacc)
|
||||
{
|
||||
set_row(i++,FR("@11gIva esigibile fino al 20/12 di cui non fatturata@81g%r"), &d._r1);
|
||||
@ -1714,6 +1785,8 @@ void TLiquidazione_app::set_liqacc_2000(_DescrItem& d)
|
||||
set_auto_ff();
|
||||
}
|
||||
|
||||
/*
|
||||
|
||||
bool TLiquidazione_app::print_dainc_diff_log(int& rw, int tipoatt, int tipoiva)
|
||||
{
|
||||
TString limit; limit << "ANNOLIQ=" << _year;
|
||||
@ -1833,8 +1906,7 @@ bool TLiquidazione_app::print_inc_diff_log(int& rw, int tipoatt, int tipoiva)
|
||||
|
||||
return rpag > 0;
|
||||
}
|
||||
|
||||
|
||||
*/
|
||||
|
||||
void TLiquidazione_app::set_pim_head(_DescrItem& d)
|
||||
{
|
||||
@ -1849,7 +1921,7 @@ void TLiquidazione_app::set_pim_head(_DescrItem& d)
|
||||
{
|
||||
set_row(r++, TR("Movimenti a liquidazione differita o per cassa registrati nel periodo"));
|
||||
set_bookmark(TR("Riepilogo progressivi a liquidazione differita"), _att_bookmark);
|
||||
print_dainc_diff_log(r, d._f2, d._f3);
|
||||
// print_dainc_diff_log(r, d._f2, d._f3); // 15-03-2013 obosleto in quanto stampato su registri?
|
||||
}
|
||||
else
|
||||
if (d._flags == PIM_HEAD_DI)
|
||||
@ -2220,6 +2292,7 @@ void TLiquidazione_app::set_pumpam(_DescrItem& d)
|
||||
set_auto_ff(TRUE);
|
||||
}
|
||||
|
||||
/*
|
||||
void TLiquidazione_app::set_grand_1999(_DescrItem& d, int& rw)
|
||||
{
|
||||
real& risultato = d._r0;
|
||||
@ -2373,6 +2446,7 @@ void TLiquidazione_app::set_grand_1999(_DescrItem& d, int& rw)
|
||||
}
|
||||
}
|
||||
}
|
||||
*/
|
||||
|
||||
void TLiquidazione_app::print_importo(int rw, const char* prompt, real imp, bool red)
|
||||
{
|
||||
@ -2399,8 +2473,28 @@ void TLiquidazione_app::set_grand_2000(_DescrItem& d, int &rw)
|
||||
const real& interessi = d._r7;
|
||||
const real& versamenti = d._r8;
|
||||
const real& vers_int = d._r9;
|
||||
const real& diffinc_iva = d._r29;
|
||||
const real& diffinc_iva_acq = d._r33;
|
||||
|
||||
real diffinc_iva = d._r29;
|
||||
real diffinc_iva_acq = d._r33;
|
||||
real xcasinc_iva = ZERO;
|
||||
real xcasinc_iva_acq = ZERO;
|
||||
|
||||
if (has_module(ICAUT) && (!diffinc_iva.is_zero() || !diffinc_iva_acq.is_zero()))
|
||||
{
|
||||
real dimp, diva, ximp, xiva;
|
||||
|
||||
if (!diffinc_iva.is_zero() && calc_inc_diff(1, dimp, diva, ximp, xiva) & 0x2)
|
||||
{
|
||||
diffinc_iva = diva;
|
||||
xcasinc_iva = xiva;
|
||||
}
|
||||
if (!diffinc_iva_acq.is_zero() && calc_inc_diff(2, dimp, diva, ximp, xiva) & 0x2)
|
||||
{
|
||||
diffinc_iva_acq = diva;
|
||||
xcasinc_iva_acq = xiva;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
TToken_string tt(d._s0);
|
||||
real iva_vend(tt.get(0));
|
||||
@ -2433,6 +2527,8 @@ void TLiquidazione_app::set_grand_2000(_DescrItem& d, int &rw)
|
||||
set_row(rw++,FR("@11gIVA esigibile per il periodo@75g%r"), &iva_vend);
|
||||
if (!diffinc_iva.is_zero())
|
||||
set_row(rw++,FR("@11gIVA a liquidazione differita incassata@75g%r"), &diffinc_iva);
|
||||
if (!xcasinc_iva.is_zero())
|
||||
set_row(rw++,FR("@11gIVA per cassa incassata@75g%r"), &xcasinc_iva);
|
||||
if (_is_visliq)
|
||||
set_row(rw++,FR("@11g$[r]Rettifiche IVA a debito$[n]@75g%r"), &rett_debt); // Rettifiche modificabili
|
||||
|
||||
@ -2581,12 +2677,16 @@ void TLiquidazione_app::set_grand(_DescrItem& d)
|
||||
set_row(6,"");
|
||||
int rw = 7;
|
||||
|
||||
/*
|
||||
const bool new_print = atoi(_year) >= 2000;
|
||||
if (new_print)
|
||||
set_grand_2000(d, rw);
|
||||
else
|
||||
set_grand_1999(d, rw);
|
||||
*/
|
||||
set_grand_2000(d, rw);
|
||||
|
||||
|
||||
// rapportini per rimborso infraannuale
|
||||
// non si stampano se la stampa serve per la visualizz.
|
||||
// solo in st.di prova in coda ai registri deve scendere
|
||||
|
@ -17,6 +17,7 @@
|
||||
#include "cg4300c.h"
|
||||
#include "cg4800b.h"
|
||||
|
||||
/*
|
||||
|
||||
// -------------------------------------------------- estrazione deleghe
|
||||
bool TLiquidazione_app::set_deleghe()
|
||||
@ -418,6 +419,9 @@ bool TLiquidazione_app::video_conferma(const real& newimp, const real& intr,
|
||||
return k == K_YES;
|
||||
}
|
||||
|
||||
*/
|
||||
|
||||
|
||||
// -------------------------------------------- calcolo acconto dicembre
|
||||
bool TLiquidazione_app::set_acconto(real& inf, real& ina)
|
||||
{
|
||||
|
@ -16,7 +16,6 @@
|
||||
#include <progind.h>
|
||||
#include <recarray.h>
|
||||
#include <recset.h>
|
||||
#include <sheet.h>
|
||||
#include <utility.h>
|
||||
|
||||
#include <anagr.h>
|
||||
@ -26,8 +25,8 @@
|
||||
#include <comuni.h>
|
||||
#include <mov.h>
|
||||
#include <nditte.h>
|
||||
#include <occas.h>
|
||||
#include <rmoviva.h>
|
||||
#include <occas.h>
|
||||
#include <unloc.h>
|
||||
|
||||
static enum tipo_sospensione { nessuna, normale, vol_affari, liquidazione };
|
||||
|
@ -152,6 +152,7 @@ public: // TObject
|
||||
const TString& tipo() const { return get("S1"); }
|
||||
int detraibilita() const { return get_int("I1"); }
|
||||
int allegato(char tipocf) const { return get_int(tipocf == 'F' ? "S8" : "S7"); }
|
||||
bool has_plafond() const { return get_int("S3") > 0; }
|
||||
|
||||
real imposta(const real& imponibile, int ndec = AUTO_DECIMALS, const char * codval = "") const; // Calcola l'imposta sull'imponibile l'imposta e la ritorna
|
||||
real scorpora(real& imponibile, int ndec = AUTO_DECIMALS, const char * codval = "") const; // Scorpora dall'imponibile l'imposta e la ritorna
|
||||
|
@ -666,17 +666,21 @@ TFieldtypes TSolder_tree::get_var(const TString& name, TVariant& var) const
|
||||
} else
|
||||
if (name == PAGSCA_ABBUONI)
|
||||
{
|
||||
set_var_real(var, rpag.get_real(name), show_val());
|
||||
const real a = pag.get_real(name);
|
||||
set_var_real(var, a, show_val());
|
||||
} else
|
||||
if (name == PAGSCA_DIFFCAM)
|
||||
{
|
||||
if (_codval.full() && !show_val())
|
||||
set_var_real(var, rpag.get_real(name), false);
|
||||
{
|
||||
const real d = pag.get_real(name);
|
||||
set_var_real(var, d, false);
|
||||
}
|
||||
} else
|
||||
if (name == PAGSCA_RITENUTE)
|
||||
{
|
||||
if (_codval.empty())
|
||||
set_var_real(var, rpag.get_real(name), false);
|
||||
set_var_real(var, pag.get_real(name), false);
|
||||
} else
|
||||
if (name == PAGSCA_RITSOC)
|
||||
{
|
||||
|
Loading…
x
Reference in New Issue
Block a user