Correzioni varie, per avere maggiori informazioni guardarsi il file crono.doc

git-svn-id: svn://10.65.10.50/trunk@4166 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
luciano 1997-02-27 15:44:56 +00:00
parent 8fd5b60ec9
commit fe0ff9aaaa
25 changed files with 4153 additions and 4137 deletions

View File

@ -900,19 +900,18 @@ void TSchedaPercipienti::mask2rel(const TMask& m)
TString16 serie(row.get(4)); TString16 serie(row.get(4));
TString numero(row.get(5)); TString numero(row.get(5));
const long ProgBanca = row.get_long(6); const long ProgBanca(row.get_long(6));
real ritenuta (row.get(7)); real ritenuta (row.get(7));
const int numvers (row.get_int(8)); const int numvers (row.get_int(8));
r.put("VERS1015", vers1015); r.put("VERS1015",vers1015);
r.put("DATAVERS", dataver); r.put("DATAVERS",dataver);
r.put("LUOVERS", luogo); r.put("LUOVERS", luogo);
r.put("TIPOVERS", tipo); r.put("TIPOVERS",tipo);
r.put("SERIE", serie); r.put("SERIE", serie);
r.put("NUMERO", numero); r.put("NUMERO", numero);
r.put("PROGBANC", (long)ProgBanca); r.put("PROGBANC",ProgBanca);
r.put("RITENUTA", ritenuta); r.put("RITENUTA",ritenuta);
// r.put("NUMVERS", (long)nriga); // r.put("NUMVERS", (long)nriga);
// r.put("NUMVERS", (long)numvers); // r.put("NUMVERS", (long)numvers);
} }

View File

