Patch level : 12.0 894
Files correlati : cg4.exe Commento to : Liquidazione e stampa registri al 20 Dicembre per acconti traccioato recorf per log regiistrazioni
This commit is contained in:
parent
384178351e
commit
47ca1cfc87
@ -153,13 +153,17 @@ bool TLiquidazione_app::user_create()
|
||||
{
|
||||
_year = subj.get(0);
|
||||
_month = subj.get_int(1);
|
||||
ditta = subj.get_long(2);
|
||||
char rcl = *(subj.get(3));
|
||||
_is_liq_acconto = _month == 20;
|
||||
if (_is_liq_acconto)
|
||||
_month = 12;
|
||||
ditta = subj.get_long(2);
|
||||
|
||||
char rcl = *(subj.get(3));
|
||||
TRectype & lim = (TRectype &) get_lim(_month);
|
||||
const bool def = lim.get_bool("B1");
|
||||
bool calc = !def && (lim.empty() || lim.get_bool("B0"));
|
||||
|
||||
_recalc = calc ? one : never;
|
||||
_recalc = (calc || _month == 12) ? one : never;
|
||||
_recalc_only = rcl == 'C';
|
||||
_recalc_regis = rcl == 'R' && atoi(_year) > 1997;
|
||||
_is_visliq = rcl == 'V';
|
||||
@ -330,7 +334,8 @@ bool TLiquidazione_app::user_create()
|
||||
// calcola liquidazione
|
||||
printer().setdate(printdate);
|
||||
|
||||
_recalc = never;
|
||||
if (_month != 12)
|
||||
_recalc = never;
|
||||
TApplication::set_firm(ditta);
|
||||
|
||||
const TRectype & lia = get_lia();
|
||||
@ -350,10 +355,15 @@ bool TLiquidazione_app::user_create()
|
||||
TRectype from(_cur->curr()); from.zero();
|
||||
TRectype to(from);
|
||||
TDate f(1, 1, atoi(_year));
|
||||
TDate t(1, _month == 13 ? 12 : _month, atoi(_year));
|
||||
TDate t(1, _month, atoi(_year));
|
||||
|
||||
if (_month == 13)
|
||||
t.set_month(12);
|
||||
// qui se liquidazione diff. su ditta si parte da year-4 e filtro su anno o data liquid diff sul movim nel periodo
|
||||
t.set_end_month();
|
||||
if (_is_liq_acconto)
|
||||
t.set_day(_ver->giorno_acc());
|
||||
else
|
||||
t.set_end_month();
|
||||
from.put(MOV_DATAREG, f);
|
||||
to.put(MOV_DATAREG, t);
|
||||
_cur->setregion(from, to);
|
||||
@ -586,10 +596,15 @@ bool TLiquidazione_app::ch_year_handler(TMask_field& f, KEY key)
|
||||
(wht)f.mask().get_int(CG43_RDB_VERS) : all);
|
||||
TMask& msk = f.mask();
|
||||
const int vers = msk.get_int(CG43_RDB_VERS);
|
||||
const int m = (vers == 3) ? msk.get_int(CG43_LST_TRIM) : msk.get_int(CG43_LST_MESE);
|
||||
int m = (vers == 3) ? msk.get_int(CG43_LST_TRIM) : msk.get_int(CG43_LST_MESE);
|
||||
|
||||
app()._is_liq_acconto = (m == 20);
|
||||
if (app()._is_liq_acconto)
|
||||
m = 12;
|
||||
|
||||
const TRectype & lim = app().get_lim(m);
|
||||
const bool def = lim.get_bool("B1");
|
||||
const bool calc = !def && (lim.empty() || lim.get_bool("B0"));
|
||||
const bool calc = m == 12 || !def && lim.empty() || lim.get_bool("B0");
|
||||
|
||||
msk.set(CG43_CHK_CALCULATE, app()._lim_cleared && calc, 0x3);
|
||||
msk.set(CG43_CHK_FINAL, app()._lim_cleared && def, 0x3);
|
||||
@ -690,6 +705,11 @@ bool TLiquidazione_app::what_freq_handler(TMask_field& f, KEY key)
|
||||
if (key == K_SPACE)
|
||||
{
|
||||
int month = f.mask().get_int(CG43_LST_MESE);
|
||||
|
||||
app()._is_liq_acconto = (month == 20);
|
||||
if (app()._is_liq_acconto)
|
||||
month = 12;
|
||||
|
||||
if (f.get()[0] == '3') // trimestre intelligente
|
||||
{
|
||||
if (month > 3)
|
||||
@ -778,7 +798,11 @@ bool TLiquidazione_app::chk_calculate_handler(TMask_field& f, KEY key)
|
||||
TMask& m = f.mask();
|
||||
// Abilita solo se il mese di ricalcolo e' != 13 (annuale) e non e' checkkato il campo
|
||||
const int vers = m.get_int(CG43_RDB_VERS);
|
||||
const int mese = vers == 3 ? m.get_int(CG43_LST_TRIM) : m.get_int(CG43_LST_MESE);
|
||||
int mese = vers == 3 ? m.get_int(CG43_LST_TRIM) : m.get_int(CG43_LST_MESE);
|
||||
|
||||
app()._is_liq_acconto = (mese == 20);
|
||||
if (app()._is_liq_acconto)
|
||||
mese = 12;
|
||||
const bool abilita = m.get_bool(CG43_CHK_CALCULATE) && mese != 13;
|
||||
m.enable(CG43_LST_CALC, abilita);
|
||||
}
|
||||
@ -893,10 +917,20 @@ bool TLiquidazione_app::set_liquidazione()
|
||||
// handlers have set everything
|
||||
_month = _what == trimestre ? m.get_int(CG43_LST_TRIM) : m.get_int(CG43_LST_MESE);
|
||||
|
||||
app()._is_liq_acconto = (_month == 20);
|
||||
if (app()._is_liq_acconto)
|
||||
{
|
||||
_month = 12;
|
||||
_recalc = one;
|
||||
}
|
||||
else
|
||||
_recalc = m.get_bool(CG43_CHK_CALCULATE) || _month == 12 ? one : never;
|
||||
|
||||
|
||||
_year = m.get(CG43_FLD_ANNO);
|
||||
_date = m.get(CG43_FLD_DATA);
|
||||
_isprint = m.get_bool(CG43_CHK_STAMPA);
|
||||
_recalc = m.get_bool(CG43_CHK_CALCULATE) ? one : never;
|
||||
// _recalc = m.get_bool(CG43_CHK_CALCULATE) ? one : never;
|
||||
_printonly = !m.get_bool(CG43_CHK_CALCULATE);
|
||||
_definitiva = m.get_bool(CG43_CHK_FINAL);
|
||||
|
||||
|
@ -27,15 +27,16 @@ BEGIN
|
||||
CHECKTYPE REQUIRED
|
||||
END
|
||||
|
||||
LIST CG43_LST_MESE 15
|
||||
LIST CG43_LST_MESE 20
|
||||
BEGIN
|
||||
PROMPT 28 3 "Periodo "
|
||||
HELP "Mese per cui effettuare il calcolo liquidazione"
|
||||
ITEM "13|13a liquid."
|
||||
ITEM "20|Acconto Dicembre"
|
||||
FLAGS "MP"
|
||||
END
|
||||
|
||||
LIST CG43_LST_TRIM 15
|
||||
LIST CG43_LST_TRIM 20
|
||||
BEGIN
|
||||
PROMPT 28 3 "Periodo "
|
||||
HELP "Trimestre di cui effettuare il calcolo liquidazione"
|
||||
@ -44,6 +45,7 @@ BEGIN
|
||||
ITEM "9|3 Trimestre "
|
||||
ITEM "12|4 Trimestre"
|
||||
ITEM "13|13a liquid."
|
||||
ITEM "20|Acconto Dicembre"
|
||||
END
|
||||
|
||||
BOOLEAN CG43_CHK_CALCULATE
|
||||
|
@ -1085,12 +1085,14 @@ void TLiquidazione_app::recalc_att(int month, const char* codatt, TAssoc_array &
|
||||
todate.set_month(4);
|
||||
todate.set_year(year_int + 1);
|
||||
}
|
||||
|
||||
data_rif_cassa.set_end_month();
|
||||
todate.set_end_month();
|
||||
fine.set_end_month();
|
||||
if (year_int >= 2017 && month == 13)
|
||||
t = todate;
|
||||
else
|
||||
if (_is_liq_acconto)
|
||||
t.set_day(_ver->giorno_acc());
|
||||
from.put(MOV_REG, fromreg);
|
||||
to.put(MOV_REG, toreg);
|
||||
|
||||
@ -1157,7 +1159,7 @@ void TLiquidazione_app::recalc_att(int month, const char* codatt, TAssoc_array &
|
||||
#ifdef DBG
|
||||
long nr = _mov->get_long(MOV_NUMREG);
|
||||
|
||||
if (nr == 97882 || nr == 98707)
|
||||
if (nr == 18489 || nr == 27710)
|
||||
int i = 1;
|
||||
#endif
|
||||
|
||||
@ -1184,10 +1186,6 @@ void TLiquidazione_app::recalc_att(int month, const char* codatt, TAssoc_array &
|
||||
if (date.year() != year_int) // Controlla anno di appartenenza, altrimenti is_date_ok potrebbe non funzionare
|
||||
continue;
|
||||
}
|
||||
#ifdef DBG
|
||||
if (nr == 97882 || nr == 98707)
|
||||
int i = 1;
|
||||
#endif
|
||||
const TRectype& rcs = _cur->curr(LF_CAUSALI);
|
||||
const TDate datareg = _mov->get_date(MOV_DATAREG);
|
||||
const TDate datadoc = _mov->get_date(MOV_DATADOC);
|
||||
@ -1240,7 +1238,6 @@ void TLiquidazione_app::recalc_att(int month, const char* codatt, TAssoc_array &
|
||||
TPointer_array pagscatt; // Righe di pagsca interessate
|
||||
|
||||
#ifdef DBG
|
||||
if (nr == 97882 || nr == 98707)
|
||||
int i = 1;
|
||||
#endif
|
||||
|
||||
@ -1285,7 +1282,7 @@ void TLiquidazione_app::recalc_att(int month, const char* codatt, TAssoc_array &
|
||||
bool regular_month = orizzonte >= date;
|
||||
bool first_month = regular_month && date > inizio + 1L;
|
||||
#ifdef DBG
|
||||
if (nr == 97882 || nr == 98707)
|
||||
if (rp.get_long(PART_NREG) == 100616)
|
||||
int i = 1;
|
||||
#endif
|
||||
flag_pg_nc = rp.calcola_pagato_periodo(first_month ? botime : inizio + 1L, orizzonte, pg_per, nc_per, &pagscatt) && regular_month;
|
||||
@ -1555,7 +1552,6 @@ void TLiquidazione_app::recalc_att(int month, const char* codatt, TAssoc_array &
|
||||
#ifdef DBG
|
||||
long nr = _mov->get_long(MOV_NUMREG);
|
||||
|
||||
if (nr == 97882 || nr == 98707)
|
||||
int i = 1;
|
||||
#endif
|
||||
|
||||
@ -1942,6 +1938,82 @@ void TLiquidazione_app::recalc_att(int month, const char* codatt, TAssoc_array &
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/* Calcoli sprecati: dal 2016 calcolimao la comuncazione annuale direttamente in cg5
|
||||
const TString& iva_vpn = _iva->get(tipomov == vendita ? "S10" : "S11");
|
||||
|
||||
// Aggiunto "&& is_detraibile==0" al test altrimenti somma due volte imponibile_orig (22/01/2015)
|
||||
if (!bIsMovDiff && iva_vpn.full() && _mov->get_int(MOV_ANNOIVA) == year_int && is_detraibile == 0)
|
||||
{
|
||||
switch (tipomov)
|
||||
{
|
||||
case vendita: // CD1 - 1 2 3 4
|
||||
{
|
||||
// bool is_valid = !corrisp && tipodoc != "AF" && (cau_intra || !cau_valintra) &&
|
||||
// sosp_imp != normale && sosp_imp != liquidazione;
|
||||
bool is_valid = tipodoc != "AF" && sosp_imp != normale && sosp_imp != liquidazione;
|
||||
if (is_valid)
|
||||
{
|
||||
cessioni_cd1_1 += imponibile_orig;
|
||||
if (iva_vpn.starts_with("CD1"))
|
||||
{
|
||||
if (tipocr == 4)
|
||||
cessioni_cd1_5 += imponibile_orig;
|
||||
}
|
||||
if (!cau_intra)
|
||||
{
|
||||
if (iva_vpn == "CD12")
|
||||
cessioni_cd1_2 += imponibile_orig; else
|
||||
if (iva_vpn == "CD13")
|
||||
cessioni_cd1_3 += imponibile_orig;
|
||||
}
|
||||
else
|
||||
{
|
||||
if (iva_vpn == "CD14")
|
||||
cessioni_cd1_4 += imponibile_orig;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
break;
|
||||
case acquisto: // CD2 - 1 2 3 4
|
||||
{
|
||||
acquisti_cd2_1 += imponibile_orig;
|
||||
if (iva_vpn.starts_with("CD2"))
|
||||
{
|
||||
if (tipocr == 2 || tipocr == 3 || tipocr == 8)
|
||||
acquisti_cd2_5 += imponibile_orig;
|
||||
}
|
||||
if (!cau_intra)
|
||||
{
|
||||
if (iva_vpn == "CD22")
|
||||
acquisti_cd2_2 += imponibile_orig;
|
||||
else
|
||||
if (iva_vpn == "CD23")
|
||||
acquisti_cd2_3 += imponibile_orig;
|
||||
}
|
||||
else
|
||||
{
|
||||
if (iva_vpn == "CD24")
|
||||
acquisti_cd2_4 += imponibile_orig;
|
||||
}
|
||||
if (iva_vpn == "CD31")
|
||||
{
|
||||
oroargento_cd3_1 += imponibile_orig;
|
||||
oroargento_cd3_2 += imposta_orig;
|
||||
}
|
||||
if (iva_vpn == "CD33")
|
||||
{
|
||||
rottami_cd3_3 += imponibile_orig;
|
||||
rottami_cd3_4 += imposta_orig;
|
||||
}
|
||||
}
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
}
|
||||
*/
|
||||
}
|
||||
|
||||
bool bMovDiffToAdd = true;
|
||||
|
@ -23,8 +23,8 @@ bool TLiquidazione_app::is_month_ok_strict(int x, int month) const
|
||||
// true se il mese passato e' compatibile con il regime
|
||||
// di liquidazione e (opz) non e' maggiore di quello scelto
|
||||
{
|
||||
if (month == -1) month = x;
|
||||
return _freqviva == "M" ? ( x > 0 && x <= month) : ( x <= month && is_trim(x));
|
||||
if (month == -1) month = x;
|
||||
return _freqviva == "M" ? ( x > 0 && x <= month) : ( x <= month && is_trim(x));
|
||||
}
|
||||
|
||||
bool TLiquidazione_app::is_month_plain(int x) const
|
||||
@ -36,7 +36,7 @@ bool TLiquidazione_app::is_month_plain(int x) const
|
||||
{
|
||||
// aggiusta al trimestre il mese da calcolare
|
||||
int mto = _month;
|
||||
mto += 2 - ((mto-1) % 3);
|
||||
mto += 2 - ((mto-1) % 3);
|
||||
ok = x > (mto - 3) && x <= mto;
|
||||
}
|
||||
return ok;
|
||||
@ -65,7 +65,7 @@ int TLiquidazione_app::liq_month(int x)
|
||||
// ritorna il mese da liquidare (= LIM presente)
|
||||
// che corrisponde al mese passato
|
||||
{
|
||||
if (x == 13 || _freqviva == "M")
|
||||
if (x == 13 || _freqviva == "M")
|
||||
return x;
|
||||
else
|
||||
return next_trim(x);
|
||||
@ -82,8 +82,8 @@ bool TLiquidazione_app::is_in_liq_period(const TDate& d)
|
||||
{
|
||||
bool ok = false;
|
||||
const int y = atoi(_year);
|
||||
if (_freqviva == "M")
|
||||
{
|
||||
if (_freqviva == "M")
|
||||
{
|
||||
ok = d.month() == _month && d.year() == y;
|
||||
}
|
||||
else
|
||||
@ -127,7 +127,7 @@ bool TLiquidazione_app::is_date_ok(const TDate& d, int month, int liqmonth, int
|
||||
|
||||
if (month == 13)
|
||||
return true; // was regmonth <= month;
|
||||
else
|
||||
else
|
||||
{
|
||||
if (_freqviva == "M") // Guy!!!
|
||||
return regmonth == month;
|
||||
@ -137,10 +137,13 @@ bool TLiquidazione_app::is_date_ok(const TDate& d, int month, int liqmonth, int
|
||||
}
|
||||
else // Nuova selezione dal 1998 in poi
|
||||
{
|
||||
if (month <= 12)
|
||||
if (_is_liq_acconto)
|
||||
return (regyear == year) && ((regmonth == month && liqmonth == 0) || (liqmonth == month)) && d.day() <= _ver->giorno_acc();
|
||||
else // Annuale, month == 13
|
||||
if (month <= 12)
|
||||
return (regyear == year) && ((regmonth == month && liqmonth == 0) || (liqmonth == month));
|
||||
else // Annuale, month == 13
|
||||
return (regyear == year && liqmonth != 12) || (regyear == year + 1 && liqmonth == 12);
|
||||
else
|
||||
return (regyear == year && liqmonth != 12) || (regyear == year + 1 && liqmonth == 12);
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
@ -809,62 +809,6 @@ void TLiquidazione_app::describe_pims(int month, const char* codatt, const bool
|
||||
art40_iva += va7v;
|
||||
}
|
||||
}
|
||||
// if (tipomov == vendita) // ci sono anche gli acquisti per cassa!
|
||||
{
|
||||
/* Non voglio piu' il riepilogo delle fatture emesse IVA diff
|
||||
if (!diffimp.is_zero() || !diffiva.is_zero() ||
|
||||
!diffimp_acq.is_zero() || !diffiva_acq.is_zero())
|
||||
{
|
||||
const word id = describe_pis ? PIS_ROW_D : PIM_ROW_D;
|
||||
int j;
|
||||
|
||||
d = NULL;
|
||||
for (j = totpos + 1; j < _descr_arr.items(); j++)
|
||||
{
|
||||
_DescrItem * wd = (_DescrItem*)&_descr_arr[j];
|
||||
const bool found = wd->_flags == id && wd->_s0 == ref;
|
||||
|
||||
if (found && wd->_s1 == codiva)
|
||||
{
|
||||
d = wd;
|
||||
break;
|
||||
}
|
||||
if (wd->_flags == TOT_ROW_D)
|
||||
break;
|
||||
if (found && wd->_s1 > codiva)
|
||||
break;
|
||||
}
|
||||
if (d == NULL)
|
||||
{
|
||||
const bool isfirst = head == NULL;
|
||||
|
||||
if (isfirst)
|
||||
{
|
||||
head = new _DescrItem(describe_pis ? PIS_HEAD_D : PIM_HEAD_D);
|
||||
_descr_arr.insert(head, j++);
|
||||
head->_f0 = false;
|
||||
head->_f1 = true;
|
||||
head->_f2 = atoi(activity.right(1)); // Tipo attività = 1 (servizi) o 2 (mista)
|
||||
head->_f3 = tipomov;
|
||||
totd = new _DescrItem(TOT_ROW_D);
|
||||
_descr_arr.insert(totd, j);
|
||||
}
|
||||
d = new _DescrItem(id);
|
||||
_descr_arr.insert(d, j);
|
||||
d->_f0 = isfirst;
|
||||
d->_s0 = ref;
|
||||
d->_s1 = codiva;
|
||||
}
|
||||
d->_r26 += diffimp;
|
||||
d->_r27 += diffiva;
|
||||
t26 += diffimp;
|
||||
t27 += diffiva;
|
||||
d->_r30 += diffimp_acq;
|
||||
d->_r31 += diffiva_acq;
|
||||
t30 += diffimp_acq;
|
||||
t31 += diffiva_acq;
|
||||
}
|
||||
*/
|
||||
if (!diffincimp.is_zero() || !diffinciva.is_zero() ||
|
||||
!diffincimp_acq.is_zero() || !diffinciva_acq.is_zero())
|
||||
{
|
||||
@ -915,7 +859,7 @@ void TLiquidazione_app::describe_pims(int month, const char* codatt, const bool
|
||||
t32 += diffincimp_acq;
|
||||
t33 += diffinciva_acq;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
} // End of _pim cycle
|
||||
|
||||
@ -1454,6 +1398,9 @@ void TLiquidazione_app::set_firm(_DescrItem& d)
|
||||
if (d._s2 == "T")
|
||||
tim_title << format(FR(" del %d° Trimestre %s"), d._f1/3, (const char*) _year);
|
||||
else
|
||||
if (_is_liq_acconto)
|
||||
tim_title << format(FR(" al %d %s %s"), _ver->giorno_acc(), itom(d._f1), (const char*)_year);
|
||||
else
|
||||
tim_title << format(FR(" del mese di %s %s"), itom(d._f1), (const char*)_year);
|
||||
}
|
||||
|
||||
@ -1515,6 +1462,9 @@ void TLiquidazione_app::set_att(_DescrItem& d)
|
||||
if (d._s4 == "T")
|
||||
tim_title << format(FR(" del %d° Trimestre %s"), d._f1 / 3, (const char*)_year);
|
||||
else
|
||||
if (_is_liq_acconto)
|
||||
tim_title << format(FR(" al %d %s %s"), _ver->giorno_acc(), itom(d._f1), (const char*)_year);
|
||||
else
|
||||
tim_title << format(FR(" del mese di %s %s"), itom(d._f1), (const char*)_year);
|
||||
}
|
||||
|
||||
@ -2350,6 +2300,13 @@ void TLiquidazione_app::set_grand_2000(_DescrItem& d, int &rw)
|
||||
real cred_trasf(tt.get(4)); cred_trasf = -cred_trasf;
|
||||
|
||||
real acc_dec(d._s1);
|
||||
real corr_acc;
|
||||
|
||||
if (_is_liq_acconto)
|
||||
{
|
||||
corr_acc = acc_dec;
|
||||
acc_dec = ZERO;
|
||||
}
|
||||
real res_cred(d._s2);
|
||||
real res_debt(d._s3);
|
||||
real rett_debt(0.0);
|
||||
@ -2439,7 +2396,7 @@ void TLiquidazione_app::set_grand_2000(_DescrItem& d, int &rw)
|
||||
|
||||
if (_month == 13) cre_deb_per += versamenti;
|
||||
|
||||
print_importo(rw++, TR("IVA dovuta o a credito per il periodo"), cre_deb_per);
|
||||
print_importo(rw++, TR("IVA dovuta o a credito per il periodo"), cre_deb_per + corr_acc);
|
||||
|
||||
if (crediti_speciali != ZERO || _is_visliq)
|
||||
set_row(rw++,FR("%s@11gCrediti speciali%s@58g%r"),
|
||||
@ -2471,7 +2428,7 @@ void TLiquidazione_app::set_grand_2000(_DescrItem& d, int &rw)
|
||||
else
|
||||
if (_is_visliq) rw++;
|
||||
|
||||
const real iva = risultato + interessi;
|
||||
const real iva = risultato + interessi + corr_acc;
|
||||
if (_month == 13 && credito_compensabile)
|
||||
{
|
||||
real credito_utilizzabile = lia.get_real("R0");
|
||||
|
@ -457,7 +457,14 @@ bool TStampa_registri_app::mask_mese (TMask_field& f, KEY k)
|
||||
if (id == MESE) //Per stampa su libro unico
|
||||
mese = f.mask().get_int(MESE);
|
||||
if (id == FINO_A_MESE)
|
||||
{
|
||||
mese = m.get_int(FINO_A_MESE); //Per stampa su bollato
|
||||
if (mese == 20)
|
||||
mese = 12;
|
||||
if (mese == 12)
|
||||
m.show(TIPO_RIEPILOGATIVO);
|
||||
else m.hide(TIPO_RIEPILOGATIVO);
|
||||
}
|
||||
if (id == MESE)
|
||||
{
|
||||
if (mese == 12)
|
||||
@ -470,13 +477,10 @@ bool TStampa_registri_app::mask_mese (TMask_field& f, KEY k)
|
||||
m.hide (TIPO_RIEPILOGATIVO);
|
||||
m.hide (RIF_VID);
|
||||
}
|
||||
mese = m.get_int(FINO_A_MESE); //Per stampa su bollato
|
||||
if (mese == 20)
|
||||
mese = 12;
|
||||
}
|
||||
if (id == FINO_A_MESE)
|
||||
{
|
||||
if (mese == 12)
|
||||
m.show (TIPO_RIEPILOGATIVO);
|
||||
else m.hide (TIPO_RIEPILOGATIVO);
|
||||
}
|
||||
}
|
||||
if (k==K_TAB && f.mask().is_running())
|
||||
{
|
||||
@ -601,6 +605,11 @@ bool TStampa_registri_app::mask_libun (TMask_field& f, KEY k)
|
||||
|
||||
const TString& cod = f.mask().get(CODICE_LIBRO_IVA);
|
||||
int fino_a_mese = f.mask().get_int(MESE);
|
||||
|
||||
if (fino_a_mese == 12)
|
||||
f.mask().show(TIPO_RIEPILOGATIVO);
|
||||
else f.mask().hide(TIPO_RIEPILOGATIVO);
|
||||
|
||||
int anno = f.mask().get_int(ANNO);
|
||||
bool ok = false;
|
||||
int last_mese = 13;
|
||||
@ -926,7 +935,7 @@ bool TStampa_registri_app::user_create()
|
||||
add_file(LF_MOV);
|
||||
add_file(LF_RMOVIVA);
|
||||
|
||||
return true;
|
||||
return true;
|
||||
}
|
||||
|
||||
bool TStampa_registri_app::user_destroy()
|
||||
@ -2305,7 +2314,7 @@ bool TStampa_registri_app::preprocess_page(int file, int counter)
|
||||
merge_export_file(t,false,true);
|
||||
_intesta_liq = false;
|
||||
reset_print();
|
||||
remove(t);
|
||||
t.fremove();
|
||||
}
|
||||
}
|
||||
_st_liq[m] = true;
|
||||
@ -3118,7 +3127,7 @@ void TStampa_registri_app::liq_b0_settato()
|
||||
_intesta_liq = true;
|
||||
merge_export_file(f,false,true);
|
||||
_intesta_liq = false;
|
||||
remove(f);
|
||||
f.fremove();
|
||||
}
|
||||
}
|
||||
|
||||
@ -3302,8 +3311,16 @@ void TStampa_registri_app::aggiorna_reg(const bool aggiorna_vidi)
|
||||
if (!_mov_empty) //cioe' se e' stata stampata almeno una pagina
|
||||
{ //controllo inutile visto che e' chiamata nella
|
||||
//preprocess_header
|
||||
TDate ultima_data(_datareg);
|
||||
ultima_data.set_end_month();
|
||||
TDate ultima_data(_datareg);
|
||||
|
||||
if (_stampa_acconto)
|
||||
{
|
||||
TInteressi_IVA_table i; i.read(_annoIVA, _fino_a_mese);
|
||||
|
||||
ultima_data.set_day(i.giorno_acc());
|
||||
}
|
||||
else
|
||||
ultima_data.set_end_month();
|
||||
|
||||
if (ultima_data > d)
|
||||
Tabreg.put("D3", ultima_data);
|
||||
@ -3313,7 +3330,7 @@ void TStampa_registri_app::aggiorna_reg(const bool aggiorna_vidi)
|
||||
|
||||
Tabreg.put("I1", _pagine_stampate);
|
||||
|
||||
if (_intesta_liq)
|
||||
if (!_stampa_acconto && _intesta_liq)
|
||||
if (_tipo_riepilogativo == 'A')
|
||||
Tabreg.put("I4", 13L);
|
||||
else Tabreg.put("I4", (long)_datareg.month());
|
||||
@ -3585,7 +3602,7 @@ void TStampa_registri_app::no_movimenti()
|
||||
merge_export_file(f,false,true);
|
||||
printer().formfeed();
|
||||
_intesta_liq = false;
|
||||
remove(f);
|
||||
f.fremove();
|
||||
}
|
||||
}
|
||||
}//for
|
||||
@ -3638,7 +3655,7 @@ void TStampa_registri_app::stampa_liq_mesi_succ()
|
||||
printer().formfeed();
|
||||
merge_export_file(t,false,true);
|
||||
_intesta_liq = false;
|
||||
remove(t);
|
||||
t.fremove();
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -3657,10 +3674,15 @@ void TStampa_registri_app::send_message(char tipo, const TFilename& nome, int me
|
||||
|
||||
TToken_string ss(36);
|
||||
ss.add(_annoIVA);
|
||||
if (_tipo_riepilogativo == 'A' && mese == 12)
|
||||
ss.add(13);
|
||||
else
|
||||
ss.add(mese);
|
||||
if (_tipo_riepilogativo == 'A' && mese == 12)
|
||||
ss.add(13);
|
||||
else
|
||||
{
|
||||
if (mese == 12 && _stampa_acconto)
|
||||
ss.add(20);
|
||||
else
|
||||
ss.add(mese);
|
||||
}
|
||||
ss.add(_ditta);
|
||||
ss.add(tipo);
|
||||
ss.add(_data_stampa.string());
|
||||
@ -3753,9 +3775,14 @@ bool TStampa_registri_app::set_print(int n)
|
||||
}
|
||||
else //stampe definitive
|
||||
{
|
||||
_fino_a_mese = m.get_int(FINO_A_MESE);
|
||||
_stampa_acconto = (_fino_a_mese == 20);
|
||||
|
||||
if (_stampa_acconto)
|
||||
_fino_a_mese = 12;
|
||||
if (_tipo_stampa == bollato || _tipo_stampa == rif_giornale)
|
||||
{
|
||||
_fino_a_mese = m.get_int(FINO_A_MESE);
|
||||
|
||||
_data_da = TDate(1, 1, _annoIVA); // Meglio cosi'
|
||||
}
|
||||
else //stampa su libro unico
|
||||
@ -3771,7 +3798,11 @@ bool TStampa_registri_app::set_print(int n)
|
||||
int giorni_del_mese = 31;
|
||||
if (_fino_a_mese == 12)
|
||||
{
|
||||
giorni_del_mese = 31;
|
||||
TInteressi_IVA_table i; i.read(_annoIVA, _fino_a_mese);
|
||||
|
||||
if (_stampa_acconto)
|
||||
giorni_del_mese = i.giorno_acc();
|
||||
|
||||
_tipo_riepilogativo = m.get(TIPO_RIEPILOGATIVO)[0];
|
||||
}
|
||||
else
|
||||
|
@ -57,6 +57,7 @@ class TStampa_registri_app : public TPrintapp
|
||||
long _u_stampata, _primast, __firm, _uprotivap, _ditta;
|
||||
long _numini, _pagine_stampate;
|
||||
int _fino_a_mese, _cod_un_loc;
|
||||
bool _stampa_acconto;
|
||||
int _annoIVA, _r, _stampa_width, _mese_ultima_liq, _mese_credito;
|
||||
int _stampa_len, _stampa_mese, _size_header;
|
||||
real _totale_doc, _credito;
|
||||
@ -72,7 +73,7 @@ class TStampa_registri_app : public TPrintapp
|
||||
|
||||
messaggio _scelta;
|
||||
tipo_stampa _tipo_stampa;
|
||||
|
||||
|
||||
protected:
|
||||
|
||||
static bool filter_func (const TRelation * r);
|
||||
|
@ -137,7 +137,7 @@ BEGIN
|
||||
WARNING "Inserire la data di stampa"
|
||||
END
|
||||
|
||||
GROUPBOX DLG_NULL 35 4
|
||||
GROUPBOX DLG_NULL 36 4
|
||||
BEGIN
|
||||
PROMPT 2 8 "Stampa movimenti"
|
||||
END
|
||||
@ -158,18 +158,20 @@ BEGIN
|
||||
GROUP 3
|
||||
END
|
||||
|
||||
LISTBOX FINO_A_MESE 10
|
||||
LISTBOX FINO_A_MESE 20
|
||||
BEGIN
|
||||
PROMPT 3 9 "Fino al mese "
|
||||
PROMPT 3 9 "Fino al mese"
|
||||
HELP "Mese fino al quale eseguire la stampa"
|
||||
ITEM "20|Acconto di dicembre"
|
||||
FLAGS "M"
|
||||
GROUP 1
|
||||
END
|
||||
|
||||
LISTBOX MESE 10
|
||||
LISTBOX MESE 20
|
||||
BEGIN
|
||||
PROMPT 3 9 "Mese "
|
||||
HELP "Mese di cui eseguire la stampa"
|
||||
ITEM "20|Acconto di dicembre"
|
||||
FLAGS "M"
|
||||
GROUP 2
|
||||
END
|
||||
|
@ -30,4 +30,4 @@
|
||||
#define F_P_LIQ_DIFFERI 158
|
||||
#define F_ANNOES_2 159
|
||||
#define F_MESEES_2 160
|
||||
|
||||
#define F_I_GACC 161
|
||||
|
@ -276,6 +276,12 @@ BEGIN
|
||||
FIELD R10
|
||||
END
|
||||
|
||||
NUMBER F_I_GACC 2
|
||||
BEGIN
|
||||
PROMPT 2 14 "Giorno acc. "
|
||||
FIELD I0
|
||||
END
|
||||
|
||||
ENDPAGE
|
||||
|
||||
ENDMASK
|
||||
|
19
src/include/dblog.h
Normal file
19
src/include/dblog.h
Normal file
@ -0,0 +1,19 @@
|
||||
#ifndef __DBLOG_H
|
||||
#define __DBLOG_H
|
||||
|
||||
#define DBL_TIMESTAMP "TIMESTAMP"
|
||||
#define DBL_FILE "FILE"
|
||||
#define DBL_KEY "KEY"
|
||||
#define DBL_RECNO "RECNO"
|
||||
#define DBL_DATA "DATA"
|
||||
#define DBL_ORA "ORA"
|
||||
#define DBL_CMDLINE "CMDLINE"
|
||||
#define DBL_YEAR "YEAR"
|
||||
#define DBL_RELEASE "RELEASE"
|
||||
#define DBL_TAG "TAG"
|
||||
#define DBL_PATCH "PATCH"
|
||||
#define DBL_CMD "CMD"
|
||||
#define DBL_USER "USER"
|
||||
#define DBL_SESSION "SESSION"
|
||||
#define DBL_TRANS "TRANS"
|
||||
#endif
|
3
src/include/f181.dir
Normal file
3
src/include/f181.dir
Normal file
@ -0,0 +1,3 @@
|
||||
181
|
||||
0
|
||||
$dblog|||319|0|Log Transazioni|||
|
20
src/include/f181.trr
Normal file
20
src/include/f181.trr
Normal file
@ -0,0 +1,20 @@
|
||||
181
|
||||
15
|
||||
TIMESTAMP|3|10|0|Data e Ora
|
||||
FILE|2|4|0|File
|
||||
KEY|1|200|0|Chiave 1
|
||||
RECNO|3|10|0|Numero di record
|
||||
DATA|5|8|0|Data
|
||||
ORA|7|1|0|Ora
|
||||
CMDLINE|1|40|0|Command line
|
||||
YEAR|2|4|0|Anno
|
||||
RELEASE|2|3|0|Release
|
||||
TAG|2|4|0|Tag
|
||||
PATCH|1|4|0|Patch
|
||||
CMD|2|1|0|Comando
|
||||
USER|1|15|0|Utente
|
||||
SESSION|2|4|0|Sessione
|
||||
TRANS|11|10|0|Transazione
|
||||
2
|
||||
TIMESTAMP+FILE+RECNO|
|
||||
FILE+KEY+TIMESTAMP|X
|
Loading…
x
Reference in New Issue
Block a user