Ultimato azzeramento, aggiunto files tracciati e file con voci menu 770

git-svn-id: svn://10.65.10.50/trunk@4242 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
luciano 1997-03-28 12:04:57 +00:00
parent 71bc283eb7
commit a7d9d26979
86 changed files with 1845 additions and 576 deletions

17
m770/770.mnu Executable file
View File

@ -0,0 +1,17 @@
17|Modello 770|5
17|Immissione dichiarazione|776mod -1
17|Manutenzione dichiarazione|776mod -0
17|Stampe|18
17|Parametri di studio|773mod -0
17|Tabella C.A.A. |773mod -3 %caf
17|Tabella causali|773mod -3 %ca7
17|Tabella enti previdenziali|773mod -3 %ent
17|Selezione dichiarazione|776mod -2
17|Generazione versamenti|774 -0
17|Azzeramento archivi|774 -2 T
18|Stampe|
18|Selezione dichiarazione|776mod -2
18|Schede percipienti|772mod -0 S
18|Certificazioni|772mod -1 S
18|Lista movimenti percipienti|772mod -2 S
18|Menu stampe dichiarazioni|773mod -1 menu_st "Stampe dichiarazioni"

View File

@ -22,7 +22,8 @@
// definizione campi del form // definizione campi del form
#define HODD_ANNODIC 1 #define HODD_ANNODIC 1
#define FODD_TODAY 1 #define FODD_TODAY 2
#define FODD_USER 3
// derivazione della classe TArray_sheet per implementare // derivazione della classe TArray_sheet per implementare
@ -100,6 +101,7 @@ class TAzzeramento_archivi : public TRelation_application
// elenco di VALIDATE_RECORD function // elenco di VALIDATE_RECORD function
static bool validate_record_SCPERC(const TRectype& rec); static bool validate_record_SCPERC(const TRectype& rec);
static bool validate_record_SCPERC_2(const TRectype& rec);
static bool validate_record_RPAG(const TRectype& rec); static bool validate_record_RPAG(const TRectype& rec);
static bool validate_record_RVER(const TRectype& rec); static bool validate_record_RVER(const TRectype& rec);
static bool validate_record_QUAL(const TRectype& rec); static bool validate_record_QUAL(const TRectype& rec);
@ -119,9 +121,9 @@ class TAzzeramento_archivi : public TRelation_application
bool is_resetable(const TRectype& rec); bool is_resetable(const TRectype& rec);
// handler di campi // handler di campi
static bool F_ANNODIC_hnd(TMask_field& f, KEY key);
static bool F_AZZSCH_hnd(TMask_field& f, KEY key); static bool F_AZZSCH_hnd(TMask_field& f, KEY key);
static bool F_AZZQUA_hnd(TMask_field& f, KEY key); static bool F_AZZQUA_hnd(TMask_field& f, KEY key);
static bool DLG_SAVEREC_hnd(TMask_field& f, KEY key);
// creazione/distruzione istanze d'azzeramento // creazione/distruzione istanze d'azzeramento
void azzera_create(const bool azzsch, const bool azzqua); void azzera_create(const bool azzsch, const bool azzqua);
@ -133,6 +135,12 @@ class TAzzeramento_archivi : public TRelation_application
// stampa del log delle schede percipienti // stampa del log delle schede percipienti
void print_log(); void print_log();
// azzera schede loggate selezionate
void azzera_schlog();
// message box di conferma azzeramento
bool conferma_azzera(const TMask& m, const bool azzsch, const bool azzqua);
// elaborazioni previste // elaborazioni previste
void elab_tutte(const bool azzsch, const bool azzqua); void elab_tutte(const bool azzsch, const bool azzqua);
void elab_selezionate(const bool azzsch, const bool azzqua); void elab_selezionate(const bool azzsch, const bool azzqua);
@ -147,6 +155,8 @@ class TAzzeramento_archivi : public TRelation_application
virtual void init_modify_mode(TMask&); virtual void init_modify_mode(TMask&);
virtual int rewrite(const TMask& m); virtual int rewrite(const TMask& m);
virtual int write(const TMask& m); virtual int write(const TMask& m);
virtual bool firm_change_enabled() const;
virtual bool save_and_new() const;
public: public:
TAzzeramento_archivi(char livello) : _liv(toupper(livello)) {} TAzzeramento_archivi(char livello) : _liv(toupper(livello)) {}
@ -187,27 +197,81 @@ bool TArray_sheetDerived::on_key(KEY key)
break; break;
} }
// richiamo on_key base // richiamo on_key base
return TArray_sheet::on_key(key); return TArray_sheet::on_key(key);
} }
// redifinizione del metodo della TRelation_application
// per avere sempre disattivata la possibilità di scegliere la ditta
bool TAzzeramento_archivi::firm_change_enabled() const
{
return FALSE;
}
// redifinizione del metodo della TRelation_application
// per attivare la modalità save_and_new (altrimenti disattivata)
bool TAzzeramento_archivi::save_and_new() const
{ return TRUE; }
bool TAzzeramento_archivi::user_create() bool TAzzeramento_archivi::user_create()
{ {
_msk = new TMask("774300a"); // istanza membri oggetto
_rel = new TRelation(LF_STAZZ); _msk = new TMask("774300a");
_cnf_studio = new TConfig(CONFIG_STUDIO,"77"); _rel = new TRelation(LF_STAZZ);
_anno_dich = _cnf_studio->get_int(ANNO_SEL); _cnf_studio = new TConfig(CONFIG_STUDIO,"77");
_riporti = new TRiporti; _riporti = new TRiporti;
// forzo il file di log delle schede all'auto eliminazione // inizilizzazione anno dichiarazioni
//_logschede->set_autodel(); _anno_dich = _cnf_studio->get_int(ANNO_SEL);
// inizializzazione istanza file temporaneo di log
_logschede = NULL;
// inizializzazione istanze d'azzeramento
_reset_PERC = NULL;
_reset_SCPERC = NULL;
_reset_RVER = NULL;
_reset_RPAG = NULL;
_reset_BASE = NULL;
_reset_BASEBIS = NULL;
_reset_SOCTRASF = NULL;
_reset_DIPEND = NULL;
_reset_QUAA = NULL;
_reset_QUAA1 = NULL;
_reset_QUAA2 = NULL;
_reset_QUAA3 = NULL;
_reset_QUAB = NULL;
_reset_QUAB1 = NULL;
_reset_QUAC = NULL;
_reset_QUAD = NULL;
_reset_QUAD1 = NULL;
_reset_QUAE = NULL;
_reset_QUAE1 = NULL;
_reset_QUAE2 = NULL;
_reset_PROSPE1 = NULL;
_reset_QUAF = NULL;
_reset_RIGHEF = NULL;
_reset_QUAF1 = NULL;
_reset_RIGHEF1 = NULL;
_reset_QUAF2 = NULL;
_reset_RIGHEF2 = NULL;
_reset_QUAG = NULL;
_reset_QUAGD = NULL;
_reset_QUAG1 = NULL;
_reset_QUAH = NULL;
_reset_DETH = NULL;
_reset_QUAL = NULL;
_reset_QUAN = NULL;
_reset_QUAP = NULL;
_reset_QUAQ = NULL;
_reset_QUAR = NULL;
_reset_QUAS = NULL;
_reset_QUAT = NULL;
// attivazione handler campi // attivazione handler campi
_msk->set_handler(F_ANNODIC,F_ANNODIC_hnd);
_msk->set_handler(F_AZZSCH,F_AZZSCH_hnd); _msk->set_handler(F_AZZSCH,F_AZZSCH_hnd);
_msk->set_handler(F_AZZQUA,F_AZZQUA_hnd); _msk->set_handler(F_AZZQUA,F_AZZQUA_hnd);
_msk->set_handler(DLG_SAVEREC,DLG_SAVEREC_hnd);
// disattivazione bottoni non utilizzabili // disattivazione bottoni non utilizzabili
_msk->disable(DLG_DELREC); _msk->disable(DLG_DELREC);
@ -222,6 +286,50 @@ bool TAzzeramento_archivi::user_destroy()
delete _cnf_studio; delete _cnf_studio;
delete _riporti; delete _riporti;
// distruzione istanza file temporaneo di log
if (_logschede) delete _logschede;
// distruzione istanze d'azzeramento
if (_reset_PERC) delete _reset_PERC;
if (_reset_SCPERC) delete _reset_SCPERC;
if (_reset_RVER) delete _reset_RVER;
if (_reset_RPAG) delete _reset_RPAG;
if (_reset_BASE) delete _reset_BASE;
if (_reset_BASEBIS) delete _reset_BASEBIS;
if (_reset_SOCTRASF) delete _reset_SOCTRASF;
if (_reset_DIPEND) delete _reset_DIPEND;
if (_reset_QUAA) delete _reset_QUAA;
if (_reset_QUAA1) delete _reset_QUAA1;
if (_reset_QUAA2) delete _reset_QUAA2;
if (_reset_QUAA3) delete _reset_QUAA3;
if (_reset_QUAB) delete _reset_QUAB;
if (_reset_QUAB1) delete _reset_QUAB1;
if (_reset_QUAC) delete _reset_QUAC;
if (_reset_QUAD) delete _reset_QUAD;
if (_reset_QUAD1) delete _reset_QUAD1;
if (_reset_QUAE) delete _reset_QUAE;
if (_reset_QUAE1) delete _reset_QUAE1;
if (_reset_QUAE2) delete _reset_QUAE2;
if (_reset_PROSPE1) delete _reset_PROSPE1;
if (_reset_QUAF) delete _reset_QUAF;
if (_reset_RIGHEF) delete _reset_RIGHEF;
if (_reset_QUAF1) delete _reset_QUAF1;
if (_reset_RIGHEF1) delete _reset_RIGHEF1;
if (_reset_QUAF2) delete _reset_QUAF2;
if (_reset_RIGHEF2) delete _reset_RIGHEF2;
if (_reset_QUAG) delete _reset_QUAG;
if (_reset_QUAGD) delete _reset_QUAGD;
if (_reset_QUAG1) delete _reset_QUAG1;
if (_reset_QUAH) delete _reset_QUAH;
if (_reset_DETH) delete _reset_DETH;
if (_reset_QUAL) delete _reset_QUAL;
if (_reset_QUAN) delete _reset_QUAN;
if (_reset_QUAP) delete _reset_QUAP;
if (_reset_QUAQ) delete _reset_QUAQ;
if (_reset_QUAR) delete _reset_QUAR;
if (_reset_QUAS) delete _reset_QUAS;
if (_reset_QUAT) delete _reset_QUAT;
return TRUE; return TRUE;
} }
@ -231,7 +339,6 @@ void TAzzeramento_archivi::azzera_create(const bool azzsch, const bool azzqua)
// richiesto azzeramento schede percipienti // richiesto azzeramento schede percipienti
if (azzsch) if (azzsch)
{ {
_logschede = new TIsamtempfile(LF_SCPERC,"LOGAZZ",TRUE);
_reset_PERC = new TResetfile(LF_PERC); _reset_PERC = new TResetfile(LF_PERC);
_reset_SCPERC = new TResetfile(LF_SCPERC,TRUE); _reset_SCPERC = new TResetfile(LF_SCPERC,TRUE);
_reset_RVER = new TResetfile(LF_RVER,TRUE); _reset_RVER = new TResetfile(LF_RVER,TRUE);
@ -285,11 +392,14 @@ void TAzzeramento_archivi::azzera_destroy(const bool azzsch, const bool azzqua)
// richiesto azzeramento schede percipienti // richiesto azzeramento schede percipienti
if (azzsch) if (azzsch)
{ {
delete _logschede;
delete _reset_PERC; delete _reset_PERC;
delete _reset_SCPERC; delete _reset_SCPERC;
delete _reset_RVER; delete _reset_RVER;
delete _reset_RPAG; delete _reset_RPAG;
_reset_PERC = NULL;
_reset_SCPERC = NULL;
_reset_RVER = NULL;
_reset_RPAG = NULL;
} }
// richiesto azzeramento quadri // richiesto azzeramento quadri
@ -330,15 +440,47 @@ void TAzzeramento_archivi::azzera_destroy(const bool azzsch, const bool azzqua)
delete _reset_QUAR; delete _reset_QUAR;
delete _reset_QUAS; delete _reset_QUAS;
delete _reset_QUAT; delete _reset_QUAT;
_reset_BASE = NULL;
_reset_BASEBIS = NULL;
_reset_SOCTRASF = NULL;
_reset_DIPEND = NULL;
_reset_QUAA = NULL;
_reset_QUAA1 = NULL;
_reset_QUAA2 = NULL;
_reset_QUAA3 = NULL;
_reset_QUAB = NULL;
_reset_QUAB1 = NULL;
_reset_QUAC = NULL;
_reset_QUAD = NULL;
_reset_QUAD1 = NULL;
_reset_QUAE = NULL;
_reset_QUAE1 = NULL;
_reset_QUAE2 = NULL;
_reset_PROSPE1 = NULL;
_reset_QUAF = NULL;
_reset_RIGHEF = NULL;
_reset_QUAF1 = NULL;
_reset_RIGHEF1 = NULL;
_reset_QUAF2 = NULL;
_reset_RIGHEF2 = NULL;
_reset_QUAG = NULL;
_reset_QUAGD = NULL;
_reset_QUAG1 = NULL;
_reset_QUAH = NULL;
_reset_DETH = NULL;
_reset_QUAL = NULL;
_reset_QUAN = NULL;
_reset_QUAP = NULL;
_reset_QUAQ = NULL;
_reset_QUAR = NULL;
_reset_QUAS = NULL;
_reset_QUAT = NULL;
} }
} }
// gestione del log delle schede percipienti // gestione del log delle schede percipienti
void TAzzeramento_archivi::handle_log() void TAzzeramento_archivi::handle_log()
{ {
// istanza file di log
TIsamtempfile* logschede = new TIsamtempfile(LF_SCPERC,"LOGAZZ",FALSE);
// creazione sheet // creazione sheet
TString caption = "Schede percipienti insolute"; TString caption = "Schede percipienti insolute";
TString head = "@1|"; TString head = "@1|";
@ -356,44 +498,68 @@ void TAzzeramento_archivi::handle_log()
TArray_sheetDerived log_sheet(12, 3, 66, 20, caption, head); TArray_sheetDerived log_sheet(12, 3, 66, 20, caption, head);
log_sheet.add_button(DLG_PRINT, "~Stampa", K_CTRL+'S'); log_sheet.add_button(DLG_PRINT, "~Stampa", K_CTRL+'S');
// tasto di ritorno dall'esecuzione dello sheet
KEY retkey;
// delimitatore di scope per l'apertura fittizia di LF_SCPERC (che palle!)
{
// apertura file fisico originale perchè altrimenti da "erore!" // apertura file fisico originale perchè altrimenti da "erore!"
TLocalisamfile f(LF_SCPERC); TLocalisamfile f(LF_SCPERC);
// riempimento sheet // riempimento sheet
for (int err = logschede->first(); err == NOERR; err = logschede->next()) for (int err = _logschede->first(); err == NOERR; err = _logschede->next())
{ {
TToken_string row; TToken_string row;
row.add(" "); row.add(" ");
row.add(logschede->get_long("CODDITTA")); row.add(_logschede->get_long("CODDITTA"));
row.add(logschede->get_char("TIPOA")); row.add(_logschede->get_char("TIPOA"));
row.add(logschede->get_long("CODANAGR")); row.add(_logschede->get_long("CODANAGR"));
row.add(logschede->get_long("NPROG")); row.add(_logschede->get_long("NPROG"));
row.add(logschede->get_date("DATADOC")); row.add(_logschede->get_date("DATADOC"));
row.add(logschede->get("NUMDOC")); row.add(_logschede->get("NUMDOC"));
row.add(logschede->get_int("CODCAUS")); row.add(_logschede->get_int("CODCAUS"));
row.add(logschede->get("TOTALE")); row.add(_logschede->get("TOTALE"));
row.add(logschede->get("COMPENSO")); row.add(_logschede->get("COMPENSO"));
row.add(logschede->get("SPESE")); row.add(_logschede->get("SPESE"));
row.add(logschede->get("IVA")); row.add(_logschede->get("IVA"));
log_sheet.add(row); log_sheet.add(row);
} }
// rimozione istanza file di log // esecuzione sheet
delete logschede; log_sheet.enable_check();
retkey = log_sheet.run();
// esecuzione sheet // rimozione dei record non selezionati dal file temporaneo
log_sheet.enable_check(); if (retkey == K_ENTER && log_sheet.one_checked())
KEY retkey = log_sheet.run(); for (int i = 0; i < log_sheet.items(); i++)
{
if (!log_sheet.checked(i))
{
_logschede->setkey(1);
_logschede->zero();
_logschede->put("CODDITTA",log_sheet.row(i).get_long(1));
_logschede->put("TIPOA",log_sheet.row(i).get_char(2));
_logschede->put("CODANAGR",log_sheet.row(i).get_long(3));
_logschede->put("NPROG",log_sheet.row(i).get_int(4));
if (_logschede->read() == NOERR)
_logschede->remove();
}
}
}
// interpreto azione restituita // interpreto azione restituita
switch (retkey) switch (retkey)
{ {
case K_CTRL+'S': case K_CTRL+'S':
yesno_box("Vuoi davvero stampare");
print_log(); print_log();
// inizilizzazione puntatore all'istanza del file di log
// perche' il distruttore della relazione usata in stampa
// ne ha effettuato implicitamente la "delete"
_logschede = NULL;
break; break;
case K_ENTER: case K_ENTER:
yesno_box("Vuoi davvero azzerare"); if (log_sheet.one_checked())
azzera_schlog();
break; break;
default: default:
break; break;
@ -406,29 +572,46 @@ void TAzzeramento_archivi::print_log()
// istanza form // istanza form
TForm log_form("77logazz"); TForm log_form("77logazz");
// sostituisce lfile originale con lfile di log // sostituisce lfile originale con lfile di log
log_form.relation()->replace(new TIsamtempfile(LF_SCPERC,"LOGAZZ",FALSE)); log_form.relation()->replace(_logschede);
// apertura file fisico originale perchè altrimenti da "erore!"
TLocalisamfile f(LF_SCPERC);
// set anno dichiarazione // set anno dichiarazione
TForm_item& hodd_annodic = log_form.find_field('H',odd_page,HODD_ANNODIC); TForm_item& hodd_annodic = log_form.find_field('H',odd_page,HODD_ANNODIC);
hodd_annodic.set(_msk->get(F_ANNODIC)); hodd_annodic.set(_msk->get(F_ANNODIC));
// set footer standard prassi // set footer standard prassi
TForm_item& fodd_today = log_form.find_field('F',odd_page,FODD_TODAY); TForm_item& fodd_today = log_form.find_field('F',odd_page,FODD_TODAY);
TForm_item& fodd_user = log_form.find_field('F',odd_page,FODD_USER);
fodd_today.set(_msk->get(F_DATASCH)); fodd_today.set(_msk->get(F_DATASCH));
fodd_user.set(user());
// stampa form // stampa form
log_form.print(); log_form.print();
} }
// azzera le schede loggate selezionate
void TAzzeramento_archivi::azzera_schlog()
{
// azzeramento schede selezionate (non invertire l'ordine di chiamata!!)
_reset_SCPERC->set_validate_record_function(validate_record_SCPERC_2);
_reset_RPAG->set_validate_record_function(validate_record_RPAG);
_reset_RVER->set_validate_record_function(validate_record_RVER);
_reset_SCPERC->run();
_reset_RPAG->run();
_reset_RVER->run();
}
// elabora tutte le dichiarazioni // elabora tutte le dichiarazioni
void TAzzeramento_archivi::elab_tutte(const bool azzsch, const bool azzqua) void TAzzeramento_archivi::elab_tutte(const bool azzsch, const bool azzqua)
{ {
// esistono schede loggate
bool logged_schede = FALSE;
// creazione istanze d'azzeramento // creazione istanze d'azzeramento
azzera_create(azzsch, azzqua); azzera_create(azzsch, azzqua);
// richiesto azzeramento schede percipienti // richiesto azzeramento schede percipienti
if (azzsch) if (azzsch)
{ {
// istanza file temporaneo di log
if (_logschede) delete _logschede;
_logschede = new TIsamtempfile(LF_SCPERC,"LOGAZZ",TRUE);
// percipienti // percipienti
_reset_PERC->run(); _reset_PERC->run();
@ -439,9 +622,6 @@ void TAzzeramento_archivi::elab_tutte(const bool azzsch, const bool azzqua)
_reset_SCPERC->run(); _reset_SCPERC->run();
_reset_RPAG->run(); _reset_RPAG->run();
_reset_RVER->run(); _reset_RVER->run();
// esistono schede loggate!
logged_schede = !_logschede->empty();
} }
// richiesto azzeramento quadri // richiesto azzeramento quadri
@ -504,13 +684,13 @@ void TAzzeramento_archivi::elab_tutte(const bool azzsch, const bool azzqua)
_reset_QUAT->run(); _reset_QUAT->run();
} }
// handle log schede percipienti
if (azzsch && !_logschede->empty())
handle_log();
// distruzione istanze d'azzeramento // distruzione istanze d'azzeramento
azzera_destroy(azzsch, azzqua); azzera_destroy(azzsch, azzqua);
// handle log schede percipienti
if (logged_schede)
handle_log();
return; return;
} }
@ -549,6 +729,24 @@ bool TAzzeramento_archivi::validate_record_SCPERC(const TRectype& rec)
return TRUE; return TRUE;
} }
bool TAzzeramento_archivi::validate_record_SCPERC_2(const TRectype& rec)
{
// inizializzo chiave file di log
app()._logschede->setkey(1);
app()._logschede->zero();
app()._logschede->put("CODDITTA",rec.get_long("CODDITTA"));
app()._logschede->put("TIPOA",rec.get_char("TIPOA"));
app()._logschede->put("CODANAGR",rec.get_long("CODANAGR"));
app()._logschede->put("NPROG",rec.get_int("NPROG"));
// elimino la scheda se esiste nel file di log
if (app()._logschede->read() == NOERR)
return TRUE;
// non elimino tutti gli altri record
return FALSE;
}
bool TAzzeramento_archivi::validate_record_RPAG(const TRectype& rec) bool TAzzeramento_archivi::validate_record_RPAG(const TRectype& rec)
{ {
// apro file e inizializzo chiave schede percipienti // apro file e inizializzo chiave schede percipienti
@ -739,10 +937,14 @@ int TAzzeramento_archivi::write(const TMask& m)
bool azzsch = m.get_bool(F_AZZSCH); bool azzsch = m.get_bool(F_AZZSCH);
bool azzqua = m.get_bool(F_AZZQUA); bool azzqua = m.get_bool(F_AZZQUA);
// azzeramento di tutte le dichiarazioni // chiede conferma azzeramento
elab_tutte(azzsch, azzqua); if (conferma_azzera(m, azzsch, azzqua))
{
elab_tutte(azzsch, azzqua);
return TRelation_application::write(m);
}
return TRelation_application::write(m); return NOERR;
} }
// implementazione funzione virtuale TRelation_application // implementazione funzione virtuale TRelation_application
@ -753,10 +955,38 @@ int TAzzeramento_archivi::rewrite(const TMask& m)
bool azzsch = m.get_bool(F_AZZSCH) && datasch.year() == 0; bool azzsch = m.get_bool(F_AZZSCH) && datasch.year() == 0;
bool azzqua = m.get_bool(F_AZZQUA) && dataqua.year() == 0; bool azzqua = m.get_bool(F_AZZQUA) && dataqua.year() == 0;
// azzeramento di tutte le dichiarazioni // chiede conferma azzeramento
elab_tutte(azzsch, azzqua); if (conferma_azzera(m, azzsch, azzqua))
{
elab_tutte(azzsch, azzqua);
return TRelation_application::rewrite(m);
}
return TRelation_application::rewrite(m); return NOERR;
}
// message box di conferma azzeramento
bool TAzzeramento_archivi::conferma_azzera(const TMask& m, const bool azzsch, const bool azzqua)
{
if (azzsch || azzqua)
{
TString testo;
testo << "Conferma azzeramento ";
if (azzsch)
testo << "schede percipienti, ";
if (azzqua)
testo << "quadri dichiarazione, ";
testo << "per l'anno " << m.get(F_ANNODIC) << " ?";
return yesno_box(testo);
}
return FALSE;
}
// handler del campo maschera F_ANNODIC
bool TAzzeramento_archivi::F_ANNODIC_hnd(TMask_field& f, KEY k)
{
return TRUE;
} }
// handler del campo maschera F_AZZSCH // handler del campo maschera F_AZZSCH
@ -808,31 +1038,6 @@ bool TAzzeramento_archivi::F_AZZQUA_hnd(TMask_field& f, KEY k)
return TRUE; return TRUE;
} }
// handler del bottone maschera DLG_SAVEREC
bool TAzzeramento_archivi::DLG_SAVEREC_hnd(TMask_field& f, KEY k)
{
if (k == K_SPACE)
{
TMask& m = f.mask();
TDate datasch = app()._rel->lfile().get_date("DATASCH");
TDate dataqua = app()._rel->lfile().get_date("DATAQUA");
bool azzsch = m.get_bool(F_AZZSCH) && datasch.year() == 0;
bool azzqua = m.get_bool(F_AZZQUA) && dataqua.year() == 0;
if (azzsch || azzqua)
{
TString testo;
testo << "Conferma azzeramento ";
if (azzsch)
testo << "schede percipienti, ";
if (azzqua)
testo << "quadri dichiarazione, ";
testo << "per l'anno " << m.get(F_ANNODIC) << " ?";
return f.yesno_box(testo);
}
}
return TRUE;
}
// funzione principale di lancio applicazione // funzione principale di lancio applicazione
int Azzeramento_archivi(int argc, char* argv[]) int Azzeramento_archivi(int argc, char* argv[])
{ {

View File

@ -7,5 +7,3 @@
#define F_AZZQUA 205 #define F_AZZQUA 205
#define F_USERQUA 206 #define F_USERQUA 206
#define F_DATAQUA 207 #define F_DATAQUA 207
#define LF_STAZZ 109

View File

@ -8,24 +8,46 @@ END
GENERAL GENERAL
BEGIN BEGIN
OFFSET 2 2 OFFSET 1 1
FONT "Courier New" FONT "Courier New"
SIZE 8 SIZE 8
GRID "+++++++++-|" GRID "+++++++++-|"
END END
SECTION HEADER ODD 5 SECTION GRAPHICS ODD 62
LINEA 1 117 1
BEGIN
KEY "Riga di separazione titolo/sottotitolo"
PROMPT 1 2 ""
END
LINEA 2 117 1
BEGIN
KEY "Riga di separazione titolo/corpo"
PROMPT 1 6 ""
END
LINEA 3 117 1
BEGIN
KEY "Riga di separazione corpo/piede"
PROMPT 1 62 ""
END
END
SECTION HEADER ODD 6
NUMERO 1 NUMERO 1
BEGIN BEGIN
KEY "Titolo della stampa" KEY "Titolo della stampa"
PROMPT -1 1 "Azzeramento archivi per l'anno " PROMPT 1 1 "@BAzzeramento archivi per l'anno "
END END
STRINGA 2 STRINGA 2
BEGIN BEGIN
KEY "Sottotitolo" KEY "Sottotitolo"
PROMPT 1 3 "Elenco schede percipienti insolute" PROMPT 1 3 "@BElenco schede percipienti insolute"
END END
STRINGA 3 STRINGA 3
@ -185,21 +207,27 @@ END
END END
SECTION FOOTER ODD 1 SECTION FOOTER ODD 3
STRINGA 1 STRINGA 1
BEGIN BEGIN
KEY "Footer standard Prassi" KEY "Footer standard Prassi - logo"
PROMPT 1 1 "PR.A.S.S.I. S.p.A." PROMPT 1 1 "PR.A.S.S.I. S.p.A."
END END
DATA 2 DATA 2
BEGIN BEGIN
KEY " " KEY "Footer standard Prassi - data"
PROMPT 20 1 "" PROMPT 22 1 ""
FORMAT "1454-" FORMAT "1454-"
END END
STRINGA 3
BEGIN
KEY "Footer standard Prassi - utente"
PROMPT 45 1 "Utente "
END
END END
END END

3
m770/f100.dir Executable file
View File

@ -0,0 +1,3 @@
100
1
m770/righef2|0|0|53|4|Righe F2 modello 770|||

11
m770/f100.trr Executable file
View File

@ -0,0 +1,11 @@
100
7
CODDITTA|3|5|0|
TIPOPRO|7|1|0|
NPROG|2|2|0|
CODCAUS|9|2|0|
ALIQUOTA|4|6|2|
SOGRIT|4|18|0|
ROPE|4|18|0|
1
CODDITTA+TIPOPRO+NPROG|

3
m770/f101.dir Executable file
View File

@ -0,0 +1,3 @@
101
1
m770/quadrogd|0|0|106|4|Distinta G modello 770|||

13
m770/f101.trr Executable file
View File

@ -0,0 +1,13 @@
101
9
CODDITTA|3|5|0|
TIPOA|1|1|0|
CODANAGR|3|5|0|
NPROG|2|4|0|
NUMQUOTE|4|18|2|
UTSPETT|4|18|0|
ROPESPET|4|18|0|
UTPAG|4|18|0|
ROPE|4|18|0|
1
CODDITTA+TIPOA+CODANAGR+NPROG|

3
m770/f102.dir Executable file
View File

@ -0,0 +1,3 @@
102
1
m770/soctrasf|0|0|196|4|Societa' trasformate modello 770|||

19
m770/f102.trr Executable file
View File

@ -0,0 +1,19 @@
102
15
CODDITTA|3|5|0|Codice ditta
CODFISC|1|16|0|Codice fiscale
DENOMIN|1|40|0|Cognome o denominazione
NOME|1|20|0|Nome (nel caso che la ditta sia intestata a persona fisica)
SESSO|1|1|0|Sesso (nel caso che la ditta sia intestata a persona fisica)
DATANAS|5|8|0|Data di nascita (nel caso che la ditta sia intestata a persona fisica)
COMNAS|1|20|0|Comune di nascita (nel caso che la ditta sia intestata a persona fisica)
PROVNAS|1|2|0|Provincia di nascita (nel caso che la ditta sia intestata a persona fisica)
COMDOM|1|20|0|Comune di domicilio
PROVDOM|1|2|0|Provincia di domicilio
INDDOM|1|35|0|Indirizzo domicilio
CONSBOCC|3|5|0|Consistenza base occupazionale al 12/06/94
LAVDIPCIN|3|5|0|Lavoratori dipendenti in mobilita' o cassa integrazione al 12/06/94
DATAINPI|5|8|0|Data inizio periodo d'imposta
DATAFINPI|5|8|0|Data fine periodo d'imposta
1
CODDITTA|

3
m770/f117.dir Executable file
View File

@ -0,0 +1,3 @@
117
1
m770/stazz|0|0|37|4|Storico azzeramenti modello 770|||

9
m770/f117.trr Executable file
View File

@ -0,0 +1,9 @@
117
5
ANNODIC|2|4|0|Anno dichiarazione per il quale è stato eseguito l'azzeramento
USERSCH|1|8|0|Utente che ha eseguito l'azzeramento delle schede
DATASCH|5|8|0|Data di azzeramento delle schede
USERQUA|1|8|0|Utente che ha eseguito l'azzeramento di quadri
DATAQUA|5|8|0|Data di azzeramento dei quadri
1
ANNODIC|

3
m770/f36.dir Executable file
View File

@ -0,0 +1,3 @@
36
1
m770/base|0|0|1209|4|Base modello 770|#9||

100
m770/f36.trr Executable file
View File

@ -0,0 +1,100 @@
36
95
TIPOQUA|7|1|0|Tipo dichiarazione
CODDITTA|3|5|0|Codice ditta
CODDIC|3|5|0|Codice ditta dichiarante
IN_USO|8|1|0|Flag "dichiarazione in uso"
ANNODIC|2|4|0|Anno dichiarazione
RAPPR|3|5|0|Codice rappresentante
CARRAPP|2|1|0|Carica rappresentante
NATTVER|3|6|0|0
EVNATECC|8|1|0|0
CODCAAF|3|5|0|0
CODPRO|3|5|0|0
N730ALLA|3|6|0|Quadro A - numero allegati 730-96
N730ALLA2|3|6|0|Quadro A2 - numero allegati 730-95
SERIE|1|5|0|Parametri generazione quadro L - serie/abi vers.
DATAVERS|5|8|0|Parametri generazione quadro L - data versamento
NUMERO|1|11|0|Parametri generazione quadro L - numero/cab vers.
A0NFCOM|3|5|0|
A0NLDIP|3|5|0|I1-1 Quadro A - Num. fogli compilati
A0COBB|4|18|0|I1-2 Quadro A - Num. lav. dipendenti
A0CNET|4|18|0|I1-3 Quadro A - Contributi obbligatori
A0EPREV|4|18|0|I1-4 Quadro A - Compensi netti
A0IITRA|4|18|0|I1-5 Quadro A - Assegni enti previdenziali
A0CTER|4|18|0|I1-6 Quadro A - Ind. tras. imponibile
A0TIMP|4|18|0|I2-7 Quadro A - Compensi da terzi
A0ILOR|4|18|0|I2-8 Quadro A - Totale imponibile
A0TDET|4|18|0|I2-9 Quadro A - Imposta lorda
A0INCDET|4|18|0|I2-10 Quadro A - Totale detrazioni
A0RTER|4|18|0|I2-11 Quadro A - Incremento detrazioni
A0RDAT|4|18|0|I3-12 Quadro A - Ritenute da terzi
A0ERIT|4|18|0|I3-13 Quadro A - Ritenute datore di lavoro
A0CARR|4|18|0|I3-14 Quadro A - Eccedenza ritenute
A0AARR|4|18|0|I3-15 Quadro A - Contributi arretrati
A0DARR|4|18|0|I3-16 Quadro A - Ammontare arretrati
A0RARR|4|18|0|I4-17 Quadro A - Detrazioni arretrati
A0RITSI|4|18|0|I4-18 Quadro A - Ritenute arretrati
A0CINPS|4|18|0|0
A0RITOPEVA|4|18|0|0
A0RITOPESA|4|18|0|0
A0CIIAUT|4|18|0|0
A0NADLAV|3|5|0|0
A0NACAAF|3|5|0|0
A0CRIMPRAS|4|18|0|0
A0CRIMP85|4|18|0|I5-23 - Quadro A - Credito d'imposta premio d'assunzione
A3NFCOM|3|5|0|I5-25 - Quadro A - Credito d'imposta ex L.85/95
A3NUMPER|3|5|0|0
A3REPT10|4|18|0|0
A3REPT12|4|18|0|0
B0NFCOM|3|5|0|0
B0NLDIP|3|5|0|I8-1 - Quadro B - Numero di fogli compilati
B0TFR93|4|18|0|I8-2 - Quadro B - Numero dipendenti
B0AI|4|18|0|I8-3 - Quadro B - TFR corrisposto nel 95
B0COLAV|4|18|0|I8-4 - Quadro B - Altre indennità nel 1995
B0TFR7492|4|18|0|I8-5 - Quadro B - Contributi obb. a carico lavoratori dipendenti
B0AI7492|4|18|0|I8-6 - Quadro B - TFR erogato dal 74 al 94
B0RITSI|4|18|0|I9-7 - Quadro B - Altre indennità erogate dal 74 al 94
B0IMP|4|18|0|I9-13 - Quadro B - Ritenute operate 'SI'
B0TIMP|4|18|0|I9-8 - Quadro B - Imponibile dell'anno
B0ROP|4|18|0|I9-9 - Quadro B - Totale imponibile
B0AIINPS|4|18|0|I9-10 - Quadro B - Ritenute operate
B0ROPESA|4|18|0|I9-11 - Quadro B - Altre indennità ai fini contr. INPS
B0CIIAUT|4|18|0|I9-12 - Quadro B - Ritenute operate 'SA'
B0CRIMPRAS|4|18|0|I9-14 - Quadro B - Credito d'imposta imprese d'autotrasporto
B0CRIMP85|4|18|0|I10-15 - Quadro B - Credito d'imposta premio d'assunzione
B1NFCOM|3|5|0|I10-16 - Quadro B - Credito d'imposta ex L.85/95
B1NPER|3|5|0|I11-1 - Quadro B1 - Numero fogli compilati
B1TIND|4|18|0|I11-2 - Quadro B1 - Numero percipienti
B1TIRM|4|18|0|I11-3 - Quadro B1 - Totale indennità
B1TICOM|4|18|0|I11-4 - Quadro B1 - Totale imp.r.m.
C0NFCOM|3|5|0|I11-5 - Quadro B1 - Totale imp.compl.
C0NLASS|3|5|0|I12-1 - Quadro C - Num. fogli compilati
C0ACTOT|4|18|0|I12-2 - Quadro C - Numero percipienti
C0CONTSSN|4|18|0|I12-3 - Quadro C - Ammontare corrisposto totale
C0SNSRIT|4|18|0|I12-4 - Quadro C - Contributi SSN
C0ROPE|4|18|0|0
C0CIIAUT|4|18|0|0
C0CRIMPRAS|4|18|0|0
D0NFCOM|3|5|0|I13-8 - Quadro C - Credito d'imposta premio d'assunzione
D0NLAUT|3|5|0|I14-1 - Quadro D - Numero fogli
D0ACTOT|4|18|0|I14-2 - Quadro D - Numero percipienti
D0SNSRIT|4|18|0|I14-3 - Quadro D - Ammontare corrisposto totale
D0ROPE|4|18|0|I14-4 - Quadro D - Somme non soggette a ritenuta
D0CIIAUT|4|18|0|I14-5 - Quadro D - Ritenute operate
D0CRIMPRAS|4|18|0|I14-6 - Quadro D - Credito di imposta imprese di autotrasporto
D0CRIMP85|4|18|0|I15-7 - Quadro D - Credito d'imposta premio d'assunzione
D1NFCOM|3|5|0|I15-8 - Quadro D - Credito d'imposta ex L.85/95
D1NPER|3|5|0|0
D1TACOR|4|18|0|0
D1SNSRIT|4|18|0|0
D1ROPE|4|18|0|0
D1CRIMPRAS|4|18|0|0
LUOVERS|7|1|0|0
TIPOVERS|7|1|0|0
RSS|2|1|0|0
FLART4|8|1|0|0
DITTACAAF|3|5|0|0
2
TIPOQUA+CODDITTA|
CODDIC+TIPOQUA+CODDITTA|

3
m770/f37.dir Executable file
View File

@ -0,0 +1,3 @@
37
1
m770/basebis|0|0|1272|4|Base modello 770|#36||

91
m770/f37.trr Executable file
View File

@ -0,0 +1,91 @@
37
86
TIPOQUA|7|1|0|
CODDITTA|3|5|0|0
CODDIC|3|5|0|0
CONSBASOCC|4|18|0|
LAVDIPCIN|4|18|0|
PIMPINI|5|8|0|
PIMPFINE|5|8|0|
ECCRIT12|4|18|0|0
ECCRIT23|4|18|0|0
CRIMPDL|4|18|0|0
CRIMPIVA|4|18|0|0
CRIMPRIT|4|18|0|0
CRIMPRES|4|18|0|0
QCOMP|1|25|0|0
QSUPPINV|1|26|0|0
QSUPPRIC|1|26|0|0
NSUPPM|2|4|0|0
E0NFCOM|3|5|0|0
E0NPER|3|5|0|0
E0AIMP|4|18|0|0
E0ROPE|4|18|0|0
E0SNSRIT|4|18|0|0
E0CRIMPRAS|4|18|0|0
E1NFCOM|3|5|0|0
E1NPER|3|5|0|0
E1SCOR|4|18|0|0
E1BCOM|4|18|0|0
E1ROPE|4|18|0|0
E1ACOM|4|18|0|0
E1BCOM2|4|18|0|0
E1ROPE2|4|18|0|0
E1CRIMPRAS|4|18|0|0
E2NFCOM|3|5|0|0
E2NPER|3|5|0|0
E2ROPE|4|18|0|0
E2SSRIT|4|18|0|0
E2CRIMPRAS|4|18|0|0
F0SRITA|4|18|0|0
F0ROPEA|4|18|0|0
F0TACCA|4|18|0|0
F0EDACCA|4|18|0|0
F0ERIMA|4|18|0|0
F0SSRITBF|4|18|0|0
F0ROPEBF|4|18|0|0
F0SSVA|4|18|0|0
F0ROPEVA|4|18|0|0
F0CRIMPRAS|4|18|0|0
F1TPLUA|4|18|0|0
F1ROPEA|4|18|0|0
F1SSRIT|4|18|0|0
F1ROPE|4|18|0|0
F1CRIMPRAS|4|18|0|0
F2SSRIT|4|18|0|0
F2ROPE|4|18|0|0
F2CRIMPRAS|4|18|0|0
G0NFCOM|3|5|0|0
G0NAZI1|4|16|0|0
G0UDEN1|4|18|0|0
G0UNAT1|4|18|0|0
G0IUTI2|4|18|0|0
G0ROPE|4|18|0|0
G0USRIT3|4|18|0|0
G0RACC3|4|18|0|0
G0RIMP3|4|18|0|0
G0UNSRIT3|4|18|0|0
G0USPE|4|18|0|0
G0RITSPET|4|18|0|
G0UPAG|4|18|0|0
G0NPER|3|5|0|0
G0CRIMPRAS|4|18|0|0
G1UCOR|4|18|0|0
G1USRIT|4|18|0|0
G1RACC|4|18|0|0
G1RIMP|4|18|0|0
G1UNSRIT|4|18|0|0
G1CRIMPRAS|4|18|0|0
H0CODLAV|4|18|0|0
H0COLDIP|4|18|0|0
H0NPVERH|3|5|0|0
H0NQLAGG|2|4|0|0
L0CCONC1|1|3|0|0
L0CCONC2|1|3|0|0
L0CCONC3|1|3|0|0
L0CTES1|2|3|0|0
L0CTES2|2|3|0|0
L0CTES3|2|3|0|0
2
TIPOQUA+CODDITTA|
CODDIC+TIPOQUA+CODDITTA|

3
m770/f38.dir Executable file
View File

@ -0,0 +1,3 @@
38
1
m770/perc|0|0|31|4|Dati percipienti|#6||

9
m770/f38.trr Executable file
View File

@ -0,0 +1,9 @@
38
5
CODDITTA|3|5|0|
TIPOA|1|1|0|
CODANAGR|3|5|0|
FATTBIL|4|18|2|
FLAGCT|8|1|0|
1
CODDITTA+TIPOA+CODANAGR|

3
m770/f39.dir Executable file
View File

@ -0,0 +1,3 @@
39
1
m770/schper|0|0|148|4|Schede percipienti|#9||

21
m770/f39.trr Executable file
View File

@ -0,0 +1,21 @@
39
16
CODDITTA|3|5|0|
TIPOA|1|1|0|
CODANAGR|3|5|0|
NPROG|2|4|0|
CODCAUS|9|2|0|
DATADOC|5|8|0|
NUMDOC|1|7|0|
COMPENSO|4|18|2|
SPESE|4|18|2|
IVA|4|18|2|
TOTALE|4|18|2|
FORZATURA|8|1|0|
TOTRIT|4|18|2|
RITSOC|4|18|0|
MESEC|2|2|0|
ANNOC|2|4|0|
2
CODDITTA+TIPOA+CODANAGR+NPROG|
CODDITTA+TIPOA+CODANAGR+DATADOC+NPROG|

3
m770/f40.dir Executable file
View File

@ -0,0 +1,3 @@
40
1
m770/rver|0|0|71|4|Righe di versamento|#9||

17
m770/f40.trr Executable file
View File

@ -0,0 +1,17 @@
40
13
CODDITTA|3|5|0|0
TIPOA|1|1|0|0
CODANAGR|3|5|0|0
NPROG|2|4|0|0
NRIGA|2|4|0|0
VERS1015|8|1|0|0
DATAVERS|5|8|0|0
TIPOVERS|1|1|0|0
RITENUTA|4|18|0|0
LUOVERS|1|1|0|0
NUMERO|1|11|0|0
SERIE|1|5|0|0
PROGBANC|10|6|0|
1
CODDITTA+TIPOA+CODANAGR+NPROG+NRIGA|

3
m770/f41.dir Executable file
View File

@ -0,0 +1,3 @@
41
1
m770/rpag|0|0|165|4|Righe di pagamento|#9||

19
m770/f41.trr Executable file
View File

@ -0,0 +1,19 @@
41
15
CODDITTA|3|5|0|
TIPOA|1|1|0|
CODANAGR|3|5|0|
NPROG|2|4|0|
NRIGA|2|4|0|
DATAPAG|5|8|0|
IMPONIBILE|4|18|0|
PERC|4|6|2|
RITENUTA|4|18|0|
COMPENSO|4|18|0|
NETTO|4|18|0|
NUMVERS|3|5|0|
SPESA|4|18|0|
CTSSNPERC|4|18|0|
CTSSNCOMP|4|18|0|
1
CODDITTA+TIPOA+CODANAGR+NPROG+NRIGA|

3
m770/f42.dir Executable file
View File

@ -0,0 +1,3 @@
42
1
m770/quadrol|0|0|91|4|Quadro L modello 770|#9||

20
m770/f42.trr Executable file
View File

@ -0,0 +1,20 @@
42
15
CODDITTA|3|5|0|
QLDV|5|8|0|
QLMP|2|2|0|
QLAP|2|4|0|
QLLV|7|1|0|
QLTV|7|1|0|
QLCT|2|4|0|
QLAB|2|2|0|
QLSERIE|1|5|0|
QLNUMERO|1|11|0|
QLCODQUA|1|2|0|
QLRITEFF|4|18|0|
QLRITVER|4|18|0|
QLRSS|1|2|0|
QLNOTE|1|7|0|
2
CODDITTA+QLAP+QLMP+QLDV+QLLV+QLTV+QLCT+QLAB+QLSERIE+QLNUMERO|
CODDITTA+QLDV+QLAP+QLMP+QLLV+QLTV+QLCT+QLAB+QLSERIE+QLNUMERO|

3
m770/f43.dir Executable file
View File

@ -0,0 +1,3 @@
43
1
m770/quadroh|0|0|48|4|Quadro h modello 770|#9||

9
m770/f43.trr Executable file
View File

@ -0,0 +1,9 @@
43
5
CODDITTA|3|5|0|
H1ANNO|2|4|0|
H1ENTE|2|2|0|
H1DAT|4|18|2|
H1LAV|4|18|2|
1
CODDITTA+H1ANNO+H1ENTE|

3
m770/f44.dir Executable file
View File

@ -0,0 +1,3 @@
44
1
m770/quadroa|0|0|922|4|Quadro A modello 770|#9||

67
m770/f44.trr Executable file
View File

@ -0,0 +1,67 @@
44
63
CODDITTA|3|5|0|Codice ditta della dichiarazione
CODDIP|3|6|0|
NPROG|2|3|0|Numero progressivo della scheda
AREAATT|1|1|0|
TIPO|1|1|0|
NUMGIO|2|3|0|
DATAFR|5|8|0|Data fine rapporto di lavoro
NUMGIODET|2|3|0|
CFDLPREC|1|16|0|
CAUSA|2|1|0|Causa
DENARO|4|18|0|In denaro
NATURA|4|18|0|In natura
COBBDIP|4|18|0|
COMPNETTI|4|18|0|Compensi netti
AMMLORDO|4|18|0|
IACOBBCD|4|18|0|
NORIT|4|18|0|
TOTIMP|4|18|0|
AIENTIPREV|4|18|0|
CCTAMMCONT|4|18|0|Compensi corrisposti da terzi: ammontare assoggettato a contribuzione
TOTIMP2|4|18|2|
ICTOTIMP|4|18|0|
DETCC|4|18|0|Detrazione per coniuge a carico
DETFC|4|18|0|Detrazione per figli a carico
DETAF|4|18|0|Detrazione per altri famigliari a carico
DETLD|4|18|0|Detrazione per lavoro dipendente
DETO|4|18|0|Detrazione per oneri
TOTDET|4|18|0|
INCDETFC|4|18|0|
AMRIOT|4|18|0|
AMRIODL|4|18|0|
ECCRITRIMB|4|18|0|Eccedenza delle ritenute da rimborsare
AMMRITDOV|4|18|0|Ammontare delle ritenute dovute
ERSPSAN|4|18|0|
PRASSVI|4|18|0|
CONPRECO|4|18|0|
COBBDIP2|4|18|0|
AMMIMP|4|18|0|
DETIMPOS|4|18|0|
RITESEG|4|18|0|
SVNASSRI|4|18|0|
AIFCSSN|4|18|0|
CONEFF|1|1|0|
IMPVERS|4|18|0|
INTERE|4|18|0|
CSSN95CV|4|18|0|
INTERE2|4|18|0|
CNEFF|1|1|0|
RETCON|1|1|0|
IMPRIMB|4|18|0|
IMPVER|4|18|0|
INTIRPEF|4|18|0|
IMPVER2|4|18|0|
INTER|4|18|0|
STSIRPEF|4|18|0|
CONRIMB|4|18|0|
CONVER|4|18|0|
INTER2|4|18|0|
CONVER2|4|18|0|
INTER3|4|18|0|
STSCSSN70|4|18|0|
M730NLIQ|2|2|0|
CODCAAF|3|5|0|Codice del CAAF che ha prestato assistenza
1
CODDITTA+CODDIP+NPROG|

3
m770/f45.dir Executable file
View File

@ -0,0 +1,3 @@
45
1
m770/dipend|0|0|302|4|Dipendenti|#9||

30
m770/f45.trr Executable file
View File

@ -0,0 +1,30 @@
45
26
CODDITTA|3|5|0|Codice ditta
CODDIP|3|6|0|
CODFI|1|16|0|Codice fiscale
COGNOME|1|30|0|Cognome
NOME|1|20|0|Nome
SESSO|1|1|0|Sesso
DATANA|5|8|0|Data di nascita
COMUNENA|1|50|0|Comune di nascita
PROVNA|1|5|0|Provincia di nascita
COMRES|1|50|0|Comune di residenza
PROVRES|1|5|0|Provincia di residenza
INDRES|1|35|0|Indirizzo di residenza
QUALIFICA|2|2|0|Qualifica
STATOCIV|2|1|0|Stato civile
CODDIPDEC|3|6|0|
ASSFIS|2|1|0|
CODEREDE0|3|6|0|Codice erede 1
CODEREDE1|3|6|0|Codice erede 2
CODEREDE2|3|6|0|Codice erede 3
CODEREDE3|3|6|0|Codice erede 4
CODEREDE4|3|6|0|Codice erede 5
CODEREDE5|3|6|0|Codice erede 6
CODEREDE6|3|6|0|Codice erede 7
CODEREDE7|3|6|0|Codice erede 8
CODEREDE8|3|6|0|Codice erede 9
CODEREDE9|3|6|0|Codice erede 10
1
CODDITTA+CODDIP|

3
m770/f46.dir Executable file
View File

@ -0,0 +1,3 @@
46
1
m770/detth|0|0|86|4|Dettaglio quadro h|#9*2||

13
m770/f46.trr Executable file
View File

@ -0,0 +1,13 @@
46
9
CODDITTA|3|5|0|
ANNO|2|4|0|
ENTE|2|2|0|
DATAVERS|5|8|0|
NUMVERS|3|5|0|
NREGINOTA|3|7|0|
IMPVERS|4|18|2|
CONTRDAT|4|18|2|
CONTRLAV|4|18|2|
1
CODDITTA+ANNO+ENTE+DATAVERS+NUMVERS|

3
m770/f56.dir Executable file
View File

@ -0,0 +1,3 @@
56
1
m770/quadroa1|0|0|252|4|Quadro A1 770|||

25
m770/f56.trr Executable file
View File

@ -0,0 +1,25 @@
56
21
CODDITTA|3|5|0|Codice ditta della dichiarazione
CODDIP|3|6|0|
NPROG|2|3|0|Numero progressivo del rigo
MESERIF|2|2|0|
ANNORIF|2|4|0|
IMPRIMB9|4|18|0|Saldo IRPEF per il 93: imposta rimborsata
IMPVERS10|4|18|0|Saldo IRPEF per il 93: imposta versata
INTER11|4|18|0|Saldo IRPEF per il 93: interessi
IMPVERS12|4|18|0|Prima rata acconto IRPEF per il 94: imposta versata
INTER13|4|18|0|Prima rata acconto IRPEF per il 94: interessi
STASSA14|4|18|0|Prima rata acconto IRPEF per il 94: soprattassa IRPEF 93 e prima rata 94
CONTRIMB15|4|18|0|Saldo C.S.S.N. 93: contributo a rimborso
CONTVERS16|4|18|0|Saldo C.S.S.N. 93: contributo versato
INTER17|4|18|0|Saldo C.S.S.N. 93: interessi
CONTVER18|4|18|0|Prima rata acconto C.S.S.N. 94: contributo versato
INTER19|4|18|0|Prima rata acconto C.S.S.N. 94: interessi
STASSA20|4|18|0|Prima rata acconto C.S.S.N. 94: soprattassa su C.S.S.N.
CONNEFF21|1|1|0|Conguagli non effettuati <A> <B> <D> <E> <F>
TIPOCONG22|1|1|0|Tipo conguaglio <R> <T> <S> <U>
CODCAAF|3|5|0|Codice CAAF che ha prestato assistenza
DATARIC26|5|8|0|
1
CODDITTA+CODDIP+NPROG|

3
m770/f57.dir Executable file
View File

@ -0,0 +1,3 @@
57
1
m770/quadroa2|0|0|240|4|Quadro A2 770|||

23
m770/f57.trr Executable file
View File

@ -0,0 +1,23 @@
57
19
CODDITTA|3|5|0|Codice ditta della dichiarazione
CODDIP|3|6|0|
NPROG|2|3|0|Numero progressivo del rigo
CONEFF|1|1|0|
RETCON|1|1|0|
SIRPEFRIMB|4|18|0|
VIRPEF|4|18|0|
INTIRPEF|4|18|0|
AIRPEFIV|4|18|0|
AIRPEFINT|4|18|0|
STASSA15|4|18|0|
CONTR16|4|18|0|
CONTRVER|4|18|0|
INTER18|4|18|0|
CONTV19|4|18|0|
INTE20|4|18|0|
SOPRAT21|4|18|0|
M730NLIQ|2|2|0|
CODCAAF|3|5|0|Codice CAAF che ha prestato assistenza
1
CODDITTA+CODDIP+NPROG|

3
m770/f58.dir Executable file
View File

@ -0,0 +1,3 @@
58
1
m770/quadroa3|0|0|66|4|Quadro A3 770|||

12
m770/f58.trr Executable file
View File

@ -0,0 +1,12 @@
58
8
CODDITTA|3|5|0|Codice ditta della dichiarazione
NPROG|2|4|0|Numero progressivo riga per ditta
CODDIP|3|6|0|
DIRAPTI|5|8|0|Data inizio rapporto a tempo indeterminato
NGINC15|2|3|0|Numero giorni in incremento
REDCOR16|4|18|0|Reddito corrisposto
NGINC17|2|3|0|Numero giorni in incremento
REDCOR18|4|18|0|Reddito corrisposto
1
CODDITTA+NPROG+CODDIP|

3
m770/f59.dir Executable file
View File

@ -0,0 +1,3 @@
59
1
m770/quadrob|0|0|470|4|Quadro B 770|||

45
m770/f59.trr Executable file
View File

@ -0,0 +1,45 @@
59
41
CODDITTA|3|5|0|Codice ditta
CODDIP|3|6|0|Codice dipendente
NPROG|2|4|0|Progressivo
DATAINI|5|8|0|Data inizio rapporto di lavoro
DATAFIN|5|8|0|Data fine rapporto di lavoro
ANNICOMM|2|2|0|Periodo di commisurazione - anni
MESICOMM|2|2|0|Periodo di commisurazione - mesi
ANNICONV|2|2|0|Periodo convenzionale - anni
MESICONV|2|2|0|Periodo convenzionale - mesi
ANNIPARZ|2|2|0|Tempo parziale - anni
MESIPARZ|2|2|0|Tempo parziale - mesi
PERCPARZ|4|6|2|Tempo parziale - percentuale
QUOTAECC|4|18|0|Quota eccedente
MESEEROG|2|2|0|Mese erogazione - 95
TITEROG|1|1|0|Titolo erogazione - 95
PERCABB|4|6|2|Percentuale abbattimento - altre indennita' 95
AMMNETTO|4|18|0|Ammontare netto
MESEEROG2|2|2|0|Mese erogazione - altre indennita' 95
TITEROG2|1|1|0|Titolo erogazione - altre indennita' 95
ABBATT|4|18|0|
AMMNETTO2|4|18|0|Ammontare netto - altre indennita' 95
CONTLAV|4|18|0|Contributi obbligatori a carico del lavoratore
TFR7494|4|18|0|TFR o indennita' equipollente
INDEN7494|4|18|0|Altre indennita'
TIND7494|4|18|0|Totale indennita'
TRID|4|18|0|Totale riduzioni
TFRIND|4|18|0|TFR o indennita' equipollenti per reddito di riferimento
ALIQUOTA|4|6|2|Aliquota
RETRMEDIA|4|18|0|Retribuzione media biennio precedente
ALIQUOTA2|4|6|2|Aliquota
IMPTFR|4|18|0|Imponibile TFR
IMPIND|4|18|0|Imponibile altre indennita'
IMPANNO|4|18|0|Imponibile dell'anno
TOTIMP|4|18|0|Totale reddito imponibile
ROPEACC|4|18|0|Ritenute operate su acconti e anticipazioni erogati dal 74 al 94
IMPDOV|4|18|0|Imposta dovuta
RITECC|4|18|0|Ritenute fiscali operate in eccedenza
QUOTASPET|4|18|0|Quota spettante
INDSPETT|4|18|0|Indennita' spettante
ROPE|4|18|0|Ritenute operate
IMPOCSSN|4|18|0|Imponibile C.S.S.N.
1
CODDITTA+CODDIP+NPROG|

3
m770/f60.dir Executable file
View File

@ -0,0 +1,3 @@
60
1
m770/quadrob1|0|0|196|4|Quadro B1 770|||

17
m770/f60.trr Executable file
View File

@ -0,0 +1,17 @@
60
13
CODDITTA|3|5|0|Codice ditta
CODDIP|3|6|0|Codice dipendente
NPROG|2|4|0|Progressivo
INDEN|4|18|0|Ammontare delle indennita' di anzianita', di previdenza
AMMIMP|4|18|0|Ammontare imponibile
IMP4|4|18|0|Imponibile al 4%
IMP8|4|18|0|Imponibile al 8%
IMP10|4|18|0|Imponibile al 10%
IMP12|4|18|0|Imponibile al 12%
IMP15|4|18|0|Imponibile al 15%
IMPNETTO|4|18|0|Ammontare imponibile al netto anche delle rit. di ricchezza mobile
IMPO15|4|18|0|Imponibile al 1,5%
IMPO4|4|18|0|Imponibile al 4%
1
CODDITTA+CODDIP+NPROG|

3
m770/f61.dir Executable file
View File

@ -0,0 +1,3 @@
61
1
m770/quadroc|0|0|132|4|Quadro C 770|||

16
m770/f61.trr Executable file
View File

@ -0,0 +1,16 @@
61
12
CODDITTA|3|5|0|
TIPOA|1|1|0|
CODANAGR|3|5|0|
NPROG|2|4|0|
CODCAUS|9|2|0|
TOTALE|4|18|0|
CONTSSN|4|18|0|
SOMME|4|18|0|
IMPONIBILE|4|18|0|
RITENUTE|4|18|0|
NETTO|4|18|0|
PERC|4|6|2|
1
CODDITTA+TIPOA+CODANAGR+NPROG|

3
m770/f62.dir Executable file
View File

@ -0,0 +1,3 @@
62
1
m770/quadrod|0|0|114|4|Quadro D 770|||

15
m770/f62.trr Executable file
View File

@ -0,0 +1,15 @@
62
11
CODDITTA|3|5|0|
TIPOA|1|1|0|
CODANAGR|3|5|0|
NPROG|2|4|0|
CODCAUS|9|2|0|
TOTALE|4|18|0|
SOMME|4|18|0|
IMPONIBILE|4|18|0|
PERC|4|6|2|
IMPORTO|4|18|0|
NETTO|4|18|0|
1
CODDITTA+TIPOA+CODANAGR+NPROG|

3
m770/f63.dir Executable file
View File

@ -0,0 +1,3 @@
63
1
m770/quadrod1|0|0|132|4|Quadro D1 770|||

16
m770/f63.trr Executable file
View File

@ -0,0 +1,16 @@
63
12
CODDITTA|3|5|0|0
TIPOA|1|1|0|0
CODANAGR|3|5|0|0
NPROG|2|4|0|0
CODCAUS|9|2|0|0
TOTALE|4|18|0|0
QUOTAPRO|4|18|0|0
SPESEANT|4|18|0|0
IMPONIBILE|4|18|0|0
PERC|4|6|2|2
IMPORTO|4|18|0|0
NETTO|4|18|0|0
1
CODDITTA+TIPOA+CODANAGR+NPROG|

3
m770/f64.dir Executable file
View File

@ -0,0 +1,3 @@
64
1
m770/quadroe|0|0|96|4|Quadro E 770|||

14
m770/f64.trr Executable file
View File

@ -0,0 +1,14 @@
64
10
CODDITTA|3|5|0|
TIPOA|1|1|0|
CODANAGR|3|5|0|
NPROG|2|4|0|
CODCAUS|9|2|0|
IMPONIBILE|4|18|0|
PERC|4|6|2|
IMPORTO|4|18|0|
NETTO|4|18|0|
SOMME|4|18|0|
1
CODDITTA+TIPOA+CODANAGR+NPROG|

3
m770/f65.dir Executable file
View File

@ -0,0 +1,3 @@
65
1
m770/quadroe1|0|0|96|4|Quadro E1 770|||

14
m770/f65.trr Executable file
View File

@ -0,0 +1,14 @@
65
10
CODDITTA|3|5|0|
TIPOA|1|1|0|
CODANAGR|3|5|0|
NPROG|2|4|0|
CODCAUS|9|2|0|
AMMONTARE|4|18|0|
PERC|4|6|2|
IMPORTO|4|18|0|
NETTO|4|18|0|
SOMME|4|18|0|
1
CODDITTA+TIPOA+CODANAGR+NPROG|

3
m770/f66.dir Executable file
View File

@ -0,0 +1,3 @@
66
1
m770/quadroe2|0|0|60|4|Quadro E2 770|||

12
m770/f66.trr Executable file
View File

@ -0,0 +1,12 @@
66
8
CODDITTA|3|5|0|
TIPOA|1|1|0|
CODANAGR|3|5|0|
NPROG|2|4|0|
CODCAUS|9|2|0|
SOGGRIT|4|18|0|
PERC|4|6|2|
ROPE|4|18|0|
1
CODDITTA+TIPOA+CODANAGR+NPROG|

3
m770/f67.dir Executable file
View File

@ -0,0 +1,3 @@
67
1
m770/quadrof|0|0|182|4|Quadro F 770|||

17
m770/f67.trr Executable file
View File

@ -0,0 +1,17 @@
67
13
CODDITTA|3|5|0|
F_CODCAUS|9|2|0|
A1|4|18|0|
A2|4|18|0|
A3|4|18|0|
A4|4|18|0|
E_CAMBIALI|4|18|0|
E_ALIQUOTA|4|6|2|
E_SOGRIT|4|18|0|
E_ROPE|4|18|0|
F_ROPE|4|18|0|
F_SOGRIT|4|18|0|
F_ALIQUOTA|4|6|2|
1
CODDITTA|

3
m770/f68.dir Executable file
View File

@ -0,0 +1,3 @@
68
1
m770/quadrof1|0|0|44|4|Quadro F1 770|||

8
m770/f68.trr Executable file
View File

@ -0,0 +1,8 @@
68
4
CODDITTA|3|5|0|0
F_CODCAUS|9|2|0|0
F1_A1|4|18|0|0
F1_A2|4|18|0|0
1
CODDITTA|

3
m770/f69.dir Executable file
View File

@ -0,0 +1,3 @@
69
1
m770/quadrof2|0|0|6|4|Quadro F2 770|||

5
m770/f69.trr Executable file
View File

@ -0,0 +1,5 @@
69
1
CODDITTA|3|5|0|0
1
CODDITTA|

3
m770/f70.dir Executable file
View File

@ -0,0 +1,3 @@
70
1
m770/quadrog|0|0|2825|4|Quadro G 770|||

85
m770/f70.trr Executable file
View File

@ -0,0 +1,85 @@
70
81
CODDITTA|3|5|0|0
P1DATAD1|5|8|0|0
P1DATAD2|5|8|0|0
P1DATAD3|5|8|0|0
P1DATAD4|5|8|0|0
P1TITOLO1|1|18|0|0
P1TITOLO2|1|18|0|0
P1TITOLO3|1|18|0|0
P1TITOLO4|1|18|0|0
P1DATAP1|5|8|0|0
P1DATAP2|5|8|0|0
P1DATAP3|5|8|0|0
P1DATAP4|5|8|0|0
P1AMMQ1|4|18|0|0
P1AMMQ2|4|18|0|0
P1AMMQ3|4|18|0|0
P1AMMQ4|4|18|0|0
P1NUMQ1|3|9|0|0
P1NUMQ2|3|9|0|0
P1NUMQ3|3|9|0|0
P1NUMQ4|3|9|0|0
P1AMM1|4|18|0|0
P1AMM2|4|18|0|0
P1AMM3|4|18|0|0
P1AMM4|4|18|0|0
P1NUMQT|3|10|0|0
P1AMMT|4|18|0|0
P2DATADE|5|8|0|0
P2DATADI|5|8|0|0
P2DESC1|1|35|0|0
P2DESC2|1|35|0|0
P2DESC3|1|35|0|0
P2DATA1|5|8|0|0
P2DATA2|5|8|0|0
P2DATA3|5|8|0|0
P2VAL1|4|18|0|0
P2VAL2|4|18|0|0
P2VAL3|4|18|0|0
P2VALT|4|18|0|0
P2IMPQ|4|18|0|0
P22|1|100|0|0
P23|1|100|0|0
P24|1|100|0|0
P25|1|100|0|0
P26|1|100|0|0
P22TOT|4|18|0|0
P23TOT|4|18|0|0
P24TOT|4|18|0|0
P25TOT|4|18|0|0
P26TOT|4|18|0|0
P33A|1|200|0|0
P33B|1|200|0|0
P33TOT|4|18|0|0
P35A|1|200|0|0
P35B|1|200|0|0
P35TOT|4|18|0|0
P36A|1|200|0|0
P36B|1|200|0|0
P36TOT|4|18|0|0
P321|4|18|0|0
P322|4|18|0|0
P323|4|18|0|0
P324|4|18|0|0
P325|4|18|0|0
P32TOT|4|18|0|0
P371|4|18|0|0
P372|4|18|0|0
P373|4|18|0|0
P374|4|18|0|0
P375|4|18|0|0
P37TOT|4|18|0|0
P421|4|18|0|0
P422|4|18|0|0
P423|4|18|0|0
P424|4|18|0|0
P425|4|18|0|0
P426|4|18|0|0
P427|4|18|0|0
P428|4|18|0|0
P429|4|18|0|0
P42TOT|4|18|0|0
1
CODDITTA|

3
m770/f71.dir Executable file
View File

@ -0,0 +1,3 @@
71
1
m770/quadrog1|0|0|696|4|Quadro G1 770|||

16
m770/f71.trr Executable file
View File

@ -0,0 +1,16 @@
71
12
CODDITTA|3|5|0|
P12|1|100|0|
P13|1|100|0|
P14|1|100|0|
P15|1|100|0|
P16|1|100|0|
P17|1|100|0|
P12TOT|4|18|0|
P13TOT|4|18|0|
P15TOT|4|18|0|
P16TOT|4|18|0|
P17TOT|4|18|0|
1
CODDITTA|

3
m770/f72.dir Executable file
View File

@ -0,0 +1,3 @@
72
1
m770/quadron|0|0|52|4|Quadro N 770|||

10
m770/f72.trr Executable file
View File

@ -0,0 +1,10 @@
72
6
CODDITTA|3|5|0|Codice ditta
NPROG|2|4|0|Progressivo
MESERIF|2|2|0|Periodo di riferimento - Mese
ANNORIF|2|4|0|Periodo di riferimento - Anno
IMPOSTA|4|18|0|Imposta rimborsata
COMPENSI|4|18|0|Compensi per l'assistenza
1
CODDITTA+NPROG|

3
m770/f73.dir Executable file
View File

@ -0,0 +1,3 @@
73
1
m770/quadrop|0|0|93|4|Quadro P 770||BÇG¢|

14
m770/f73.trr Executable file
View File

@ -0,0 +1,14 @@
73
10
CODDITTA|3|5|0|Codice ditta
NPROG|2|4|0|Progressivo
IMPOSTA|4|18|0|Imposta o soprattassa versata
INTERDIP|4|18|0|Interessi a carico del lavoratore dipendente
INTERDAT|4|18|0|Interessi a carico del datore di lavoro
TIPOVERS|1|1|0|Modalità di versamento
CODTRIB|2|4|0|Codice tributo
DATAVERS|5|8|0|Data di versamento
NUMERO|1|11|0|Numero Quietanza/CAB/Numero Bollettino
SERIE|1|5|0|Serie/ABI
1
CODDITTA+NPROG|

3
m770/f74.dir Executable file
View File

@ -0,0 +1,3 @@
74
1
m770/quadroq|0|0|71|4|Quadro Q 770||BÇG¢|

12
m770/f74.trr Executable file
View File

@ -0,0 +1,12 @@
74
8
CODDITTA|3|5|0|Codice ditta
NPROG|2|4|0|Progressivo
MESEPAG|2|2|0|Periodo di paga - Mese
ANNOPAG|2|4|0|Periodo di paga - Anno
CONTVERS|4|18|0|Contributo versato
CONTRIMB|4|18|0|Contributo rimborsato
INTERESSI|4|18|0|Interessi e/o soprattasse
CODREG|1|1|0|Codice regione
1
CODDITTA+NPROG|

3
m770/f75.dir Executable file
View File

@ -0,0 +1,3 @@
75
1
m770/quadror|0|0|52|4|Quadro R 770|||

10
m770/f75.trr Executable file
View File

@ -0,0 +1,10 @@
75
6
CODDITTA|3|5|0|Codice ditta
NPROG|2|4|0|Progressivo
MESERIF|2|2|0|Periodo di riferimento - Mese
ANNORIF|2|4|0|Periodo di riferimento - Anno
IMPRIMB|4|18|0|Imposta rimborsata
COMPENSI|4|18|0|Compensi per l'assistenza
1
CODDITTA+NPROG|

3
m770/f76.dir Executable file
View File

@ -0,0 +1,3 @@
76
1
m770/quadros|0|0|93|4|Quadro S 770|||

14
m770/f76.trr Executable file
View File

@ -0,0 +1,14 @@
76
10
CODDITTA|3|5|0|Codice ditta
NPROG|2|4|0|Progressivo
IMPOSTA|4|18|0|Imposta o soprattassa versata
INTERDIP|4|18|0|Interessi a carico del lavoratore dipendente
INTERDAT|4|18|0|Interessi a carico del datore di lavoro
TIPOVERS|1|1|0|Modalità di versamento
CODTRIB|2|4|0|Codice tributo
DATAVERS|5|8|0|Data di versamento
NUMERO|1|11|0|Numero Quietanza/CAB/Numero Bollettino
SERIE|1|5|0|Serie/ABI
1
CODDITTA+NPROG|

3
m770/f77.dir Executable file
View File

@ -0,0 +1,3 @@
77
1
m770/quadrot|0|0|71|4|Quadro T 770|||

12
m770/f77.trr Executable file
View File

@ -0,0 +1,12 @@
77
8
CODDITTA|3|5|0|Codice ditta
NPROG|2|4|0|Progressivo
MESEPAG|2|2|0|Periodo di paga - Mese
ANNOPAG|2|4|0|Periodo di paga - Anno
CONTVERS|4|18|0|Contributo versato
CONTRIMB|4|18|0|Contributo rimborsato
INTERESSI|4|18|0|Interessi e/o soprattasse
CODREG|1|1|0|Codice regione
1
CODDITTA+NPROG|

3
m770/f89.dir Executable file
View File

@ -0,0 +1,3 @@
89
1
m770/prospe1|0|0|62|4|Prospetto E1 770|||

9
m770/f89.trr Executable file
View File

@ -0,0 +1,9 @@
89
5
CODDITTA|3|5|0|0
CODCAUS|9|2|0|0
COMPENSO|4|18|0|0
IMPONIBILE|4|18|0|0
RITENUTA|4|18|0|0
1
CODDITTA+CODCAUS|

3
m770/f98.dir Executable file
View File

@ -0,0 +1,3 @@
98
1
m770/righef|0|0|107|4|Righe F modello 770|||

14
m770/f98.trr Executable file
View File

@ -0,0 +1,14 @@
98
10
CODDITTA|3|5|0|
TIPOPRO|7|1|0|
NPROG|2|2|0|
CODCAUS|9|2|0|
ALIQUOTA|4|6|2|
SOGRIT|4|18|0|
ROPE|4|18|0|
ACCONTI|4|18|0|
VERSALDO|4|18|0|
VERSECC|4|18|0|
1
CODDITTA+TIPOPRO+NPROG|

3
m770/f99.dir Executable file
View File

@ -0,0 +1,3 @@
99
1
m770/righef1|0|0|53|4|Righe F1 del modello 770|||

11
m770/f99.trr Executable file
View File

@ -0,0 +1,11 @@
99
7
CODDITTA|3|5|0|
TIPOPRO|7|1|0|
NPROG|2|2|0|
CODCAUS|9|2|0|
ALIQUOTA|4|6|2|
SOGRIT|4|18|0|
ROPE|4|18|0|
1
CODDITTA+TIPOPRO+NPROG|

View File

@ -10,7 +10,8 @@ TResetfile::TResetfile(int logicnum, bool remove)
_validate_record_function(NULL), _validate_record_function(NULL),
_validate_field_function(NULL), _validate_field_function(NULL),
_before_reset_function(NULL), _before_reset_function(NULL),
_after_reset_function(NULL) _after_reset_function(NULL),
_is_reseted(FALSE)
{ {
// oggetto file da azzerare // oggetto file da azzerare
_file = new TSystemisamfile(_file_num); _file = new TSystemisamfile(_file_num);
@ -19,7 +20,8 @@ TResetfile::TResetfile(int logicnum, bool remove)
TResetfile::~TResetfile() TResetfile::~TResetfile()
{ {
// pack file se richiesto rimozione record // pack file se richiesto rimozione record
if(_removerec) // e file azzerato
if(_removerec && _is_reseted)
_file->pack(); _file->pack();
delete _file; delete _file;
@ -171,6 +173,9 @@ int TResetfile::run()
// chiusura file // chiusura file
_file->close(); _file->close();
// file azzerato
_is_reseted = TRUE;
return err; return err;
} }

View File

@ -35,6 +35,8 @@ class TResetfile : public TObject
{ {
// @cmember:(INTERNAL) numero logico del file da azzerare // @cmember:(INTERNAL) numero logico del file da azzerare
int _file_num; int _file_num;
// @cmember:(INTERNAL) stato file : TRUE azzerato,FALSE non azzerato
bool _is_reseted;
// @cmember:(INTERNAL) file da azzerare // @cmember:(INTERNAL) file da azzerare
TSystemisamfile* _file; TSystemisamfile* _file;
// @cmember:(INTERNAL) effettuare remove dei record (default FALSE) // @cmember:(INTERNAL) effettuare remove dei record (default FALSE)