@ -735,9 +735,18 @@ bool TSchedaPercipienti::abicab_hndl(TMask_field& f, KEY k)
return TRUE; return TRUE;
for (int i=0; i<park.len(); i++) for (int i=0; i<park.len(); i++)
{
// controllo se codice CAB supera le 5 cifre
if (i > 5)
{
f.reset();
return f.warning_box("Codice CAB non valido");
}
// controllo numericità del codice ABI/CAB
if (!isdigit(park[i])) if (!isdigit(park[i]))
return f.warning_box("Il codice ABI/CAB deve essere numerico"); return f.warning_box("Il codice ABI/CAB deve essere numerico");
} }
}
return TRUE; return TRUE;
} }
@ -1013,13 +1022,12 @@ real TSchedaPercipienti::calcola_imponibile(TMask_field& f, const real& compenso
if (compenso != ZERO) if (compenso != ZERO)
{ {
imponibile_calcolato = (compenso * quota_imp) / 100.00; imponibile_calcolato = (compenso * quota_imp) / 100.00;
// 13.6.96 toglie il contributo inps
if (bContributoInps) // scorpora la percentuale cassa previdenza
{
real rPercCassaPrev=ZERO; real rPercCassaPrev=ZERO;
rPercCassaPrev = mm.get_real(F_CASSA_PREV); rPercCassaPrev = mm.get_real(F_CASSA_PREV);
imponibile_calcolato = (imponibile_calcolato / (100.00 + rPercCassaPrev)) * 100.00; imponibile_calcolato = (imponibile_calcolato / (100.00 + rPercCassaPrev)) * 100.00;
}
TString impost(imponibile_calcolato.string()); TString impost(imponibile_calcolato.string());
lm.set(MPAG_IMPONIBILE, impost); lm.set(MPAG_IMPONIBILE, impost);
} }

View File

@ -62,7 +62,8 @@ BEGIN
USE LF_NDITTE USE LF_NDITTE
INPUT CODDITTA F_CODDITTA INPUT CODDITTA F_CODDITTA
FIELD LF_NDITTE->RAPPR FIELD LF_NDITTE->RAPPR
JOIN LF_ANAG INTO CODANAGR=RAPPR TIPOA="F" CHECKTYPE NORMAL
JOIN LF_ANAG INTO CODANAGR==RAPPR TIPOA=="F"
JOIN LF_ANAGFIS TO LF_ANAG INTO CODANAGR=CODANAGR JOIN LF_ANAGFIS TO LF_ANAG INTO CODANAGR=CODANAGR
JOIN LF_COMUNI TO LF_ANAGFIS INTO COM==COMNASC JOIN LF_COMUNI TO LF_ANAGFIS INTO COM==COMNASC
JOIN LF_COMUNI TO LF_ANAG ALIAS 1 INTO COM==COMRES JOIN LF_COMUNI TO LF_ANAG ALIAS 1 INTO COM==COMRES

View File

@ -951,6 +951,7 @@ BEGIN
OUTPUT F_NISCRA I1 OUTPUT F_NISCRA I1
OUTPUT F_CODFISCAAF S1 OUTPUT F_CODFISCAAF S1
GROUP G_ALL GROUP G_ALL
FLAGS "Z"
END END
STRING F_DENCAAF 50 STRING F_DENCAAF 50

View File

@ -269,6 +269,7 @@ BEGIN
OUTPUT F_DENCAAF S0 OUTPUT F_DENCAAF S0
OUTPUT F_NISCRA I1 OUTPUT F_NISCRA I1
OUTPUT F_CODFISCAAF S1 OUTPUT F_CODFISCAAF S1
FLAGS "Z"
END END
STRING F_DENCAAF 50 STRING F_DENCAAF 50

View File

@ -385,6 +385,7 @@ BEGIN
OUTPUT F_NISCRA I1 OUTPUT F_NISCRA I1
OUTPUT F_CODFISCAAF S1 OUTPUT F_CODFISCAAF S1
GROUP G_ALL GROUP G_ALL
FLAGS "Z"
END END
STRING F_DENCAAF 50 STRING F_DENCAAF 50

View File

@ -65,9 +65,14 @@ BEGIN
KEY 1 KEY 1
END END
TEXT DLG_NULL
BEGIN
PROMPT 3 2 "Causale"
END
STRING F_CODCAUS 2 STRING F_CODCAUS 2
BEGIN BEGIN
PROMPT 3 3 "Causale " PROMPT 3 3 ""
USE %CA7 SELECT ((I0!="1015")&&(S1="D")) USE %CA7 SELECT ((I0!="1015")&&(S1="D"))
INPUT CODTAB F_CODCAUS INPUT CODTAB F_CODCAUS
DISPLAY "Codice " CODTAB DISPLAY "Codice " CODTAB
@ -89,20 +94,16 @@ END
NUMBER F_CODTRIB 4 NUMBER F_CODTRIB 4
BEGIN BEGIN
PROMPT 3 4 "" PROMPT 8 3 ""
FLAGS "D" FLAGS "D"
END END
STRING QDF_CODCAUSD 1 STRING QDF_CODCAUSD 1
BEGIN BEGIN
PROMPT 9 4 "" PROMPT 14 3 ""
FLAGS "D" SHEET "Codice|Descrizione@60"
END INPUT QDF_CODCAUSD
ITEM " | "
LISTBOX F_DESCRCAUS 60
BEGIN
PROMPT 12 4 ""
ITEM "|"
ITEM "A|prestaz. di lav. aut. ... nelles. arti o prof. abituale" ITEM "A|prestaz. di lav. aut. ... nelles. arti o prof. abituale"
ITEM "B|prestaz. rese da amministratori, sindaci e revisori..." ITEM "B|prestaz. rese da amministratori, sindaci e revisori..."
ITEM "C|prestaz. rese da collaboratori a giornali, riviste, ..." ITEM "C|prestaz. rese da collaboratori a giornali, riviste, ..."
@ -120,6 +121,14 @@ BEGIN
ITEM "R|indennità corrisp. per la cessaz. di attività sportiva prof" ITEM "R|indennità corrisp. per la cessaz. di attività sportiva prof"
ITEM "S|indennità di trasf. o di rimborso forfettario di spese..." ITEM "S|indennità di trasf. o di rimborso forfettario di spese..."
ITEM "T|altro titolo diverso dai precedenti" ITEM "T|altro titolo diverso dai precedenti"
OUTPUT QDF_CODCAUSD
OUTPUT F_DESCRCAUS
FLAGS "D"
END
STRING F_DESCRCAUS 60
BEGIN
PROMPT 17 3 ""
FLAGS "D" FLAGS "D"
END END

View File

@ -72,7 +72,7 @@ END
NUMBER F_ENTE 2 NUMBER F_ENTE 2
BEGIN BEGIN
PROMPT 2 8 "" PROMPT 2 8 ""
COPY USE F_H1ANNO USE LF_QUAH
CHECKTYPE REQUIRED CHECKTYPE REQUIRED
INPUT CODDITTA F_CODDITTA SELECT INPUT CODDITTA F_CODDITTA SELECT
INPUT H1ANNO F_H1ANNO SELECT INPUT H1ANNO F_H1ANNO SELECT
@ -82,12 +82,13 @@ BEGIN
FIELD LF_QUAH->H1ENTE FIELD LF_QUAH->H1ENTE
MESSAGE COPY,F_ENTEBIS MESSAGE COPY,F_ENTEBIS
KEY 1 KEY 1
END FLAGS "Z"
END
NUMBER F_ENTEBIS 2 NUMBER F_ENTEBIS 2
BEGIN BEGIN
PROMPT 2 8 "" PROMPT 2 8 ""
FLAGS "G" FLAGS "GZ"
USE %ENT USE %ENT
CHECKTYPE FORCED CHECKTYPE FORCED
INPUT CODTAB F_ENTEBIS INPUT CODTAB F_ENTEBIS

View File

@ -24,7 +24,7 @@ class M71310_application : public TRelation_application
{ {
TRelation* _rel; TRelation* _rel;
TMask* _msk; TMask* _msk;
TGenera _app; TGenera* _app;
TConfig* _cnf; TConfig* _cnf;
int _anno; int _anno;
@ -64,7 +64,7 @@ M71310_application& app() { return (M71310_application&) main_app(); }
bool M71310_application::generazione(TMask_field& f , KEY k) bool M71310_application::generazione(TMask_field& f , KEY k)
{ {
if (k == K_SPACE) if (k == K_SPACE)
app()._app.set(get_firm_770(), app()._cnf); app()._app->set(get_firm_770(), app()._cnf);
return TRUE; return TRUE;
} }
@ -438,6 +438,7 @@ bool M71310_application::user_create()
_cnf = new TConfig(CONFIG_STUDIO); _cnf = new TConfig(CONFIG_STUDIO);
_rel = new TRelation (LF_QUAL); _rel = new TRelation (LF_QUAL);
_msk = new TMask("771310a"); _msk = new TMask("771310a");
_app = new TGenera('d');
set_search_field(F_QLANNOPAG); set_search_field(F_QLANNOPAG);
_msk->set_handler (F_GENERA, generazione); _msk->set_handler (F_GENERA, generazione);
@ -461,6 +462,7 @@ bool M71310_application::user_destroy()
delete _msk; delete _msk;
delete _rel; delete _rel;
delete _cnf; delete _cnf;
delete _app;
return TRUE; return TRUE;
} }

View File

@ -103,26 +103,14 @@ void TGenera::causale(int causale)
bool TGenera::set(const long codditta, TConfig* cnf, const char* section) bool TGenera::set(const long codditta, TConfig* cnf, const char* section)
{ {
TString16 filt; TString16 filt;
TRelation rel(LF_RPAG);
int causale; int causale;
TRelation* rel; bool ok_gen;
TCursor* cur;
if (!yesno_box("Conferma la generazione dei versamenti?"))
return FALSE;
_codditta = codditta;
_annodic = (int)cnf->get_long(ANNO_SEL, section);
this_genera = this; this_genera = this;
rel = new TRelation (LF_RPAG); // controllo presenza causale 1015
filt.format("CODDITTA=%ld", codditta);
cur = new TCursor(rel,filt,1);
cur->set_filterfunction (filter_func);
causale = atoi(cnf->get("CoCa1015", section)); causale = atoi(cnf->get("CoCa1015", section));
if (causale) if (causale)
{ {
if (!causale1015(causale)) if (!causale1015(causale))
@ -131,14 +119,30 @@ bool TGenera::set(const long codditta, TConfig* cnf, const char* section)
else else
return warning_box("Manca la causale 1015 nei parametri di studio"); return warning_box("Manca la causale 1015 nei parametri di studio");
// conferma di generazione
TString scritta(60);
scritta.format("Conferma generazione dei versamenti\n per la ditta %ld ?", codditta);
if (!yesno_box(scritta))
return TRUE;
// valorizzo anno dichiarazione e codice ditta per cui generare
_codditta = codditta;
_annodic = (int)cnf->get_long(ANNO_SEL, section);
// preparo cursore su righe di versamento
filt.format("CODDITTA=%ld", codditta);
TCursor cur(&rel,filt,1);
cur.set_filterfunction (filter_func);
// azzeramento versamenti quadro L
azzera_quadroL(); azzera_quadroL();
genera_riga(cur);
// generazione versamenti quadro L
// (se ritorna una richiesta di fine non prosegue con l'arrotondamento)
if (ok_gen = genera_riga(&cur))
arrotonda(); arrotonda();
delete cur; return ok_gen;
delete rel;
return FALSE;
} }
int TGenera::controllo_parametri() int TGenera::controllo_parametri()
@ -150,23 +154,17 @@ int TGenera::controllo_parametri()
const int rc = base.read(); const int rc = base.read();
if (rc == NOERR) if (rc == NOERR)
{ {
TDate dv (base.get_date("DATAVERS")); TString appname;
char lv = base.get_char("LUOVERS"); appname.format("776mod -4 %c",_liv);
char tv = base.get_char("TIPOVERS");
TString s(base.get("SERIE"));
TString n(base.get("NUMERO"));
if (!dv.ok() || lv == '\0' || tv == '\0' || n == "" || (s == "" && tv != 'C') )
{
TString appname("776mod -4 d");
TExternal_app a (appname); TExternal_app a (appname);
a.run(); a.run();
TMailbox m; TMailbox m;
TMessage* msg = m.next_s(""); TMessage* msg = m.next_s("");
int subj; int subj;
// 1 => uscito con Registra // 1 => uscito con Registra
// 0 => uscito con Quit // 0 => uscito con Quit
if (msg != NULL) if (msg != NULL)
{ {
subj = atoi(msg->body()); subj = atoi(msg->body());
@ -176,7 +174,6 @@ int TGenera::controllo_parametri()
return ESCI; return ESCI;
} }
} }
}
#ifdef DBG #ifdef DBG
if (rc != NOERR) if (rc != NOERR)
return warning_box("Errore di lettura su base cod. %d", rc); return warning_box("Errore di lettura su base cod. %d", rc);
@ -199,7 +196,10 @@ bool TGenera::azzera_quadroL()
cl->freeze(); cl->freeze();
(*cl) = 0L; (*cl) = 0L;
TProgind progn(cl_items, "Azzeramento quadro L", FALSE, TRUE);
TString scritta(60);
scritta.format("Azzeramento quadro L per la ditta %ld", _codditta);
TProgind progn(cl_items, scritta, FALSE, TRUE);
TLocalisamfile& fl = cl->file(); TLocalisamfile& fl = cl->file();
for (int i = 0; i < cl_items; i++, ++(*cl)) for (int i = 0; i < cl_items; i++, ++(*cl))
@ -272,11 +272,11 @@ void TGenera::dati_rver(TLocalisamfile& rver,TSchedaP& sch, long numvers)
_datavers = rver.get_date(VER_DATAVERS); _datavers = rver.get_date(VER_DATAVERS);
_luovers = rver.get_char(VER_LUOVERS); _luovers = rver.get_char(VER_LUOVERS);
_tipover = rver.get_char(VER_TIPOVERS); _tipover = rver.get_char(VER_TIPOVERS);
_serie = rver.get (VER_SERIE); _serie = rver.get(VER_SERIE);
_numero = rver.get (VER_NUMERO); _numero = rver.get(VER_NUMERO);
_sNprog = rver.get (VER_PROGBANC); _sNprog = rver.get(VER_PROGBANC);
_sNprog.trim(); _sNprog.trim();
if (_sNprog.not_empty()) if (_tipover == DELEGA_BANCARIA && _sNprog != "000000")
_numero << _sNprog; _numero << _sNprog;
} }
} }
@ -312,7 +312,10 @@ void TGenera::arrotonda()
cl->freeze(); cl->freeze();
(*cl) = 0L; (*cl) = 0L;
TProgind progn(cl_items,"Arrotondamento ritenute versate", FALSE, TRUE);
TString scritta(60);
scritta.format("Arrotondamento ritenute versate per la ditta %ld", _codditta);
TProgind progn(cl_items, scritta, FALSE, TRUE);
TLocalisamfile& fl = cl->file(); TLocalisamfile& fl = cl->file();
for (int i = 0; i < cl_items; i++, ++(*cl)) for (int i = 0; i < cl_items; i++, ++(*cl))
@ -325,7 +328,7 @@ void TGenera::arrotonda()
} }
} }
void TGenera::genera_riga(TCursor* cur) bool TGenera::genera_riga(TCursor* cur)
{ {
TLocalisamfile ql (LF_QUAL); TLocalisamfile ql (LF_QUAL);
TLocalisamfile rver(LF_RVER); TLocalisamfile rver(LF_RVER);
@ -392,7 +395,7 @@ void TGenera::genera_riga(TCursor* cur)
dati_rver(rver,scheda_corr,numvers); dati_rver(rver,scheda_corr,numvers);
else else
if (cp == ESCI) if (cp == ESCI)
break; // ho premuto il bottone FINE return FALSE; // ho premuto il bottone FINE
} }
ql.setkey(1); ql.setkey(1);
@ -418,7 +421,6 @@ void TGenera::genera_riga(TCursor* cur)
} }
ql.put(QUL_QLSERIE, _serie); ql.put(QUL_QLSERIE, _serie);
ql.put(QUL_QLNUMERO, _numero); ql.put(QUL_QLNUMERO, _numero);
TRectype dep(ql.curr()); TRectype dep(ql.curr());
if (ql.read(_isequal, _lock) == NOERR) if (ql.read(_isequal, _lock) == NOERR)
@ -445,6 +447,8 @@ void TGenera::genera_riga(TCursor* cur)
} }
_righe_gia_presenti->set(scheda_corr,numvers); _righe_gia_presenti->set(scheda_corr,numvers);
} }
return TRUE;
} }
@ -464,7 +468,7 @@ class TGenera_versamenti : public TApplication
TGenera& genera() { return *_genera; } TGenera& genera() { return *_genera; }
public: public:
TGenera_versamenti(char livello) : _liv(toupper(livello)) {} TGenera_versamenti(char livello = 'S') : _liv(toupper(livello)) {}
~TGenera_versamenti() {} ~TGenera_versamenti() {}
}; };
@ -474,22 +478,20 @@ bool TGenera_versamenti::menu(MENU_TAG m)
{ {
long codditta, codditta_prec; long codditta, codditta_prec;
int i = 0; int i = 0;
TConfig cnf_user(CONFIG_USER);
if (m == BAR_ITEM(1)) if (m == BAR_ITEM(1))
if (_liv == 'S')
{ {
codditta_prec = get_firm_770(); codditta_prec = get_firm_770();
while ((codditta = _cnf->get_long(DITTE_SEL, _section, i++)) != 0L) while ((codditta = cnf_user.get_long(DITTE_SEL, _section, i++)) != 0L)
{ {
set_firm_770(codditta); set_firm_770(codditta);
_genera->set(codditta, _cnf, _section); if (!_genera->set(codditta, _cnf, _section))
break;
} }
set_firm_770(codditta_prec); set_firm_770(codditta_prec);
return FALSE; return FALSE;
} }
else
return _genera->set(get_firm_770(), _cnf, _section);
return FALSE; return FALSE;
} }
@ -502,8 +504,8 @@ bool TGenera_versamenti::create()
_scperc = new TLocalisamfile(LF_SCPERC); _scperc = new TLocalisamfile(LF_SCPERC);
_base = new TLocalisamfile(LF_BASE); _base = new TLocalisamfile(LF_BASE);
_ql = new TLocalisamfile(LF_QUAL); _ql = new TLocalisamfile(LF_QUAL);
_genera = new TGenera; _genera = new TGenera('s');
_cnf = new TConfig(_liv == 'S' ? CONFIG_USER : CONFIG_STUDIO); _cnf = new TConfig(CONFIG_STUDIO);
_section = name(); _section = name();
_section.cut(2); _section.cut(2);

