Corretti errori segnalati in data 05/12/95
git-svn-id: svn://10.65.10.50/trunk@2381 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
parent
8dd89755a5
commit
12e041c8b3
@ -818,6 +818,7 @@ void TListaMov_application::set_page(int file, int count)
|
||||
set_row (_n, "@88gdel@92g@d", FLD(LF_MOV,MOV_DATADOC));
|
||||
int annoese = current_cursor()->curr(LF_MOV).get_int(MOV_ANNOES);
|
||||
TDate data = current_cursor()->curr(LF_MOV).get_date(MOV_DATAREG);
|
||||
TDate dcomp = current_cursor()->curr(LF_MOV).get_date(MOV_DATACOMP);
|
||||
TString16 reg = current_cursor()->curr(LF_MOV).get(MOV_REG);
|
||||
int anno = current_cursor()->curr(LF_MOV).get_int(MOV_ANNOIVA);
|
||||
char prov = current_cursor()->curr(LF_MOV).get_char(MOV_PROVVIS);
|
||||
@ -830,14 +831,15 @@ void TListaMov_application::set_page(int file, int count)
|
||||
}
|
||||
else if (_provvis == 2 && (prov == 'P' || prov == 'N'))
|
||||
set_row (_n, "@103gMov.Provvisorio");
|
||||
//15/12/1995
|
||||
/*
|
||||
if (ae != annoese)
|
||||
if (_annoes == 0) //se non indicato l'anno nella maschera
|
||||
set_row (_n, "@120gcomp @4n", FLD(LF_MOV,MOV_ANNOES));
|
||||
/*
|
||||
if (_scelta_stampa == 0)
|
||||
if (_stampa_anno_comp)
|
||||
set_row (_n, "@127g@4n", FLD(LF_MOV,MOV_ANNOES));
|
||||
*/
|
||||
*/
|
||||
if (data != dcomp)
|
||||
set_row (_n, "@119gc.%s", (const char*)dcomp.string(brief, '-'));
|
||||
//fine
|
||||
set_row (_n, "@130g@f", FLD(LF_MOV,MOV_STAMPATO));
|
||||
}
|
||||
break;
|
||||
|
@ -91,12 +91,14 @@ bool TLiquidazione_app::user_create()
|
||||
// s o l minuscoli = registro bollato (setta B1)
|
||||
_isregis = (rcl == 'l' || rcl == 'L' ||
|
||||
rcl == 'S' || rcl == 's'); // stampa per registri
|
||||
_isfinal = rcl == 'l' || rcl == 's'; // se l minuscolo, definitivo
|
||||
_isfinal = rcl == 'l' || rcl == 's'; // se l minuscolo, definitivo
|
||||
nocalc = rcl == 'S' || rcl == 's';
|
||||
printdate = subj.get(4);
|
||||
filename = subj.get(5);
|
||||
headerlen = subj.get_int(6);
|
||||
is_header = subj.items() == 7;
|
||||
char rliq = *(subj.get(7));
|
||||
_riepilogo = rliq == 'X';
|
||||
is_header = subj.items() == 8;
|
||||
//modifica del 5/07/1995
|
||||
int f = printer().formlen();
|
||||
printer().formlen(f - headerlen);
|
||||
@ -375,8 +377,12 @@ bool TLiquidazione_app::set_print(int)
|
||||
}
|
||||
break;
|
||||
case 2: // estrazione deleghe
|
||||
_isprint = FALSE;
|
||||
//build_ditte_sheet(all);
|
||||
_isprint = FALSE;
|
||||
//12/12/1995
|
||||
_selected.reset();
|
||||
_ditte->check(-1, FALSE);
|
||||
//fine
|
||||
build_ditte_sheet(all);
|
||||
while (set_deleghe())
|
||||
{
|
||||
if (_calcall || _selected.ones() > 0l)
|
||||
@ -399,7 +405,11 @@ bool TLiquidazione_app::set_print(int)
|
||||
case 3: // calcolo acconto
|
||||
_isprint = TRUE;
|
||||
_month = 12;
|
||||
//build_ditte_sheet(all);
|
||||
//12/12/1995
|
||||
_selected.reset();
|
||||
_ditte->check(-1, FALSE);
|
||||
//fine
|
||||
build_ditte_sheet(all);
|
||||
real inf; real ina; // cotale obbrobrio non fu da me cercato, ne' mai condiviso
|
||||
while (set_acconto(inf, ina))
|
||||
{
|
||||
|
@ -215,6 +215,7 @@ class TLiquidazione_app : public TPrint_application
|
||||
bool _isfinal; // stampa definitiva (su registro bollato)
|
||||
bool _isregis; // stampa per registro
|
||||
bool _isintr; // calcola interessi per trimestrali
|
||||
bool _riepilogo; // stampa riepilogo sul registro
|
||||
tbc _basecalc; // tipo base di calcolo acconto
|
||||
TString _freqviva; // frequenza versamenti (M|T}
|
||||
long _n_ditte; // numero ditte
|
||||
|
@ -148,7 +148,7 @@ bool TLiquidazione_app::update_firm(int month, bool recalc)
|
||||
|
||||
look_lim(liq_month(month), TRUE);
|
||||
|
||||
if (_isfinal && _lim->get_bool("B1") && _month != 13)
|
||||
if (_isfinal && _lim->get_bool("B1")) // && _month != 13)
|
||||
return TRUE;
|
||||
|
||||
TConfig cnf(CONFIG_DITTA, "cg");
|
||||
@ -169,7 +169,7 @@ bool TLiquidazione_app::update_firm(int month, bool recalc)
|
||||
|
||||
// ricalcolo normale
|
||||
// lim c'e' solo per i trimestri
|
||||
bool ok = _lim->get_bool("B0");
|
||||
bool ok = _lim->get_bool("B0");
|
||||
if (ok && !recalc) return TRUE;
|
||||
bool calc = (_recalc == ever || (_recalc == one && is_month_ok(month,_month)));
|
||||
if (!calc && _recalc != never) calc = !ok;
|
||||
@ -183,8 +183,10 @@ bool TLiquidazione_app::update_firm(int month, bool recalc)
|
||||
zero_firm(month);
|
||||
|
||||
// casini per stampa minchie in coda ai registri
|
||||
bool riepliq = FALSE;
|
||||
bool stliq = FALSE;
|
||||
//22/12/1995
|
||||
bool riepliq = _isregis ? _riepilogo : FALSE;
|
||||
bool stliq = TRUE;
|
||||
//fine
|
||||
|
||||
_nditte->save_status();
|
||||
if (_nditte->is_first_match(LF_ATTIV))
|
||||
@ -262,16 +264,18 @@ bool TLiquidazione_app::update_firm(int month, bool recalc)
|
||||
_pla->rewrite();
|
||||
}
|
||||
|
||||
|
||||
for (_reg->first(); _reg->good(); _reg->next())
|
||||
{
|
||||
if (codatt == _reg->get("S8") || quater)
|
||||
//22/12/1995
|
||||
//if (codatt == _reg->get("S8") || quater)
|
||||
if (codatt == _reg->get("S8"))
|
||||
{
|
||||
if (!riepliq) riepliq = _reg->get_bool("B6");
|
||||
if (!stliq) stliq = _reg->get_bool("B7");
|
||||
//if (!riepliq) riepliq = _reg->get_bool("B6");
|
||||
//if (!stliq) stliq = _reg->get_bool("B7");
|
||||
if (_reg->get_int("I0") == 2)
|
||||
if (!_isvent) _isvent = _reg->get_bool("B3");
|
||||
}
|
||||
//fine
|
||||
}
|
||||
}
|
||||
|
||||
if (!_isregis)
|
||||
@ -284,6 +288,10 @@ bool TLiquidazione_app::update_firm(int month, bool recalc)
|
||||
if (!update_att(month, cattiv) && stliq)
|
||||
describe_error("Attivita' non ricalcolate: possibili errori",
|
||||
codatt);
|
||||
//13/12/1995
|
||||
if (month == 13)
|
||||
recalc_annual(cattiv);
|
||||
//fine
|
||||
|
||||
// vediamo se c'e' qualcosa da raccontare
|
||||
gheravergot = _isannual || _isriepilogo;
|
||||
@ -316,9 +324,23 @@ bool TLiquidazione_app::update_firm(int month, bool recalc)
|
||||
_nditte->restore_status();
|
||||
|
||||
// aggiorna le liquidazioni
|
||||
if (calc || !recalc)
|
||||
//13/12/1995.
|
||||
//Concordato con Ferdinando che, visto che qualche
|
||||
//calcoluccio viene fatto anche in write_liq, essa
|
||||
//verra' sempre richiamata.
|
||||
//if (calc || !recalc)
|
||||
//fine
|
||||
if (is_month_ok_strict(month) || month == 13)
|
||||
write_liq(month, atts);
|
||||
|
||||
//5/12/1995
|
||||
//in ogni caso...
|
||||
if (_isfinal)
|
||||
{
|
||||
_lim->put("B1", "X");
|
||||
_lim->rewrite();
|
||||
}
|
||||
//fine
|
||||
|
||||
// rimborso infraannuale
|
||||
_DescrItem* rimb_d = NULL;
|
||||
@ -360,7 +382,7 @@ bool TLiquidazione_app::update_att(int month, const char* codatt,
|
||||
// il ricalcolo e' FORZATO da _recalc messo a one
|
||||
{
|
||||
look_plm(month, codatt, TRUE);
|
||||
bool ok = _plm->get_bool("B0");
|
||||
bool ok = _plm->get_bool("B0");
|
||||
if (ok && !recalc) return TRUE;
|
||||
bool calc = _recalc == ever || (_recalc == one && is_month_ok(month,_month));
|
||||
if (!calc && _recalc != never) calc = !ok;
|
||||
@ -373,10 +395,13 @@ bool TLiquidazione_app::update_att(int month, const char* codatt,
|
||||
{
|
||||
recalc_ventilation(month, codatt);
|
||||
recalc_corrispettivi(month, codatt);
|
||||
}
|
||||
if (month == 13)
|
||||
recalc_annual(codatt);
|
||||
}
|
||||
//13/12/1995
|
||||
// if (month == 13)
|
||||
// recalc_annual(codatt);
|
||||
//fine
|
||||
}
|
||||
|
||||
return ok || calc;
|
||||
}
|
||||
|
||||
@ -1156,7 +1181,9 @@ void TLiquidazione_app::recalc_att(int month, const char* codatt)
|
||||
if (!_prorata.is_zero() && month != 13)
|
||||
{
|
||||
prorata = acquisti_iva * (_prorata / CENTO);
|
||||
prorata.round(ROUND_MILLELIRE);
|
||||
//13/12/1995
|
||||
//prorata.round(ROUND_MILLELIRE);
|
||||
//fine
|
||||
acquisti_iva -= prorata;
|
||||
}
|
||||
look_plm(month, codatt, TRUE);
|
||||
@ -1284,7 +1311,7 @@ void TLiquidazione_app::recalc_att(int month, const char* codatt)
|
||||
|
||||
|
||||
void TLiquidazione_app::write_liq(int month, const char* codatts)
|
||||
// Calcolo liq. mensili e liq. annuali
|
||||
// Calcolo liq. mensili e liq. annuali. Scrive le lim
|
||||
{
|
||||
TToken_string atts(codatts);
|
||||
const char* tmpatt;
|
||||
|
@ -19,10 +19,13 @@ void TLiquidazione_app::add_plafond(int month, const char* codatt, int type,
|
||||
|
||||
if (intra) r1 += howmuch;
|
||||
else r0 += howmuch;
|
||||
|
||||
//06/12/1995
|
||||
/*
|
||||
if (r2 < (r0+r1))
|
||||
describe_error("Acquisti in eccesso rispetto al plafond disponibile",
|
||||
att.cut(5));
|
||||
*/
|
||||
//fine
|
||||
_ppa_r->put("R0",r0);
|
||||
_ppa_r->put("R1",r1);
|
||||
_ppa->rewrite();
|
||||
|
@ -189,6 +189,7 @@ void TLiquidazione_app::describe_liqacc()
|
||||
|
||||
void TLiquidazione_app::describe_plafond(int month, const char* codatt)
|
||||
{
|
||||
TString att(codatt);
|
||||
// prepara la descrizione del riepilogo da stampare e lo accoda
|
||||
real t1, t2, t3;
|
||||
_DescrItem* d = new _DescrItem(PLAFOND);
|
||||
@ -216,7 +217,13 @@ void TLiquidazione_app::describe_plafond(int month, const char* codatt)
|
||||
case 3:
|
||||
d->_r6 = t1; d->_r7 = t2; d->_r8 = t3;
|
||||
break;
|
||||
}
|
||||
}
|
||||
//06/12/1995
|
||||
if (t3.sign() < 0) t3 = ZERO;
|
||||
if (t3 < (t1+t2))
|
||||
describe_error("Acquisti in eccesso rispetto al plafond disponibile",
|
||||
att.cut(5));
|
||||
//fine
|
||||
} // for tipo esenzione plafond
|
||||
|
||||
_descr_arr.add(d);
|
||||
@ -937,7 +944,10 @@ void TLiquidazione_app::describe_consistence(const char* codatt)
|
||||
|
||||
void TLiquidazione_app::describe_error(const char* err, const char* codatt)
|
||||
{
|
||||
if (!_isprint || !_canprint) return;
|
||||
//if (!_isprint || !_canprint) return;
|
||||
//06/12/1995
|
||||
if (!_isprint || !_canprint || (_isregis && _isfinal)) return;
|
||||
//fine
|
||||
_errors.add(new _ErrItem(err,codatt,_nditte->curr().get("CODDITTA")));
|
||||
}
|
||||
|
||||
@ -1711,7 +1721,11 @@ bool TLiquidazione_app::set_annual(_DescrItem& d)
|
||||
// chiamata internamente a set_pims
|
||||
bool ret = FALSE;
|
||||
|
||||
int row = get_maxrow()+1;
|
||||
int row = get_maxrow()+1;
|
||||
//14/12/1995. Correzione errore MI0952
|
||||
if (row == 1) row = 4;
|
||||
//fine
|
||||
|
||||
if (d._f0 & IS_PRORATA)
|
||||
{
|
||||
// non lo ha stampato prima se annuale, perche' vladimiro il nefido
|
||||
|
@ -1127,18 +1127,18 @@ bool CG4400_application::cerca_libro_gio(TString& datas, bool* good)
|
||||
if (tiporeg == 5) //libro giornale
|
||||
{
|
||||
const TDate& data = _tabreg->get_date("D3");
|
||||
if (data > _data_a)
|
||||
if (data <= _data_a)
|
||||
{
|
||||
// datas = format("%02/%02d/%4d", data.day(), data.month(), data.year());
|
||||
datas = data; // Meglio cosi'
|
||||
*good = FALSE;
|
||||
*good = FALSE;
|
||||
return FALSE;
|
||||
}
|
||||
}
|
||||
_tabreg->readat(rec);
|
||||
return TRUE;
|
||||
}
|
||||
}
|
||||
_tabreg->readat(rec);
|
||||
//return TRUE;
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
@ -1689,6 +1689,7 @@ bool CG4400_application::compila_reg(const TMask& m)
|
||||
{
|
||||
_tipo_reg = _tabreg->get_int("I0");
|
||||
if (_tipo_reg == 1 || _tipo_reg == 2) //registro iva
|
||||
//if (_tipo_reg == 1 || _tipo_reg == 2 || _tipo_reg == 3)
|
||||
{
|
||||
cod_lib_un = _tabreg->get("S6");
|
||||
sca_vid = _tabreg->get_date("D1");
|
||||
@ -2419,7 +2420,8 @@ print_action CG4400_application::postprocess_page (int file, int counter)
|
||||
{
|
||||
if (file == LF_MOV)
|
||||
{
|
||||
if (counter) //dopo aver fatto un REPEAT_PAGE (cioe' dopo aver stampato le righe settate in set_page_tot_reg()), in pratica a rottura di mese o alla fine
|
||||
if (counter) //dopo aver fatto un REPEAT_PAGE (cioe' dopo aver stampato
|
||||
//le righe settate in set_page_tot_reg()), in pratica a rottura di mese o alla fine
|
||||
{
|
||||
reset_print();
|
||||
if (_liquidazione)
|
||||
@ -2683,6 +2685,10 @@ bool CG4400_application::setta_mask(long i)
|
||||
void CG4400_application::no_movimenti()
|
||||
{
|
||||
_mov_empty = TRUE;
|
||||
/*
|
||||
if (_tipo_reg == 3) //registro riepilogativo
|
||||
stampa_riepilogativo(); //che lecca morale!!!
|
||||
*/
|
||||
if (_liquidazione)
|
||||
{
|
||||
int da, a;
|
||||
@ -2813,7 +2819,7 @@ bool CG4400_application::stampa_registri_IVA(const TMask& m)
|
||||
}
|
||||
//non ci sono movimenti da stampare nel periodo richiesto!
|
||||
else no_movimenti();
|
||||
|
||||
|
||||
if (_tipo_stampa == 3 && _rif_vid)
|
||||
{
|
||||
_intesta_vidi = TRUE;
|
||||
@ -2980,11 +2986,27 @@ void CG4400_application::stampa_liq_mesi_succ()
|
||||
_datareg = TDate(1, m, _annoes); // Meglio cosi'
|
||||
TFilename t;
|
||||
t.temp("iva");
|
||||
|
||||
//06/12/1995
|
||||
/*
|
||||
if (_tipo_stampa == 1)
|
||||
send_message('L',t, m); //prima era S ma non andava bene!
|
||||
else send_message('l',t,m); //prima era s
|
||||
//TString80 nomef; nomef = t.path(); nomef << "\\" << t.name();
|
||||
//if (fexist(nomef))
|
||||
*/
|
||||
if (_scelta == B0_settato || _scelta == prosegui_stampa)
|
||||
{
|
||||
if (_tipo_stampa == 1)
|
||||
send_message('S',t, m);
|
||||
else send_message('s',t, m);
|
||||
}
|
||||
else //_scelta == prosegui_cal_stampa
|
||||
{
|
||||
if (_tipo_stampa == 1)
|
||||
send_message('L', t, m);
|
||||
else send_message('l', t, m);
|
||||
}
|
||||
//fine
|
||||
|
||||
if (fexist(t))
|
||||
{
|
||||
_intesta_liq = TRUE;
|
||||
@ -3009,7 +3031,7 @@ void CG4400_application::send_message(char tipo, const TFilename& nome, int mese
|
||||
app = "cg4 -2 -C";
|
||||
else app = "cg4 -2";
|
||||
|
||||
TToken_string ss(10);
|
||||
TToken_string ss(36);
|
||||
|
||||
ss.add(_annoes);
|
||||
if (_tipo_riepilogativo == 'A' && mese == 12)
|
||||
@ -3019,8 +3041,10 @@ void CG4400_application::send_message(char tipo, const TFilename& nome, int mese
|
||||
ss.add(tipo);
|
||||
ss.add(_data_stampa.string());
|
||||
ss.add(nome);
|
||||
ss.add(_size_header);
|
||||
//ss.add("x");
|
||||
ss.add(_size_header);
|
||||
if (_riep_liq)
|
||||
ss.add('X');
|
||||
else ss.add(' ');
|
||||
|
||||
TMessage liq (app, "RCL", ss);
|
||||
liq.send();
|
||||
|
18
cg/cg4400.h
18
cg/cg4400.h
@ -52,10 +52,10 @@ class CG4400_application : public TPrintapp
|
||||
bool _test;
|
||||
TRecnotype _nrec;
|
||||
bool _mov_empty, _stampa_ind_ditta, _stampa_tutti_i_registri, _auto_intraf, _stampa;
|
||||
bool _corrispettivi, _liquidazione, _riep_liq, _stampa_ind_comp, _esiste_riga_iva, _stampa_cred_pre;
|
||||
bool _corrispettivi, _liquidazione, _stampa_ind_comp, _esiste_riga_iva, _stampa_cred_pre;
|
||||
bool _rif_vid, _intesta_vidi, _intesta_liq, _stampa_data_reg, _ok_vidi;
|
||||
bool _sosp_imposta;
|
||||
char _frequiva, _tipo_riepilogativo;
|
||||
bool _sosp_imposta, _riep_liq;
|
||||
char _frequiva, _tipo_riepilogativo, _freq_riepilogo;
|
||||
TDate _data_da, _data_a, _data_stampa, _dataregp, _dataregs, _datareg;
|
||||
TDate _u_data;
|
||||
long _n_ditte, _u_stampata, _primast, __firm, _uprotivap, _ditta;
|
||||
@ -91,10 +91,11 @@ protected:
|
||||
|
||||
public:
|
||||
|
||||
//const char* desc_attivita (const TString&);
|
||||
const char* desc_attivita ();
|
||||
const char* tipo_attivita ();
|
||||
const char* descr_doc ();
|
||||
const char* descr_iva (const char *);
|
||||
const char* descr_iva (const char*);
|
||||
TRectype& ricerca_occ(const char*);
|
||||
TRectype& ricerca_cf (char, long);
|
||||
TRectype& look_comuni(const char*);
|
||||
@ -106,7 +107,9 @@ public:
|
||||
bool compila_reg(const TMask&);
|
||||
bool compila_lib();
|
||||
messaggio controlla_liquidazione();
|
||||
messaggio controlla_b0();
|
||||
messaggio controlla_b0();
|
||||
bool is_mese_ok(int,int);
|
||||
bool is_trim(int);
|
||||
bool controlla_mov();
|
||||
bool stampo_liquidazione(int);
|
||||
bool ventilazione(const char*);
|
||||
@ -117,12 +120,13 @@ public:
|
||||
bool stampa_datareg();
|
||||
bool stampa_registri_IVA(const TMask&);
|
||||
bool look_lia(long ditta = 0l);
|
||||
bool ricerca_mese(TString&,TString&,int,int,TMask_field&);
|
||||
bool stampa_riepilogo(int);
|
||||
void stampa_pims(TPrintrow&, const TString&, int, int);
|
||||
void set_choice_limits(TMask&);
|
||||
void build_ditte_sheet();
|
||||
void cerca_reg(const TString&, byte*);
|
||||
void set_page_tot_reg();
|
||||
void send_message(char, const TFilename&,int);
|
||||
void send_message(char,const TFilename&,int);
|
||||
void aggiorna_reg(const bool aggiorna_vidi);
|
||||
void aggiorna_lib();
|
||||
void calcola_progressivi();
|
||||
|
Loading…
x
Reference in New Issue
Block a user