Liquidazione: corretti errori 5/12/94 Sergio e Cinzia
git-svn-id: svn://10.65.10.50/trunk@734 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
parent
c0ae87f6b4
commit
d84c15ec9b
@ -148,21 +148,30 @@ bool TLiquidazione_app::user_create()
|
|||||||
if (pnd) pnd->addstatus(1);
|
if (pnd) pnd->addstatus(1);
|
||||||
|
|
||||||
if (is_interactive)
|
if (is_interactive)
|
||||||
{
|
{
|
||||||
for (_nditte->first(); !_nditte->eof(); _nditte->next())
|
TLocalisamfile& dt = _nditte->lfile();
|
||||||
{
|
|
||||||
if (!prefhndl->exist(_nditte_r->get_long("CODDITTA")))
|
for (dt.first(); !dt.eof(); dt.next())
|
||||||
continue;
|
{
|
||||||
|
// no archivi
|
||||||
TApplication::set_firm(_nditte_r->get_long("CODDITTA"));
|
if (!prefhndl->exist(dt.get_long("CODDITTA")))
|
||||||
|
continue;
|
||||||
|
|
||||||
|
TApplication::set_firm(dt.get_long("CODDITTA"));
|
||||||
|
|
||||||
|
// no parametri liquidazione
|
||||||
|
if (!look_lia())
|
||||||
|
continue;
|
||||||
|
|
||||||
_n_ditte++;
|
_n_ditte++;
|
||||||
|
|
||||||
TToken_string* d = new TToken_string(64);
|
TToken_string* d = new TToken_string(64);
|
||||||
|
|
||||||
// add record
|
// add record
|
||||||
d->add(_nditte_r->get("CODDITTA"));
|
d->add(dt.get("CODDITTA"));
|
||||||
d->add(_nditte_r->get("RAGSOC"));
|
d->add(dt.get("RAGSOC"));
|
||||||
d->add(look_lia() ? _lia->get("S7") : _nditte_r->get("FREQVIVA"));
|
d->add(_lia->get("S7"));
|
||||||
|
|
||||||
_nomiditte.add(d);
|
_nomiditte.add(d);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -176,15 +185,21 @@ bool TLiquidazione_app::user_create()
|
|||||||
{
|
{
|
||||||
TTemp_window w(TASK_WIN);
|
TTemp_window w(TASK_WIN);
|
||||||
w.iconize();
|
w.iconize();
|
||||||
if (recalc_only) _isprint = FALSE;
|
if (recalc_only)
|
||||||
|
_isprint = FALSE;
|
||||||
else printer().set_export_file(filename, is_header);
|
else printer().set_export_file(filename, is_header);
|
||||||
|
|
||||||
// calcola liquidazione
|
// calcola liquidazione
|
||||||
printer().setdate(printdate);
|
printer().setdate(printdate);
|
||||||
_recalc = one;
|
_recalc = one;
|
||||||
TApplication::set_firm(ditta);
|
TApplication::set_firm(ditta);
|
||||||
|
|
||||||
|
if (!look_lia()) return FALSE;
|
||||||
|
|
||||||
_nditte->zero(); _nditte_r->put("CODDITTA", ditta); _nditte->read();
|
_nditte->zero();
|
||||||
_freqviva = (look_lia() ? _lia->get("S7") : _nditte_r->get("FREQVIVA"));
|
_nditte_r->put("CODDITTA", ditta);
|
||||||
|
_nditte->read();
|
||||||
|
_freqviva = _lia->get("S7");
|
||||||
|
|
||||||
TRectype& mov = _cur->curr();
|
TRectype& mov = _cur->curr();
|
||||||
TRectype from(_cur->curr()); from.zero();
|
TRectype from(_cur->curr()); from.zero();
|
||||||
@ -435,7 +450,8 @@ bool TLiquidazione_app::set_liquidazione()
|
|||||||
{
|
{
|
||||||
const long firm = ((TToken_string&)_nomiditte[d]).get_long(0);
|
const long firm = ((TToken_string&)_nomiditte[d]).get_long(0);
|
||||||
if (firm == cod)
|
if (firm == cod)
|
||||||
{
|
{
|
||||||
|
bool minchia = _ditte->checked(j);
|
||||||
_selected.set(d, _ditte->checked(j));
|
_selected.set(d, _ditte->checked(j));
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
@ -10,26 +10,30 @@
|
|||||||
// -------------------- QUI comincia l'avventura --------------------------
|
// -------------------- QUI comincia l'avventura --------------------------
|
||||||
|
|
||||||
bool TLiquidazione_app::recalc_all()
|
bool TLiquidazione_app::recalc_all()
|
||||||
{
|
{
|
||||||
long l;
|
|
||||||
|
|
||||||
_prind = new TProgind(_selected.ones()*2,
|
_prind = new TProgind(_selected.ones()*2,
|
||||||
" Calcolo liquidazione... \n"
|
" Calcolo liquidazione... \n"
|
||||||
" Preparazione archivi ",
|
" Preparazione archivi ",
|
||||||
TRUE,TRUE,45);
|
TRUE,TRUE,45);
|
||||||
|
|
||||||
for (l = 0l, _nditte->first(); !_nditte->eof(); l++, _nditte->next())
|
for (int l = 0; l < _nomiditte.items(); l++)
|
||||||
{
|
{
|
||||||
if (_prind->iscancelled())
|
if (_prind->iscancelled())
|
||||||
break;
|
break;
|
||||||
|
|
||||||
if (_selected[l])
|
if (_selected[(long)l])
|
||||||
{
|
{
|
||||||
TApplication::set_firm(_nditte->curr().get_long("CODDITTA"));
|
TToken_string& nomeditta = (TToken_string&)_nomiditte[l];
|
||||||
|
|
||||||
|
_nditte->zero();
|
||||||
|
_nditte->curr().put("CODDITTA",nomeditta.get_long(0));
|
||||||
|
_nditte->read();
|
||||||
|
|
||||||
|
TApplication::set_firm(nomeditta.get_long(0));
|
||||||
_prind->addstatus(1);
|
_prind->addstatus(1);
|
||||||
|
|
||||||
// trimestrali impropriamente selezionate per mesi intermedi
|
// trimestrali impropriamente selezionate per mesi intermedi
|
||||||
_freqviva = look_lia() ? _lia->get("S7") : _nditte->curr().get("FREQVIVA");
|
_freqviva = nomeditta.get(2);
|
||||||
if (!is_month_ok(_month)) continue;
|
if (!is_month_ok(_month)) continue;
|
||||||
|
|
||||||
int need_refresh = FALSE;
|
int need_refresh = FALSE;
|
||||||
@ -369,21 +373,14 @@ void TLiquidazione_app::recalc_att(int month, const char* codatt)
|
|||||||
if (tipomov == acquisto && intra)
|
if (tipomov == acquisto && intra)
|
||||||
totintra += imposta;
|
totintra += imposta;
|
||||||
|
|
||||||
// acquisti non detraibili art. 19
|
|
||||||
if (tipodet == 9)
|
|
||||||
{
|
|
||||||
nond19_imp += imponibile;
|
|
||||||
nond19_iva += imposta;
|
|
||||||
continue;
|
|
||||||
}
|
|
||||||
|
|
||||||
// Altre cose di cui tener conto
|
// Altre cose di cui tener conto
|
||||||
if (tipomov == acquisto && (tipocr == 1 || tipocr == 5))
|
if (tipomov == acquisto && (tipocr == 1 || tipocr == 5))
|
||||||
// Acquisto beni per rivendita
|
// Acquisto beni per rivendita
|
||||||
{
|
{
|
||||||
acq_riv += imponibile;
|
acq_riv += imponibile;
|
||||||
acq_riv_iva += imposta;
|
acq_riv_iva += imposta;
|
||||||
}
|
}
|
||||||
|
|
||||||
else if (tipomov == acquisto && tipocr == 2)
|
else if (tipomov == acquisto && tipocr == 2)
|
||||||
// Acquisto beni ammortizzabili
|
// Acquisto beni ammortizzabili
|
||||||
{
|
{
|
||||||
@ -491,6 +488,15 @@ void TLiquidazione_app::recalc_att(int month, const char* codatt)
|
|||||||
acq_pint_iva += imposta;
|
acq_pint_iva += imposta;
|
||||||
continue; // precauzionale (in genere sono esenti IVA)
|
continue; // precauzionale (in genere sono esenti IVA)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// acquisti non detraibili art. 19
|
||||||
|
// possono valere per la ventilazione
|
||||||
|
if (tipodet == 9)
|
||||||
|
{
|
||||||
|
nond19_imp += imponibile;
|
||||||
|
nond19_iva += imposta;
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
// *****************************************
|
// *****************************************
|
||||||
// Fine casi particolari
|
// Fine casi particolari
|
||||||
|
@ -849,58 +849,51 @@ void TLiquidazione_app::set_plm(_DescrItem& d)
|
|||||||
|
|
||||||
void TLiquidazione_app::set_ptm(_DescrItem& d)
|
void TLiquidazione_app::set_ptm(_DescrItem& d)
|
||||||
{
|
{
|
||||||
if (d._r0.is_zero() && // acq. ammortizz.
|
|
||||||
d._r1.is_zero() && // IVA acq. ammort.
|
|
||||||
d._r2.is_zero() && // ammort. detr. 6%
|
|
||||||
d._r3.is_zero() && // IVA ammort detr. 6%
|
|
||||||
d._r4.is_zero() && // acq. beni rivendita
|
|
||||||
d._r5.is_zero() && // IVA acq. beni rivendita
|
|
||||||
d._r6.is_zero() && // acq. leasing
|
|
||||||
d._r7.is_zero() && // IVA acq. leasing
|
|
||||||
d._r8.is_zero() && // cessioni beni ammort.
|
|
||||||
d._r9.is_zero() && // IVA su cessioni ammort.
|
|
||||||
d._r10.is_zero() && // tot. esenti IVA
|
|
||||||
d._r11.is_zero() && // pro_rata
|
|
||||||
d._arr.items() == 0)
|
|
||||||
{
|
|
||||||
set_row(1,"");
|
|
||||||
set_auto_ff(TRUE);
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
set_row(1,"");
|
bool printed = FALSE;
|
||||||
set_row(2,"");
|
|
||||||
set_row(3,"ALTRI DATI RELATIVI ALLA DICHIARAZIONE@55gimponibile"
|
|
||||||
"@77gimposta@91gdetrazione");
|
|
||||||
set_row(4,"");
|
|
||||||
|
|
||||||
real spgn(d._s2);
|
real spgn(d._s2);
|
||||||
real spgn_iva(d._s3);
|
real spgn_iva(d._s3);
|
||||||
|
|
||||||
int row = 5;
|
int row = 5;
|
||||||
|
|
||||||
if (! (d._r8.is_zero() && d._r9.is_zero()))
|
if (!(d._r8.is_zero() && d._r9.is_zero()))
|
||||||
|
{
|
||||||
|
printed = TRUE;
|
||||||
set_row(row++, "Cessione beni ammortizzabili@50g%r@69g%r",
|
set_row(row++, "Cessione beni ammortizzabili@50g%r@69g%r",
|
||||||
&(d._r8),
|
&(d._r8),
|
||||||
&(d._r9));
|
&(d._r9));
|
||||||
|
}
|
||||||
if (! (d._r4.is_zero() && d._r5.is_zero()))
|
if (! (d._r4.is_zero() && d._r5.is_zero()))
|
||||||
|
{
|
||||||
|
printed = TRUE;
|
||||||
set_row(row++, "Acquisto beni destinati alla rivendita@50g%r@69g%r",
|
set_row(row++, "Acquisto beni destinati alla rivendita@50g%r@69g%r",
|
||||||
&(d._r4),
|
&(d._r4),
|
||||||
&(d._r5));
|
&(d._r5));
|
||||||
|
}
|
||||||
if (! (d._r0.is_zero() && d._r1.is_zero()))
|
if (! (d._r0.is_zero() && d._r1.is_zero()))
|
||||||
|
{
|
||||||
|
printed = TRUE;
|
||||||
set_row(row++, "Acquisto beni ammortizzabili IVA detraibile@50g%r@69g%r",
|
set_row(row++, "Acquisto beni ammortizzabili IVA detraibile@50g%r@69g%r",
|
||||||
&(d._r0),
|
&(d._r0),
|
||||||
&(d._r1));
|
&(d._r1));
|
||||||
|
}
|
||||||
if (! (spgn.is_zero() && spgn_iva.is_zero()))
|
if (! (spgn.is_zero() && spgn_iva.is_zero()))
|
||||||
|
{
|
||||||
set_row(row++, "Spese generali@50g%r@69g%r",
|
set_row(row++, "Spese generali@50g%r@69g%r",
|
||||||
&spgn,
|
&spgn,
|
||||||
&spgn_iva);
|
&spgn_iva);
|
||||||
|
}
|
||||||
if (! (d._r6.is_zero() && d._r7.is_zero()))
|
if (! (d._r6.is_zero() && d._r7.is_zero()))
|
||||||
|
{
|
||||||
|
printed = TRUE;
|
||||||
set_row(row++, "Altri beni strumentali acquisiti in leasing@50g%r@69g%r",
|
set_row(row++, "Altri beni strumentali acquisiti in leasing@50g%r@69g%r",
|
||||||
&(d._r6),
|
&(d._r6),
|
||||||
&(d._r7));
|
&(d._r7));
|
||||||
|
}
|
||||||
if (! (d._r2.is_zero() && d._r3.is_zero()))
|
if (! (d._r2.is_zero() && d._r3.is_zero()))
|
||||||
{
|
{
|
||||||
|
printed = TRUE;
|
||||||
real rn = d._r2 * real(DETRAZIONE_6PERCENTO);
|
real rn = d._r2 * real(DETRAZIONE_6PERCENTO);
|
||||||
set_row(row++, "Acquisto beni soggetti a detrazione (6%%)"
|
set_row(row++, "Acquisto beni soggetti a detrazione (6%%)"
|
||||||
"@50g%r@69g%r@86g%r",
|
"@50g%r@69g%r@86g%r",
|
||||||
@ -910,6 +903,7 @@ void TLiquidazione_app::set_ptm(_DescrItem& d)
|
|||||||
}
|
}
|
||||||
if (d._f0 && !(d._r11.is_zero()))
|
if (d._f0 && !(d._r11.is_zero()))
|
||||||
{
|
{
|
||||||
|
printed = TRUE;
|
||||||
set_row(row++, "%% PRO-RATA ed IVA non detraibile (%s%%)@69g%r",
|
set_row(row++, "%% PRO-RATA ed IVA non detraibile (%s%%)@69g%r",
|
||||||
(const char*)(d._s0),
|
(const char*)(d._s0),
|
||||||
&(d._r11));
|
&(d._r11));
|
||||||
@ -917,11 +911,23 @@ void TLiquidazione_app::set_ptm(_DescrItem& d)
|
|||||||
|
|
||||||
// items vari per dichiarazione annuale
|
// items vari per dichiarazione annuale
|
||||||
for (int i = 0; i < d._arr.items(); i++)
|
for (int i = 0; i < d._arr.items(); i++)
|
||||||
{
|
{
|
||||||
|
printed = TRUE;
|
||||||
_DescrItem& dd = (_DescrItem&)d._arr[i];
|
_DescrItem& dd = (_DescrItem&)d._arr[i];
|
||||||
set_annual(dd);
|
set_annual(dd);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (printed)
|
||||||
|
{
|
||||||
|
set_row(1,"");
|
||||||
|
set_row(2,"");
|
||||||
|
set_row(3,"ALTRI DATI RELATIVI ALLA DICHIARAZIONE@55gimponibile"
|
||||||
|
"@77gimposta@91gdetrazione");
|
||||||
|
set_row(4,"");
|
||||||
|
}
|
||||||
|
else
|
||||||
|
set_row(1,"");
|
||||||
|
|
||||||
// form feed
|
// form feed
|
||||||
set_auto_ff(TRUE);
|
set_auto_ff(TRUE);
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user