View File

@ -29,14 +29,14 @@ class TGenera
long _codditta; long _codditta;
real _riteff,_ritver; real _riteff,_ritver;
TDate _datavers; TDate _datavers;
char _luovers,_tipover; char _luovers,_tipover,_liv;
TString _serie,_numero,_codqua,_cq1015,_rss,_note,_sNprog; TString _serie,_numero,_codqua,_cq1015,_rss,_note,_sNprog;
bool _ver1015; bool _ver1015;
bool azzera_quadroL(); bool azzera_quadroL();
bool causale1015 (int codcaus); bool causale1015 (int codcaus);
void causale (int causale); void causale (int causale);
void genera_riga (TCursor*); bool genera_riga (TCursor*);
void dati_rver (TLocalisamfile&, TSchedaP& scheda, long numvers); void dati_rver (TLocalisamfile&, TSchedaP& scheda, long numvers);
void dati_scperc (TSchedaP& scheda); void dati_scperc (TSchedaP& scheda);
int controllo_parametri(); int controllo_parametri();
@ -45,8 +45,8 @@ public:
bool set(const long codditta, TConfig* cnf, const char* section="77"); bool set(const long codditta, TConfig* cnf, const char* section="77");
void arrotonda(); void arrotonda();
TGenera() : _annodic(0),_annopag(0),_mesepag(0),_causale(0),_artbil(0), TGenera(char livello) : _liv(toupper(livello)),_annodic(0),_annopag(0),
_ab1015(0), _ct1015(0), _codtrib(0) {} _mesepag(0),_causale(0),_artbil(0),_ab1015(0), _ct1015(0), _codtrib(0) {}
virtual ~TGenera() {} virtual ~TGenera() {}
}; };

View File

@ -425,6 +425,8 @@ void TSelezioneDich::build_nomiditte()
for (_nditte->first(); !_nditte->eof(); _nditte->next()) for (_nditte->first(); !_nditte->eof(); _nditte->next())
{ {
prg.addstatus(1); prg.addstatus(1);
if (exist_dichiar_770(dt.get_long("CODDITTA")))
{
_n_ditte++; _n_ditte++;
TToken_string* d = new TToken_string(64); TToken_string* d = new TToken_string(64);
d->add(" "); // spazio per la selezione d->add(" "); // spazio per la selezione
@ -432,6 +434,7 @@ void TSelezioneDich::build_nomiditte()
d->add(dt.get("RAGSOC")); d->add(dt.get("RAGSOC"));
_nomiditte.add(d); _nomiditte.add(d);
} }
}
} }
void TSelezioneDich::build_ditte_sheet() void TSelezioneDich::build_ditte_sheet()

View File

@ -13,6 +13,21 @@
#include "776500.h" #include "776500.h"
#include "77lib.h" #include "77lib.h"
// derivazione della classe Tmask per reimplementare
// la funzione membro can_be_closed() in modo da poter
// avvertire l'utente in caso di pressione del tasto ALT+F4
class TMaskDerived : public TMask
{
public:
// @cmember Controlla se la maschera puo' essere chiusa (TRUE se puo' esserlo)
virtual bool can_be_closed() const;
// @cmember Costruttore (crea la maschera leggendo la descrizione dal file .msk)
TMaskDerived(const char* title) : TMask(title) {};
// @cmember Distruttore
virtual ~TMaskDerived(){};
};
class TParametri_genera : public TApplication class TParametri_genera : public TApplication
{ {
char _liv; // Se stampa a livello di studio char _liv; // Se stampa a livello di studio
@ -37,9 +52,19 @@ class TParametri_genera : public TApplication
HIDDEN TParametri_genera& app() { return (TParametri_genera&) main_app(); } HIDDEN TParametri_genera& app() { return (TParametri_genera&) main_app(); }
// implementazione della funzione TMaskDerived::can_be_closed()
// per segnalare all'utente l'interruzione del processo di generazione
bool TMaskDerived::can_be_closed() const
{
bool ok = TRUE;
if (is_running())
ok = yesno_box("Annullare la generazione dei versamenti?");
return ok;
}
void TParametri_genera::on_config_change() void TParametri_genera::on_config_change()
{ {
TConfig conf(_liv == 'S' ? CONFIG_USER : CONFIG_STUDIO); TConfig conf(CONFIG_STUDIO);
_anno_dic = (int)conf.get_long(ANNO_SEL, _section); _anno_dic = (int)conf.get_long(ANNO_SEL, _section);
} }
@ -61,63 +86,19 @@ KEY TParametri_genera::registra(TMask& m, bool check_dirty)
bool TParametri_genera::main_loop() bool TParametri_genera::main_loop()
{ {
long codditta, codditta_prec; long codditta;
int i = 0; int i = 0;
KEY tasto; KEY tasto;
TMask msk("776500a");
TMaskDerived msk("776500a");
msk.open_modal(); msk.open_modal();
// da dichiarazioni selezionate
if (_liv == 'S')
{
codditta_prec = get_firm_770();
tasto = K_TAB;
// loop di scansione dichiarazioni selezionate
while ((codditta = _cnf->get_long(DITTE_SEL, _section, i++)) != 0L
&& tasto != K_QUIT)
{
set_firm_770(codditta);
_rel->lfile().put("CODDITTA", codditta);
_rel->read();
msk.autoload(*_rel);
tasto = K_TAB;
// loop di gestione maschera
while (tasto != K_ESC && tasto != K_QUIT)
{
tasto = msk.run();
switch (tasto)
{
case K_ESC:
if (registra(msk,TRUE) == K_ESC)
tasto = K_TAB;
break;
case K_QUIT:
if (registra(msk,TRUE) == K_ESC)
tasto = K_TAB;
break;
case K_SAVE:
registra(msk,FALSE);
default:
break;
}
} // endloop di gestione maschera
} // endloop di scansione dichiarazioni selezionate
set_firm_770(codditta_prec);
}
// dalla manutenzione dichiarazione
else
{
codditta = get_firm_770(); codditta = get_firm_770();
_rel->lfile().put("CODDITTA", codditta); _rel->lfile().put("CODDITTA", codditta);
_rel->read(); _rel->read();
msk.autoload(*_rel); msk.autoload(*_rel);
tasto = K_TAB; tasto = K_TAB;
_risposta = 0;
// loop di gestione maschera // loop di gestione maschera
while (tasto != K_ESC && tasto != K_QUIT) while (tasto != K_ESC && tasto != K_QUIT)
@ -131,9 +112,9 @@ bool TParametri_genera::main_loop()
_risposta = 1; _risposta = 1;
break; break;
case K_QUIT: case K_QUIT:
if (registra(msk,TRUE) == K_ESC) if (yesno_box("Annullare la generazione dei versamenti?"))
tasto = K_TAB;
_risposta = 0; _risposta = 0;
else tasto = K_TAB;
break; break;
case K_SAVE: case K_SAVE:
registra(msk,FALSE); registra(msk,FALSE);
@ -142,9 +123,8 @@ bool TParametri_genera::main_loop()
break; break;
} }
} // endloop di gestione maschera } // endloop di gestione maschera
}
msk.close_modal(); msk.close_modal();
return FALSE; return FALSE;
} }
@ -165,15 +145,19 @@ bool TParametri_genera::destroy()
delete _rel; delete _rel;
delete _cnf; delete _cnf;
if (_liv == 'D') TString appname;
{
TString appname = "771mod -3";
TString body = ""; TString body = "";
if (_liv == 'D')
appname = "771mod -3";
else
appname = "774 -0";
body << _risposta; body << _risposta;
TMessage msg (appname,"",(const char*) body); TMessage msg (appname,"",(const char*) body);
TMailbox mb; TMailbox mb;
mb.send(msg); mb.send(msg);
}
return TApplication::destroy(); return TApplication::destroy();
} }

View File

@ -13,13 +13,11 @@ END
BUTTON DLG_CANCEL 10 2 BUTTON DLG_CANCEL 10 2
BEGIN BEGIN
PROMPT -23 -1 "" PROMPT -23 -1 ""
MESSAGE EXIT,K_ESC
END END
BUTTON DLG_QUIT 10 2 BUTTON DLG_QUIT 10 2
BEGIN BEGIN
PROMPT -33 -1 "" PROMPT -33 -1 ""
MESSAGE EXIT,K_QUIT
END END
ENDPAGE ENDPAGE

View File

@ -31,9 +31,9 @@ BEGIN
PROMPT -23 -1 "" PROMPT -23 -1 ""
END END
BUTTON DLG_NULL 9 2 BUTTON DLG_AZZERA 9 2
BEGIN BEGIN
PROMPT -33 -1 "Azzera" PROMPT -33 -1 "A~zzera"
MESSAGE RESET,1@ MESSAGE RESET,1@
END END

View File

@ -60,9 +60,9 @@ BEGIN
PROMPT -23 -1 "" PROMPT -23 -1 ""
END END
BUTTON DLG_NULL 9 2 BUTTON DLG_AZZERA 9 2
BEGIN BEGIN
PROMPT -33 -1 "Azzera" PROMPT -33 -1 "A~zzera"
MESSAGE RESET,1@ MESSAGE RESET,1@
END END

View File

@ -1,5 +1,10 @@
USE 42 USE 42
JOIN 37 INTO CODDITTA=CODDITTA JOIN 37 INTO CODDITTA=CODDITTA
JOIN 9 INTO CODDITTA==CODDITTA
JOIN 6 TO 9 ALIAS 106 INTO TIPOA=TIPOA CODANAGR=CODANAGR
JOIN 8 TO 106@ ALIAS 108 INTO CODANAGR=CODANAGR
JOIN 13 TO 108@ ALIAS 113 INTO COM==COMNASC
JOIN 13 TO 106@ ALIAS 213 INTO COM==COMRF(COMRES)
END END
DESCRIPTION DESCRIPTION
@ -24,7 +29,7 @@ STRINGA 1
BEGIN BEGIN
KEY "Cod.Conc.1" KEY "Cod.Conc.1"
PROMPT 41 1 "" PROMPT 41 1 ""
FIELD 37->L0CCONC1 FIELD 213@->UFFCONC
END END
STRINGA 2 STRINGA 2

View File

@ -2,3 +2,4 @@
#define F_CODDITTA 101 #define F_CODDITTA 101
#define F_RAGDITTA 102 #define F_RAGDITTA 102
#define F_PI 103 #define F_PI 103
#define DLG_AZZERA 150

View File

@ -60,9 +60,9 @@ BEGIN
PROMPT -23 -1 "" PROMPT -23 -1 ""
END END
BUTTON DLG_NULL 9 2 BUTTON DLG_AZZERA 9 2
BEGIN BEGIN
PROMPT -33 -1 "Azzera" PROMPT -33 -1 "A~zzera"
MESSAGE RESET,1@ MESSAGE RESET,1@
END END

View File

@ -43,7 +43,7 @@ BEGIN
USE LF_QUAN USE LF_QUAN
INPUT CODDITTA QNF_CODDITTA SELECT INPUT CODDITTA QNF_CODDITTA SELECT
INPUT NPROG QNF_NPROG INPUT NPROG QNF_NPROG
DISPLAY "N°" NPROG DISPLAY "Num." NPROG
DISPLAY "Mese" MESERIF DISPLAY "Mese" MESERIF
DISPLAY "Anno" ANNORIF DISPLAY "Anno" ANNORIF
DISPLAY "Imposta rimborsata" IMPOSTA DISPLAY "Imposta rimborsata" IMPOSTA

View File

@ -51,7 +51,7 @@ BEGIN
USE LF_QUAP SELECT (CODDITTA=#QPF_CODDITTA) USE LF_QUAP SELECT (CODDITTA=#QPF_CODDITTA)
INPUT CODDITTA QPF_CODDITTA SELECT INPUT CODDITTA QPF_CODDITTA SELECT
INPUT NPROG QPF_NPROG INPUT NPROG QPF_NPROG
DISPLAY "N°" NPROG DISPLAY "Num." NPROG
DISPLAY "Imposta versata" IMPOSTA DISPLAY "Imposta versata" IMPOSTA
DISPLAY "Interessi dipendente" INTERDIP DISPLAY "Interessi dipendente" INTERDIP
DISPLAY "Interessi datore di lavoro" INTERDAT DISPLAY "Interessi datore di lavoro" INTERDAT

View File

@ -43,7 +43,7 @@ BEGIN
USE LF_QUAQ SELECT (CODDITTA=#QQF_CODDITTA) USE LF_QUAQ SELECT (CODDITTA=#QQF_CODDITTA)
INPUT CODDITTA QQF_CODDITTA SELECT INPUT CODDITTA QQF_CODDITTA SELECT
INPUT NPROG QQF_NPROG INPUT NPROG QQF_NPROG
DISPLAY "N°" NPROG DISPLAY "Num." NPROG
DISPLAY "Mese" MESEPAG DISPLAY "Mese" MESEPAG
DISPLAY "Anno" ANNOPAG DISPLAY "Anno" ANNOPAG
DISPLAY "Contributo versato" CONTVERS DISPLAY "Contributo versato" CONTVERS

View File

@ -43,7 +43,7 @@ BEGIN
USE LF_QUAR SELECT (CODDITTA=#QRF_CODDITTA) USE LF_QUAR SELECT (CODDITTA=#QRF_CODDITTA)
INPUT CODDITTA QRF_CODDITTA SELECT INPUT CODDITTA QRF_CODDITTA SELECT
INPUT NPROG QRF_NPROG INPUT NPROG QRF_NPROG
DISPLAY "N°" NPROG DISPLAY "Num." NPROG
DISPLAY "Mese" MESERIF DISPLAY "Mese" MESERIF
DISPLAY "Anno" ANNORIF DISPLAY "Anno" ANNORIF
DISPLAY "Imposta rimborsata" IMPRIMB DISPLAY "Imposta rimborsata" IMPRIMB

View File

@ -51,7 +51,7 @@ BEGIN
USE LF_QUAS SELECT (CODDITTA=#QSF_CODDITTA) USE LF_QUAS SELECT (CODDITTA=#QSF_CODDITTA)
INPUT CODDITTA QSF_CODDITTA SELECT INPUT CODDITTA QSF_CODDITTA SELECT
INPUT NPROG QSF_NPROG INPUT NPROG QSF_NPROG
DISPLAY "N°" NPROG DISPLAY "Num." NPROG
DISPLAY "Imposta versata" IMPOSTA DISPLAY "Imposta versata" IMPOSTA
DISPLAY "Interessi dipendente" INTERDIP DISPLAY "Interessi dipendente" INTERDIP
DISPLAY "Interessi datore di lavoro" INTERDAT DISPLAY "Interessi datore di lavoro" INTERDAT

View File

@ -43,7 +43,7 @@ BEGIN
USE LF_QUAT SELECT (CODDITTA=#QTF_CODDITTA) USE LF_QUAT SELECT (CODDITTA=#QTF_CODDITTA)
INPUT CODDITTA QTF_CODDITTA SELECT INPUT CODDITTA QTF_CODDITTA SELECT
INPUT NPROG QTF_NPROG INPUT NPROG QTF_NPROG
DISPLAY "N°" NPROG DISPLAY "Num." NPROG
DISPLAY "Mese" MESEPAG DISPLAY "Mese" MESEPAG
DISPLAY "Anno" ANNOPAG DISPLAY "Anno" ANNOPAG
DISPLAY "Contributo versato" CONTVERS DISPLAY "Contributo versato" CONTVERS