Messe di inutili modifiche

git-svn-id: svn://10.65.10.50/trunk@3336 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
nik 1996-08-08 09:06:38 +00:00
parent 380935b06b
commit 8c10e20088
21 changed files with 1242 additions and 375 deletions

@ -21,6 +21,9 @@ HIDDEN real __percra = ZERO;
HIDDEN TString80 __rite;
HIDDEN bool __bRicalcolaRigaPag = FALSE;
HIDDEN real __rCompensoCg = ZERO;
void CalcolaInps(const real& rPercCassaPrev,const real& rCompenso, const real &rPercContrInps,
const real& rPercAssContrInps,const real &rQuotaCommitContrInps,
real& rInpsPerc,real &rInpsComplex);
void TSchedaPercipienti::init_mask(TMask& m)
{
@ -55,21 +58,7 @@ void TSchedaPercipienti::init_mask(TMask& m)
real& imponibile = _coll._compenso;
rpag.put("DATAPAG", _coll._datadoc);
rpag.put("COMPENSO", compenso);
// Come 'zzo fa a calcolare l'imponibile se ancora nun c'e' la causale?
// const real impo_calc = calcola_imponibile(compenso);
// rpag.put("IMPONIBILE", impo_calc);
rpag.put("SPESA", spese);
/********** 26.7.96 non esiste piu' sta' roba
const real rite_calc = calcola_ritenuta(impo_calc);
rpag.put("RITENUTA", rite_calc);
real perc = (rite_calc * 100) / impo_calc;
perc.round(2);
rpag.put("PERC", perc);
rpag.put("NUMVERS", (long)-1);
const real netto = compenso - rite_calc + spese;
rpag.put("NETTO", netto);
**************************/
// forza il ricalcolo della riga pag. (da check_causale)
__bRicalcolaRigaPag = TRUE;
__rCompensoCg = compenso;
@ -78,8 +67,10 @@ void TSchedaPercipienti::init_mask(TMask& m)
pags.force_update();
}
}
break;
default:
// break;
default:
// per evitare di riscrivere tutto dopo registra
_coll._tipo_coll = nessuno;
break;
}
}
@ -87,7 +78,9 @@ void TSchedaPercipienti::init_mask(TMask& m)
}
// Utilizzato in collegamento da cg
real TSchedaPercipienti::calcola_ritenuta(const real& imponibile, TString& sPercRa)
real TSchedaPercipienti::calcola_ritenuta(const real& imponibile, TString& sPercRa,
real& rPercCassaPrev,real& rPercContrInps,real& rPercAssContrInps,
real& rQuotaCommitContrInps, bool& bContrInps)
{
TTable cau("%ca7");
TString codcau(curr_mask().get(F_CODCAUS));
@ -96,6 +89,21 @@ real TSchedaPercipienti::calcola_ritenuta(const real& imponibile, TString& sPerc
cau.read();
real rQuotaRaCaus = cau.get_real("R0");
sPercRa = cau.get("R0");
bContrInps=cau.get_bool("B4");
if (bContrInps)
{
rPercCassaPrev=cau.get_real("R5");
rPercContrInps=cau.get_real("R1");
rPercAssContrInps=cau.get_real("R2");
rQuotaCommitContrInps=cau.get_real("R3");
}
else
{
rPercCassaPrev=ZERO;
rPercContrInps=ZERO;
rPercAssContrInps=ZERO;
rQuotaCommitContrInps=ZERO;
}
real rite = ZERO;
rite = (imponibile * rQuotaRaCaus)/100.00;
return rite;
@ -830,12 +838,12 @@ bool TSchedaPercipienti::check_causale(TMask_field& f, KEY k)
{
TMask& m = f.mask();
if (k == K_TAB)
if (k == K_TAB && m.is_running())
// if (f.to_check(k))
{
TFixed_string cod_caus(f.get(),3);
if (cod_caus.empty() && m.is_running())
if (cod_caus.empty())
{
KEY ke = m.last_key();
if (ke != K_QUIT && ke != K_ESC)
@ -851,17 +859,41 @@ bool TSchedaPercipienti::check_causale(TMask_field& f, KEY k)
return f.warning_box("Con il quadro C o E1 e' possibile l'immissione"
" per le sole persone fisiche");
if (__bRicalcolaRigaPag)
{
{
real rInpsComplex, rInpsPerc;
TSheet_field& pags = app().pags();
TMask& ssMask = pags.sheet_mask();
real rPercCassaPrev = ZERO;
real rPercContrInps = ZERO;
real rPercAssContrInps = ZERO;
real rQuotaCommitContrInps = ZERO;
bool bContrInps=FALSE;
// aggiorna la riga ( collegamenti con 6(occas.) e 3(pag.) )
TString sPercRa(6);
real rImpoCg = app().calcola_imponibile(__rCompensoCg);
real rRiteCg = app().calcola_ritenuta(rImpoCg, sPercRa);
real rRiteCg = app().calcola_ritenuta(rImpoCg,sPercRa,rPercCassaPrev,
rPercContrInps,rPercAssContrInps,rQuotaCommitContrInps,bContrInps);
TToken_string& tsRiga = pags.row(0);
tsRiga.add(rImpoCg.string(), 3);
tsRiga.add(sPercRa, 4);
tsRiga.add(rRiteCg.string(), 7);
tsRiga.add(rRiteCg.string(), 5);
// Calcola anche contributo INPS
if (bContrInps)
{
real rScorporaComp, rImpInps;
CalcolaInps(rPercCassaPrev,__rCompensoCg,rPercContrInps,rPercAssContrInps,
rQuotaCommitContrInps,rInpsComplex,rInpsPerc);
TString sInpsComp(rInpsComplex.string());
TString sInpsPerc(rInpsPerc.string());
tsRiga.add(sInpsPerc,6);
tsRiga.add(sInpsComp,7);
}
// Calcola il netto
real rSpesa(tsRiga.get(2));
real rNetto = __rCompensoCg-rRiteCg+rSpesa-rInpsPerc;
tsRiga.add(rNetto.string(),8);
pags.force_update(0);
// Per evitare che i valori vengano azzerati:
__compe = __rCompensoCg;
@ -1008,6 +1040,22 @@ bool TSchedaPercipienti::imponibile_handler(TMask_field& f, KEY k)
return TRUE;
}
void CalcolaInps(const real& rPercCassaPrev,const real& rCompenso,
const real& rPercContrInps,const real &rPercAssContrInps,
const real& rQuotaCommitContrInps, real& rInpsPerc,real& rInpsComplex)
{
real rScorporaComp, rImpInps;
rScorporaComp = (rCompenso / (100.00 + rPercCassaPrev)) * 100.00;
rImpInps = (rScorporaComp / 100.00) * rPercAssContrInps;
rImpInps.round(0);
rInpsComplex = (rImpInps / 100.00 ) * rPercContrInps;
// Se zero si considera 2/3
if (rQuotaCommitContrInps == ZERO)
rInpsPerc = rInpsComplex - ((rInpsComplex * 2)/3);
else
rInpsPerc = rInpsComplex - ((rInpsComplex * rQuotaCommitContrInps)/100.00);
}
//
// Handler del COMPENSO
//
@ -1068,17 +1116,9 @@ bool TSchedaPercipienti::compenso_handler(TMask_field& f, KEY k)
real rPercContrInps = mm.get_real(F_PERC_INPS);
real rPercAssContrInps = mm.get_real(F_PERC_ASS_INPS);
real rQuotaCommitContrInps = mm.get_real(F_PERC_COMMIT_INPS);
rScorporaComp = (compenso / (100.00 + rPercCassaPrev)) * 100.00;
rImpInps = (rScorporaComp / 100.00) * rPercAssContrInps;
rImpInps.round(0);
rInpsComplex = (rImpInps / 100.00 ) * rPercContrInps;
// Se zero si considera 2/3
if (rQuotaCommitContrInps == ZERO)
rInpsPerc = rInpsComplex - ((rInpsComplex * 2)/3);
else
rInpsPerc = rInpsComplex - ((rInpsComplex * rQuotaCommitContrInps)/100.00);
CalcolaInps(rPercCassaPrev,compenso,rPercContrInps,rPercAssContrInps,
rQuotaCommitContrInps,rInpsComplex,rInpsPerc);
TString sInpsComp(rInpsComplex.string());
TString sInpsPerc(rInpsPerc.string());
// Setto i compensi INPS solo se prima erano vuoti

@ -92,7 +92,9 @@ class TSchedaPercipienti : public TRelation_application
static bool calcola_ritenuta (TMask_field& f,const real& compenso,const bool forza=FALSE,const real perc=ZERO);
static real calcola_netto (TMask_field& f);
real calcola_imponibile(const real& compenso);
real calcola_ritenuta (const real& imponibile, TString& sPercRa);
real calcola_ritenuta (const real& imponibile, TString& sPercRa,
real& rPercCassaPrev, real &rPercContrInps, real& rPercAssContrInps,
real& rQuotaCommitContrInps, bool& bContrInps);
static long get_numvers (TMask_field& f);
static void setta_ritvers(TMask_field& f, const real& ritenuta);

@ -473,8 +473,8 @@ bool TDati_anagrafici::create()
if (ScrittureContabili())
{
_msk = new TMask ("771100d");
_msk->set_handler(F_ANAGR, indirizzo);
_msk->set_handler(F_ATTIVITA, attivita_handler);
_msk->set_handler(F_ANAGR, indirizzo);
_msk->set_handler(F_ATTIVITA, attivita_handler);
_msk->set_handler(F_ANAGRAFICA, anagrafica_handler);
}

@ -49,17 +49,17 @@ BEGIN
INPUT CODDITTA F_CODDITTA
JOIN LF_ATTIV TO LF_NDITTE INTO CODDITTA=CODDITTA CODATT=CODATTPREV
JOIN LF_COMUNI TO LF_ATTIV INTO COM==COMCS
OUTPUT F_RAGSOC LF_NDITTE->RAGSOC
OUTPUT F_ATTIV LF_ATTIV->CODATT
OUTPUT F_RAGSOC LF_NDITTE->RAGSOC
OUTPUT F_ATTIV LF_ATTIV->CODATT
OUTPUT ASCF_TIPOA LF_ATTIV->TIPOADS
OUTPUT F_ANAGR LF_ATTIV->CODANGRDS
OUTPUT F_INDCS LF_ATTIV->INDCS
OUTPUT F_CIVCS LF_ATTIV->CIVCS
OUTPUT F_CAPCS LF_ATTIV->CAPCS
OUTPUT F_COMCS LF_COMUNI->DENCOM
OUTPUT F_ANAGR LF_ATTIV->CODANGRDS
OUTPUT F_INDCS LF_ATTIV->INDCS
OUTPUT F_CIVCS LF_ATTIV->CIVCS
OUTPUT F_CAPCS LF_ATTIV->CAPCS
OUTPUT F_COMCS LF_COMUNI->DENCOM
OUTPUT F_PROVCS LF_COMUNI->PROVCOM
OUTPUT F_PTELCS LF_ATTIV->PTELCS
OUTPUT F_TELCS LF_ATTIV->TELCS
OUTPUT F_TELCS LF_ATTIV->TELCS
KEY 1
END

@ -4,7 +4,6 @@
// - Quadro A2 771mod -7 2 //
// - Quadro A3 771mod -7 3 //
//////////////////////////////////////////
#include <relapp.h>
#include <config.h>
#include <msksheet.h>
@ -21,6 +20,7 @@
#include "soctrasf.h"
#include "771200.h"
#include "774200.h"
#include "77qaall.h"
bool QA_cerca_codA(const long codditta, const long coddip, TString& quadro);
@ -56,12 +56,13 @@ class TQuadroA : public TRelation_application
bool _registra; // Se TRUE fa i riporti
TRelation* _rel;
TMask* _msk[2];
TMask* _mskAllegati; // maschera allegati 730 (A e A2)
long _coddip;
char _tipoq;
int _nproga;
int _mode;
int _anno_dic; // anno dichiarazione
TLocalisamfile* _qd;
TLocalisamfile* _qd, *_base;
TRiporti _rip;
int _file;
bool _soc_trasf;
@ -72,8 +73,9 @@ class TQuadroA : public TRelation_application
static bool nprog_handler (TMask_field& f, KEY key);
static bool codanagr_handler (TMask_field& f, KEY key);
static bool codditta_hnd (TMask_field& f, KEY key);
static bool setta_nprog (TMask_field& f);
static bool setta_nprog (TMask_field& f);
static bool QAA2alleg_handler (TMask_field& f, KEY key);
// Handler relativi alla manutenzione quadro A
static bool QA_comp_netti_hnd (TMask_field& f, KEY key);
static bool QA_tot_impon_hnd (TMask_field& f, KEY key);
@ -204,17 +206,21 @@ TMask* TQuadroA::load_mask(int n)
if (m)
{
m->set_handler(QAF_CODDITTA, codditta_hnd);
if (!QuadroA3())
if (QuadroA3())
{
m->set_handler(QAF_NPROG, nprog_handler);
m->set_handler(F_CODANAGDIP, codanagr_handler);
m->set_handler(F_CODANAGDIPQA, codanagr_handler);
}
else
{
m->set_handler(QAF_NPROG, QA3_nprog);
m->set_handler(F_CODANAGDIP, QA3_codip_handler);
m->set_handler(F_BASEOCCUPA, QA3_base_occupazionale);
}
else
{
if (QuadroA())
m->set_handler(QAF_ALLEG_A, QAA2alleg_handler);
if (QuadroA2())
m->set_handler(QA2F_ALLEG_A2, QAA2alleg_handler);
m->set_handler(QAF_NPROG, nprog_handler);
m->set_handler(F_CODANAGDIP, codanagr_handler);
m->set_handler(F_CODANAGDIPQA, codanagr_handler);
}
}
break;
@ -380,6 +386,50 @@ void TQuadroA::AA3SettaCognomeNome(TMask& m)
}
}
bool TQuadroA::QAA2alleg_handler(TMask_field& f, KEY k)
{
if (k==K_SPACE)
{
KEY kAll;
if (app().QuadroA())
{
const long lNumAllA = app()._base->get_long("N730ALLA");
TString sNumAll; sNumAll << lNumAllA;
app()._mskAllegati->hide(QA2_ANNO_ALL);
app()._mskAllegati->show(QA_ANNO_ALL);
app()._mskAllegati->hide(QA2_NUM_ALL);
app()._mskAllegati->set(QA_NUM_ALL, sNumAll);
app()._mskAllegati->show(QA_NUM_ALL);
}
else
{
const long lNumAllA2 = app()._base->get_long("N730ALLA2");
TString sNumAll; sNumAll << lNumAllA2;
app()._mskAllegati->hide(QA_ANNO_ALL);
app()._mskAllegati->show(QA2_ANNO_ALL);
app()._mskAllegati->hide(QA_NUM_ALL);
app()._mskAllegati->set(QA2_NUM_ALL, sNumAll);
app()._mskAllegati->show(QA2_NUM_ALL);
}
kAll = app()._mskAllegati->run();
if (kAll==K_ENTER)
{
if (app().QuadroA())
{
TString sAll (app()._mskAllegati->get(QA_NUM_ALL));
app()._base->put("N730ALLA", sAll);
}
else
{
TString sAll (app()._mskAllegati->get(QA2_NUM_ALL));
app()._base->put("N730ALLA2", sAll);
}
app()._base->rewrite();
}
}
return TRUE;
}
// Passa al modo inserimento/modifica.
bool TQuadroA::nprog_handler(TMask_field& f, KEY key)
{
@ -745,17 +795,24 @@ bool TQuadroA::user_create()
break;
}
_qd = new TLocalisamfile(_file);
_rel = new TRelation(_file);
_qd = new TLocalisamfile(_file);
_rel = new TRelation(_file);
_base = new TLocalisamfile(LF_BASE);
_codditta = get_firm_770();
// posiziona il base (per leggere allegati)
_base->zero();
_base->put("CODDITTA", _codditta);
_base->read();
set_search_field(F_CODANAGDIP);
_registra = FALSE;
load_mask(0);
if (QuadroA() || QuadroA2())
_mskAllegati = new TMask("77qaall");
_soc_trasf = FALSE;
return TRUE;
@ -766,6 +823,11 @@ bool TQuadroA::user_destroy()
if (_msk[1] != NULL) delete _msk[1];
if (_msk[0] != NULL) delete _msk[0];
if (QuadroA() || QuadroA2())
delete _mskAllegati;
delete _base;
TString16 quadro = "";
switch (_tipoq)

@ -184,3 +184,6 @@
#define G_770 7
#define G_2342 6
#define QAF_ALLEG_A 421
#define QA2F_ALLEG_A2 422

@ -1,6 +1,10 @@
#include "771200.h"
TOOLBAR "" 0 20 0 2
TOOLBAR "" 0 18 0 4
#include <toolbar.h>
BUTTON QAF_ALLEG_A 24 2
BEGIN
PROMPT -13 -3 "~Allegati 730/96"
END
ENDPAGE
#define G_DIPEND 1

@ -1,8 +1,13 @@
#include "771200.h"
TOOLBAR "" 0 20 0 2
TOOLBAR "" 0 18 0 4
#include <toolbar.h>
BUTTON QA2F_ALLEG_A2 24 2
BEGIN
PROMPT -13 -3 "~Allegati 730/95"
END
ENDPAGE
#define G_DIPEND 1
#define G_QUADROA 2

@ -3,7 +3,7 @@
#include <config.h>
#include <msksheet.h>
#include <sort.h>
#include <tabutil.h>
#include <tabutil.h>
#include <progind.h>
#include "caus77.h"
#include "77lib.h"

@ -140,7 +140,6 @@ END
NUMBER F_A0CTER 15
BEGIN
// PROMPT 1 9 "Compensi da terzi "
PROMPT 1 10 "Compensi da terzi "
FIELD LF_BASE->A0CTER
PICTURE "."
@ -149,7 +148,6 @@ END
NUMBER F_A0TIMP 15
BEGIN
// PROMPT 41 9 "Totale imponibile "
PROMPT 41 10 "Totale imponibile "
FIELD LF_BASE->A0TIMP
PICTURE "."
@ -158,7 +156,6 @@ END
NUMBER F_A0ILOR 15
BEGIN
// PROMPT 1 10 "Imposta lorda "
PROMPT 1 11 "Imposta lorda "
FIELD LF_BASE->A0ILOR
PICTURE "."
@ -167,7 +164,6 @@ END
NUMBER F_A0TDET 15
BEGIN
// PROMPT 41 10 "Totale detrazioni "
PROMPT 41 11 "Totale detrazioni "
FIELD LF_BASE->A0TDET
PICTURE "."

@ -165,19 +165,18 @@ const char* build_fill_string(TString& qcomp)
return __tmp;
}
void TRiporti::setta_flag_quadri_comp(const long codditta, const int quadro, const bool almeno_una_riga, const long dich)
void TRiporti::setta_flag_quadri_comp(const long codditta, const int quadro, const bool almeno_una_riga, TLocalisamfile& basebis, const long dich)
{
/*
TLocalisamfile basebis(LF_BASEBIS);
basebis.setkey(1);
basebis.zero();
basebis.put(BSE_CODDITTA, codditta);
if (basebis.read(_isequal, _lock) == NOERR)
{
{ */
TString qcomp(basebis.get(BSE_QCOMP));
TString dep(build_fill_string(qcomp));
qcomp << dep;
// TString qcomp (format("%25s", (const char*) app));
if (almeno_una_riga)
qcomp[(int)quadro] = 'X';
@ -186,11 +185,10 @@ void TRiporti::setta_flag_quadri_comp(const long codditta, const int quadro, con
basebis.put(BSE_QCOMP, qcomp);
basebis.rewrite();
// basebis.reread(_unlock);
}
/* }
else
warning_box("Dichiarazione non presente: impossibile registrare il campo Quadri compilati");
*/
//
// Setta flag quadri compilati del dichiarante; cio' va fatto in 3 casi:
//
@ -204,28 +202,28 @@ void TRiporti::setta_flag_quadri_comp(const long codditta, const int quadro, con
if (ha_dichiarante || sono_dichiarante)
{
basebis.setkey(1);
basebis.zero();
basebis.put("TIPOQUA", COD_QUA_I_DIC);
basebis.put(BSE_CODDITTA, sono_dichiarante ? codditta : ha_dichiarante);
if (basebis.read(_isequal, _lock) == NOERR)
{
TString qcomp(basebis.get(BSE_QCOMP));
TString dep(build_fill_string(qcomp));
qcomp << dep;
// TString qcomp (format("%25s", (const char*) app));
if (almeno_una_riga)
qcomp[(int)quadro] = 'X';
else
qcomp[(int)quadro] = ' ';
basebis.put(BSE_QCOMP, qcomp);
basebis.rewrite();
// basebis.reread(_unlock);
}
else
warning_box("Dichiarazione non presente: impossibile registrare il campo Quadri compilati");
const long lRecno=basebis.recno();
basebis.setkey(1);
basebis.zero();
basebis.put("TIPOQUA", COD_QUA_I_DIC);
basebis.put(BSE_CODDITTA, sono_dichiarante ? codditta : ha_dichiarante);
if (basebis.read(_isequal, _lock) == NOERR)
{
TString qcomp(basebis.get(BSE_QCOMP));
TString dep(build_fill_string(qcomp));
qcomp << dep;
if (almeno_una_riga)
qcomp[(int)quadro] = 'X';
else
qcomp[(int)quadro] = ' ';
basebis.put(BSE_QCOMP, qcomp);
basebis.rewrite();
basebis.readat(lRecno);
}
else
warning_box("Dichiarazione non presente: impossibile registrare il campo Quadri compilati");
}
}
@ -287,10 +285,8 @@ void TRiporti::setta_flag_quadro_I(const long codditta, const long dich)
HIDDEN bool filter_func (const TRelation * rel)
{
int anno,annod;
annod = this_riporti->_annodic;
anno = rel->lfile().get_int(QUH_H1ANNO);
return anno == annod;
}
@ -699,10 +695,7 @@ bool TRiporti::set(const TString& quadro, int anno, const long codditta, const l
calcola_riporti_G1 (cur, dichiarante);
delete cur; delete rel;
}
setta_flag_quadro_I(_codditta);
return TRUE;
}
@ -770,7 +763,6 @@ void TRiporti::calcola_riporti_A(TCursor* cur, const long dich)
TString codfis = cur->curr().get (QUA_CODFISDL);
char retcon = cur->curr().get_char(QUA_RETCON);
// if (causa == 0 && retcon != 'B' && codfis.empty())
if (retcon != 'B' && codfis.empty())
{
a0cobb += cur->curr().get_real(QUA_COBBDIP);
@ -789,9 +781,6 @@ void TRiporti::calcola_riporti_A(TCursor* cur, const long dich)
a0aarr += cur->curr().get_real(QUA_AMMIMP);
a0darr += cur->curr().get_real(QUA_DETIMPOS);
a0rarr += cur->curr().get_real(QUA_RITESEG);
// a0cinps += cur->curr().get_real(QUA_CFCONINPS);
// a0ciiaut += cur->curr().get_real(QUA_CIIAT);
// a0crimpras += cur->curr().get_real(QUA_CIPA);
}
}
@ -799,7 +788,6 @@ void TRiporti::calcola_riporti_A(TCursor* cur, const long dich)
if (num_rec % NUM_DIP_A)
fogli++;
// base.setkey(2);
base.zero();
if (dich)
{
@ -809,7 +797,7 @@ void TRiporti::calcola_riporti_A(TCursor* cur, const long dich)
else
base.put(BSE_CODDITTA, _codditta);
if (base.read(_isequal,_testandlock) == NOERR)
if (base.read(_isequal,_lock) == NOERR)
{
base.put(BSE_A0NFCOM, fogli);
base.put(BSE_A0NLDIP, (long)dipendenti);
@ -828,12 +816,15 @@ void TRiporti::calcola_riporti_A(TCursor* cur, const long dich)
base.put(BSE_A0AARR, a0aarr);
base.put(BSE_A0DARR, a0darr);
base.put(BSE_A0RARR, a0rarr);
// base.put(BSE_A0CINPS, a0cinps);
// base.put(BSE_A0CIIAUT, a0ciiaut);
// base.put(BSE_A0CRIMPRAS, a0crimpras);
base.rewrite();
base.reread(_unlock);
setta_flag_quadri_comp(_codditta, A, almeno_una_riga, dich);
base.rewrite();
TLocalisamfile basebis(LF_BASEBIS);
basebis.setkey(1);
basebis.zero();
basebis.put(BSE_CODDITTA, _codditta);
if (basebis.read(_isequal, _lock) == NOERR)
setta_flag_quadri_comp(_codditta, A, almeno_una_riga, basebis, dich);
else
warning_box("Lock fallito in calcola_riporti A");
}
else
warning_box("Dichiarazione non presente. Impossibile registrare i riporti");
@ -898,15 +889,21 @@ void TRiporti::calcola_riporti_A3(TCursor* cur, const long dich)
else
base.put(BSE_CODDITTA, _codditta);
if (base.read(_isequal,_testandlock) == NOERR)
if (base.read(_isequal,_lock) == NOERR)
{
base.put(BSE_A3NFCOM, fogli);
base.put(BSE_A3NUMPER, (long)dipendenti);
base.put(BSE_A3REPT10, a3rept10);
base.put(BSE_A3REPT12, a3rept12);
base.rewrite();
base.reread(_unlock);
setta_flag_quadri_comp(_codditta, A3, almeno_una_riga, dich);
TLocalisamfile basebis(LF_BASEBIS);
basebis.setkey(1);
basebis.zero();
basebis.put(BSE_CODDITTA, _codditta);
if (basebis.read(_isequal, _lock) == NOERR)
setta_flag_quadri_comp(_codditta, A3, almeno_una_riga, basebis, dich);
else
warning_box("Lock fallito in calcola_riporti A3");
}
else
warning_box("Dichiarazione non presente. Impossibile registrare i riporti");
@ -932,21 +929,23 @@ void TRiporti::calcola_riporti_A1(TCursor* cur, const long dich)
if (!almeno_una_riga)
almeno_una_riga = TRUE;
}
setta_flag_quadri_comp(_codditta, A1, almeno_una_riga, dich);
TLocalisamfile basebis(LF_BASEBIS);
basebis.setkey(1);
basebis.zero();
basebis.put(BSE_CODDITTA, _codditta);
if (basebis.read(_isequal, _lock) == NOERR)
setta_flag_quadri_comp(_codditta, A1, almeno_una_riga, basebis, dich);
else
warning_box("Lock fallito in calcola_riporti A1");
}
void TRiporti::calcola_riporti_A2(TCursor* cur, const long dich)
{
bool almeno_una_riga = FALSE;
(*cur) = 0L;
TRecnotype items = cur->items();
TString scritta(60);
scritta.format("Calcolo riporti del quadro A2 per la ditta %ld", _codditta);
TProgind progn(items, scritta, FALSE, TRUE);
for (int i = 0; i < items; i++, ++(*cur))
@ -956,8 +955,14 @@ void TRiporti::calcola_riporti_A2(TCursor* cur, const long dich)
if (!almeno_una_riga)
almeno_una_riga = TRUE;
}
setta_flag_quadri_comp(_codditta, A2, almeno_una_riga, dich);
TLocalisamfile basebis(LF_BASEBIS);
basebis.setkey(1);
basebis.zero();
basebis.put(BSE_CODDITTA, _codditta);
if (basebis.read(_isequal, _lock) == NOERR)
setta_flag_quadri_comp(_codditta, A2, almeno_una_riga, basebis, dich);
else
warning_box("Lock fallito in calcola_riporti A2");
}
void TRiporti::calcola_riporti_H(TCursor* cur, const long dich)
@ -999,13 +1004,12 @@ void TRiporti::calcola_riporti_H(TCursor* cur, const long dich)
else
basebis.put(BSB_CODDITTA, _codditta);
if (basebis.read(_isequal, _testandlock) == NOERR)
if (basebis.read(_isequal, _lock) == NOERR)
{
basebis.put(BSB_H0CODLAV, ritdat);
basebis.put(BSB_H0COLDIP, ritlav);
basebis.rewrite();
basebis.reread(_unlock);
setta_flag_quadri_comp(_codditta, H, almeno_una_riga, dich);
setta_flag_quadri_comp(_codditta, H, almeno_una_riga,basebis,dich);
}
else
warning_box("Dichiarazione non presente. Impossibile registrare i riporti");
@ -1063,7 +1067,6 @@ void TRiporti::calcola_riporti_C(TCursor* cur, const long dich)
if (percipienti % NUM_PERC_C)
fogli++;
// base.setkey(2);
base.zero();
if (dich)
{
@ -1073,7 +1076,7 @@ void TRiporti::calcola_riporti_C(TCursor* cur, const long dich)
else
base.put(BSE_CODDITTA, _codditta);
if (base.read(_isequal,_testandlock) == NOERR)
if (base.read(_isequal,_lock) == NOERR)
{
base.put(BSE_C0NFCOM, fogli);
base.put(BSE_C0NLASS, (long)percipienti);
@ -1082,8 +1085,14 @@ void TRiporti::calcola_riporti_C(TCursor* cur, const long dich)
base.put(BSE_C0ROPE, ritenute);
base.put(BSE_C0CONTSSN, rTotCSSN);
base.rewrite();
base.reread(_unlock);
setta_flag_quadri_comp(_codditta, C, almeno_una_riga, dich);
TLocalisamfile basebis(LF_BASEBIS);
basebis.setkey(1);
basebis.zero();
basebis.put(BSE_CODDITTA, _codditta);
if (basebis.read(_isequal, _lock) == NOERR)
setta_flag_quadri_comp(_codditta, C, almeno_una_riga, basebis, dich);
else
warning_box("Lock fallito in calcola_riporti C");
}
else
warning_box("Dichiarazione non presente. Impossibile registrare i riporti");
@ -1156,7 +1165,7 @@ void TRiporti::calcola_riporti_D(TCursor* cur, const long dich)
else
base.put(BSE_CODDITTA, _codditta);
if (base.read(_isequal,_testandlock) == NOERR)
if (base.read(_isequal,_lock) == NOERR)
{
base.put(BSE_D0NFCOM, fogli);
base.put(BSE_D0NLAUT, (long)percipienti);
@ -1164,8 +1173,14 @@ void TRiporti::calcola_riporti_D(TCursor* cur, const long dich)
base.put(BSE_D0SNSRIT, somme);
base.put(BSE_D0ROPE, ritenute);
base.rewrite();
base.reread(_unlock);
setta_flag_quadri_comp(_codditta, D, almeno_una_riga, dich);
TLocalisamfile basebis(LF_BASEBIS);
basebis.setkey(1);
basebis.zero();
basebis.put(BSE_CODDITTA, _codditta);
if (basebis.read(_isequal, _lock) == NOERR)
setta_flag_quadri_comp(_codditta, D, almeno_una_riga, basebis, dich);
else
warning_box("Lock fallito in calcola_riporti D");
}
else
warning_box("Dichiarazione non presente. Impossibile registrare i riporti");
@ -1189,7 +1204,6 @@ void TRiporti::calcola_riporti_D1(TCursor* cur, const long dich)
(*cur) = 0L;
TRecnotype items = cur->items();
// if (items == 0L) return;
TString scritta(60);
scritta.format("Calcolo riporti del quadro D1 per la ditta %ld", _codditta);
@ -1237,7 +1251,7 @@ void TRiporti::calcola_riporti_D1(TCursor* cur, const long dich)
else
base.put(BSE_CODDITTA, _codditta);
if (base.read(_isequal,_testandlock) == NOERR)
if (base.read(_isequal,_lock) == NOERR)
{
base.put(BSE_D1NFCOM, fogli);
base.put(BSE_D1NPER, (long)percipienti);
@ -1245,8 +1259,14 @@ void TRiporti::calcola_riporti_D1(TCursor* cur, const long dich)
base.put(BSE_D1SNSRIT, somme);
base.put(BSE_D1ROPE, importo);
base.rewrite();
base.reread(_unlock);
setta_flag_quadri_comp(_codditta, D1, almeno_una_riga, dich);
TLocalisamfile basebis(LF_BASEBIS);
basebis.setkey(1);
basebis.zero();
basebis.put(BSE_CODDITTA, _codditta);
if (basebis.read(_isequal, _lock) == NOERR)
setta_flag_quadri_comp(_codditta, D1, almeno_una_riga,basebis,dich);
else
warning_box("Lock fallito in calcola_riporti D1");
}
else
warning_box("Dichiarazione non presente. Impossibile registrare i riporti");
@ -1318,7 +1338,7 @@ void TRiporti::calcola_riporti_E(TCursor* cur, const long dich)
else
basebis.put(BSB_CODDITTA, _codditta);
if (basebis.read(_isequal,_testandlock) == NOERR)
if (basebis.read(_isequal,_lock) == NOERR)
{
basebis.put(BSB_E0NFCOM, fogli);
basebis.put(BSB_E0NPER, (long)percipienti);
@ -1326,8 +1346,7 @@ void TRiporti::calcola_riporti_E(TCursor* cur, const long dich)
basebis.put(BSB_E0SNSRIT, somme);
basebis.put(BSB_E0ROPE, ritenute);
basebis.rewrite();
basebis.reread(_unlock);
setta_flag_quadri_comp(_codditta, E, almeno_una_riga, dich);
setta_flag_quadri_comp(_codditta, E, almeno_una_riga,basebis,dich);
}
else
warning_box("Dichiarazione non presente. Impossibile registrare i riporti");
@ -1425,7 +1444,7 @@ void TRiporti::calcola_riporti_E1(TCursor* cur, const long dich)
else
basebis.put(BSB_CODDITTA, _codditta);
if (basebis.read(_isequal, _testandlock) == NOERR)
if (basebis.read(_isequal, _lock) == NOERR)
{
basebis.put(BSB_E1NFCOM, fogli);
basebis.put(BSB_E1NPER, (long)percipienti);
@ -1436,8 +1455,7 @@ void TRiporti::calcola_riporti_E1(TCursor* cur, const long dich)
basebis.put(BSB_E1BCOM2, impo);
basebis.put(BSB_E1ROPE2, rite);
basebis.rewrite();
basebis.reread(_unlock);
setta_flag_quadri_comp(_codditta, E1, almeno_una_riga, dich);
setta_flag_quadri_comp(_codditta, E1, almeno_una_riga,basebis,dich);
}
else
warning_box("Dichiarazione non presente. Impossibile registrare i riporti");
@ -1511,15 +1529,14 @@ void TRiporti::calcola_riporti_E2(TCursor* cur, const long dich)
else
basebis.put(BSB_CODDITTA, _codditta);
if (basebis.read(_isequal, _testandlock) == NOERR)
if (basebis.read(_isequal, _lock) == NOERR)
{
basebis.put(BSB_E2NFCOM, fogli_comp);
basebis.put(BSB_E2NPER, (long)percipienti);
basebis.put(BSB_E2SSRIT, soggrit);
basebis.put(BSB_E2ROPE, rope );
basebis.rewrite();
basebis.reread(_unlock);
setta_flag_quadri_comp(_codditta, E2, almeno_una_riga, dich);
setta_flag_quadri_comp(_codditta, E2, almeno_una_riga,basebis,dich);
}
else
warning_box("Dichiarazione non presente. Impossibile registrare i riporti");
@ -1635,7 +1652,7 @@ void TRiporti::calcola_riporti_F(TCursor* cur, const long dich)
else
basebis.put(BSB_CODDITTA, _codditta);
if (basebis.read(_isequal, _testandlock) == NOERR)
if (basebis.read(_isequal, _lock) == NOERR)
{
basebis.put(BSB_F0SRITA, i20_1);
basebis.put(BSB_F0ROPEA, i20_2);
@ -1647,8 +1664,7 @@ void TRiporti::calcola_riporti_F(TCursor* cur, const long dich)
basebis.put(BSB_F0SSRITBF, i21_2);
basebis.put(BSB_F0ROPEBF, i21_3);
basebis.rewrite();
basebis.reread(_unlock);
setta_flag_quadri_comp(_codditta, F, almeno_una_riga, dich);
setta_flag_quadri_comp(_codditta, F, almeno_una_riga,basebis,dich);
}
else
warning_box("Dichiarazione non presente. Impossibile registrare i riporti");
@ -1718,13 +1734,12 @@ void TRiporti::calcola_riporti_F1(TCursor* cur, const long dich)
else
basebis.put(BSB_CODDITTA, _codditta);
if (basebis.read(_isequal, _testandlock) == NOERR)
if (basebis.read(_isequal, _lock) == NOERR)
{
basebis.put(BSB_F1SSRIT, i22_1);
basebis.put(BSB_F1ROPE, i22_2);
basebis.rewrite();
basebis.reread(_unlock);
setta_flag_quadri_comp(_codditta, F1, almeno_una_riga, dich);
setta_flag_quadri_comp(_codditta, F1, almeno_una_riga,basebis,dich);
}
else
warning_box("Dichiarazione non presente. Impossibile registrare i riporti");
@ -1782,13 +1797,12 @@ void TRiporti::calcola_riporti_F2(TCursor* cur, const long dich)
else
basebis.put(BSB_CODDITTA, _codditta);
if (basebis.read(_isequal, _testandlock) == NOERR)
if (basebis.read(_isequal, _lock) == NOERR)
{
basebis.put(BSB_F2SSRIT, i23_1);
basebis.put(BSB_F2ROPE, i23_2);
basebis.rewrite();
basebis.reread(_unlock);
setta_flag_quadri_comp(_codditta, F2, almeno_una_riga, dich);
setta_flag_quadri_comp(_codditta, F2, almeno_una_riga,basebis,dich);
}
else
warning_box("Dichiarazione non presente. Impossibile registrare i riporti");
@ -1819,9 +1833,7 @@ long fogli_compilati(const long fisiche, const long no_fisiche, const int fisich
if (no_fisiche % nofisiche_x_foglio)
fogli_nofisiche += 1;
}
fogli_compilati = fogli_fisiche > fogli_nofisiche ? fogli_fisiche : fogli_nofisiche;
return fogli_compilati;
}
@ -1906,8 +1918,8 @@ void TRiporti::calcola_riporti_G(TCursor* cur, const long dich)
almeno_una_riga = almeno_una_riga_prospetti || almeno_una_riga_distinta;
fogli_comp = fogli_compilati(fisiche,no_fisiche,QGD_FISICHE_PER_FOGLIO,QGD_NOFISICHE_PER_FOGLIO);
// Considera un foglio in piu' per la parte del G (prospetti 1-2-3-4)
if (almeno_una_riga_prospetti)
// Considera anche la parte del G (prospetti 1-2-3-4)
if (almeno_una_riga_prospetti && fogli_comp==0)
fogli_comp++;
basebis.setkey(1);
@ -1920,7 +1932,7 @@ void TRiporti::calcola_riporti_G(TCursor* cur, const long dich)
else
basebis.put(BSB_CODDITTA, _codditta);
if (basebis.read(_isequal, _testandlock) == NOERR)
if (basebis.read(_isequal, _lock) == NOERR)
{
basebis.put(BSB_G0NFCOM, (long)fogli_comp);
basebis.put(BSB_G0NPER, (long)percipienti);
@ -1937,8 +1949,7 @@ void TRiporti::calcola_riporti_G(TCursor* cur, const long dich)
basebis.put(BSB_G0UNSRIT3, i24_9);
basebis.put(BSB_G0RITSPET, i25_4);
basebis.rewrite();
basebis.reread(_unlock);
setta_flag_quadri_comp(_codditta, G, almeno_una_riga, dich);
setta_flag_quadri_comp(_codditta, G, almeno_una_riga,basebis,dich);
}
else
warning_box("Dichiarazione non presente. Impossibile registrare i riporti");
@ -1977,7 +1988,7 @@ void TRiporti::calcola_riporti_G1 (TCursor* cur, const long dich)
else
basebis.put(BSB_CODDITTA, _codditta);
if (basebis.read(_isequal, _testandlock) == NOERR)
if (basebis.read(_isequal, _lock) == NOERR)
{
basebis.put(BSB_G1UCOR, i27_1);
basebis.put(BSB_G1USRIT, i27_2);
@ -1985,8 +1996,7 @@ void TRiporti::calcola_riporti_G1 (TCursor* cur, const long dich)
basebis.put(BSB_G1RIMP, i27_4);
basebis.put(BSB_G1UNSRIT, i27_5);
basebis.rewrite();
basebis.reread(_unlock);
setta_flag_quadri_comp(_codditta, G1, almeno_una_riga, dich);
setta_flag_quadri_comp(_codditta, G1, almeno_una_riga,basebis,dich);
}
else
warning_box("Dichiarazione non presente. Impossibile registrare i riporti");
@ -2069,7 +2079,7 @@ void TRiporti::calcola_riporti_B (TCursor* cur, const long dich)
else
base.put(BSE_CODDITTA, _codditta);
if (base.read(_isequal, _testandlock) == NOERR)
if (base.read(_isequal, _lock) == NOERR)
{
base.put(I8_1,c1);
base.put(I8_2,(long)c2);
@ -2081,9 +2091,15 @@ void TRiporti::calcola_riporti_B (TCursor* cur, const long dich)
base.put(I9_8,tc8);
base.put(I9_9,tc9);
base.put(I9_10,tc10);
base.rewrite();
base.reread(_unlock);
setta_flag_quadri_comp(_codditta, B, almeno_una_riga, dich);
base.rewrite();
TLocalisamfile basebis(LF_BASEBIS);
basebis.setkey(1);
basebis.zero();
basebis.put(BSE_CODDITTA, _codditta);
if (basebis.read(_isequal, _lock) == NOERR)
setta_flag_quadri_comp(_codditta, B, almeno_una_riga,basebis,dich);
else
warning_box("Lock fallito in calcola_riporti B");
}
else
warning_box("Dichiarazione non presente. Impossibile registrare i riporti");
@ -2146,16 +2162,22 @@ void TRiporti::calcola_riporti_B1(TCursor* cur, const long dich)
else
base.put(BSE_CODDITTA, _codditta);
if (base.read(_isequal, _testandlock) == NOERR)
if (base.read(_isequal, _lock) == NOERR)
{
base.put(I11_1,c1);
base.put(I11_2,(long)items);
base.put(I11_3,tc3);
base.put(I11_4,tc4);
base.put(I11_5,tc5);
base.rewrite();
base.reread(_unlock);
setta_flag_quadri_comp(_codditta, B1, almeno_una_riga, dich);
base.put(I11_5,tc5);
base.rewrite();
TLocalisamfile basebis(LF_BASEBIS);
basebis.setkey(1);
basebis.zero();
basebis.put(BSE_CODDITTA, _codditta);
if (basebis.read(_isequal, _lock) == NOERR)
setta_flag_quadri_comp(_codditta, B1, almeno_una_riga,basebis,dich);
else
warning_box("Lock fallito in calcola_riporti B1");
}
else
warning_box("Dichiarazione non presente. Impossibile registrare i riporti");
@ -2163,3 +2185,16 @@ void TRiporti::calcola_riporti_B1(TCursor* cur, const long dich)
progn.addstatus(1);
}
void TRiporti::set_compilato(const long codditta, const int posquadro, const bool compilato)
{
TLocalisamfile basebis(LF_BASEBIS);
basebis.setkey(1);
basebis.zero();
basebis.put(BSE_CODDITTA, codditta);
if (basebis.read(_isequal, _lock) == NOERR)
setta_flag_quadri_comp(codditta,posquadro,compilato,basebis);
else
warning_box("Lock fallito in set_compilato");
}

@ -64,7 +64,7 @@ class TRiporti
int _annodic;
TString16 _quadro;
void setta_flag_quadri_comp (const long codditta, const int posquadro, const bool aur, const long dich=0L);
void setta_flag_quadri_comp (const long codditta, const int posquadro, const bool aur, TLocalisamfile& basebis, const long dich=0L);
// Setta flag di compilato guardando se esistono i riporti sul quadro I
void setta_flag_quadro_I (const long codditta, const long dich=0L);
@ -90,8 +90,7 @@ public:
bool riporta_I_globale(const long dich);
bool riporti_dich(const long dich, const int anno);
bool set(const TString& quadro, int anno=0, const long codditta=0L, const long dichiarante=0L);
void set_compilato(const long codditta, const int posquadro, const bool compilato)
{ setta_flag_quadri_comp(codditta,posquadro,compilato); }
void set_compilato(const long codditta, const int posquadro, const bool compilato);
TRiporti() {}
virtual ~TRiporti() {}

@ -94,7 +94,6 @@ bool TManutenzione_quadri::filtra_ditte(const TRelation * r)
tipoq = base.get("TIPOQUA");
ok = tipoq != "D" ? coddic == codditta : FALSE;
}
return ok;
}
@ -136,7 +135,6 @@ bool TManutenzione_quadri::codditta_handler(TMask_field& f, KEY k)
if (codditta != "0")
{
f.set(codditta);
// f.set_dirty();
f.check();
}
}
@ -426,12 +424,15 @@ void TManutenzione_quadri::init_menu(TMask& m)
m.set(F_CODDITTA, _codditta);
m.set(F_RAGDITTA, ragsoc);
// Se persona giuridica c'e' la voce "Amministratori"
// Se persona giuridica c'e' la voce "Amministratori"
_soci = tipo_persona(_codditta) == 'G';
m.enable(DLG_NULL_SOCI, _soci);
m.enable(DLG_MANUTENZ_SOCI, _soci);
m.set_handler(DLG_MANUTENZ_SOCI, exec_soci);
// Se non e' giuridica non si puo' usare il quadro G
m.enable(DLG_STOPREC_G, _soci);
// Fa uscire/entrare il menu' dati anagrafici
m.set_handler(DLG_MANUTENZ, menu_anagrafici);
m.set_handler(DLG_CANCEL_MENU, cancel_menu_anagrafici);

@ -324,14 +324,12 @@ BEGIN
PROMPT 20 14 ""
PICTURE 123
MESSAGE RUN,771MOD,-5,3|K_TAB,RILEGGI_QUADRI
// FLAGS "D" versione test
GROUP 1
END
TEXT DLG_NULL_F
BEGIN
PROMPT 24 15 "Quadro F"
// FLAGS "D"
GROUP 1
END
@ -340,14 +338,12 @@ BEGIN
PROMPT 20 15 ""
PICTURE 123
MESSAGE RUN,771MOD,-6,0|K_TAB,RILEGGI_QUADRI
// FLAGS "D"
GROUP 1
END
TEXT DLG_NULL_F1
BEGIN
PROMPT 24 16 "Quadro F-1"
// FLAGS "D"
GROUP 1
END
@ -356,7 +352,6 @@ BEGIN
PROMPT 20 16 ""
PICTURE 123
MESSAGE RUN,771MOD,-6,1|K_TAB,RILEGGI_QUADRI
// FLAGS "D"
GROUP 1
END
// Fine seconda colonna
@ -366,7 +361,6 @@ END
TEXT DLG_NULL_F2
BEGIN
PROMPT 43 10 "Quadro F-2"
// FLAGS "D"
GROUP 1
END
@ -375,7 +369,6 @@ BEGIN
PROMPT 39 10 ""
PICTURE 123
MESSAGE RUN,771MOD,-6,2|K_TAB,RILEGGI_QUADRI
// FLAGS "D"
GROUP 1
END

@ -2,12 +2,18 @@ USE 36
JOIN 37 TO 36 INTO TIPOQUA=TIPOQUA CODDITTA=CODDITTA
JOIN 9 TO 36 INTO CODDITTA=CODDITTA
JOIN 6 TO 9 ALIAS 116 INTO TIPOA=TIPOA CODANAGR=CODANAGR
JOIN 7 TO 9 INTO CODANAGR=CODANAGR
JOIN 8 TO 6 ALIAS 118 INTO CODANAGR=CODANAGR
JOIN 13 TO 8 ALIAS 113 INTO COM=COMNASC
JOIN 13 TO 6 ALIAS 213 INTO COM=COMRF(COMRES)
JOIN 6 TO 36 ALIAS 216 INTO CODANAGR=RAPPR
JOIN 13 TO 216@ ALIAS 313 INTO COM=COMNASC
JOIN 6 TO 36 ALIAS 216 INTO CODANAGR=RAPPR
JOIN 8 TO 6 ALIAS 218 INTO CODANAGR=CODANAGR
JOIN 13 TO 218@ ALIAS 313 INTO COM=COMNASC
JOIN 13 TO 216@ ALIAS 413 INTO COM=COMRF(COMRES)
JOIN 10 TO 9 INTO CODDITTA=CODDITTA CODATT=CODATTPREV
JOIN 6 TO 10 ALIAS 316 INTO TIPOA=TIPOADS CODANAGR=CODANGRDS
JOIN 13 TO 10 ALIAS 513 INTO COM==COMCS
END
DESCRIPTION
@ -17,6 +23,7 @@ BEGIN
9->* "Ditte"
6->* "LF_ANAG Anagrafica persone fisiche e giuridiche"
8->* "Anagrafica persone fisiche"
10->* "ATTIV"
116@->* "Comuni"
118@->* "Comuni"
END
@ -31,7 +38,7 @@ BEGIN
FI 131
END
SECTION BODY FIRST 73
SECTION BODY FIRST 67
LISTA 1
BEGIN
@ -45,7 +52,7 @@ END
STRINGA 2
BEGIN
KEY "GRUPPO 1 - PERSONE FISICHE - CODICE FISCALE"
PROMPT 22 13 ""
PROMPT 25 1 ""
FIELD 116@->COFI
GROUP 1
END
@ -53,7 +60,8 @@ END
LISTA 3
BEGIN
KEY "REG.A.STATUTO.SPECIALE VA - SA -SI"
PROMPT 90 13 ""
PROMPT 94 1 ""
ITEM "|"
ITEM "1|X"
ITEM "2|"
ITEM "3|"
@ -64,7 +72,8 @@ END
LISTA 4
BEGIN
KEY "REG.A.STATUTO.SPECIALE VA - SA -SI"
PROMPT 98 13 ""
PROMPT 102 1 ""
ITEM "|"
ITEM "1|"
ITEM "2|X"
ITEM "3|"
@ -75,7 +84,8 @@ END
LISTA 5
BEGIN
KEY "REG.A.STATUTO.SPECIALE VA - SA -SI"
PROMPT 107 13 ""
PROMPT 111 1 ""
ITEM "|"
ITEM "1|"
ITEM "2|"
ITEM "3|X"
@ -86,7 +96,7 @@ END
STRINGA 6
BEGIN
KEY "CODICE ATTIVITA"
PROMPT 119 13 ""
PROMPT 122 1 ""
FIELD 9->CODATTPREV
GROUP 1
END
@ -94,7 +104,7 @@ END
STRINGA 7
BEGIN
KEY "COGNOME"
PROMPT 22 15 ""
PROMPT 25 3 ""
FIELD 116@->RAGSOC[1,30]
GROUP 1
END
@ -102,7 +112,7 @@ END
STRINGA 8
BEGIN
KEY "NOME"
PROMPT 80 15 ""
PROMPT 82 3 ""
FIELD 116@->RAGSOC[31,50]
GROUP 1
END
@ -110,7 +120,7 @@ END
LISTA 9
BEGIN
KEY "SESSO M"
PROMPT 119 15 ""
PROMPT 122 3 ""
ITEM "M|X"
ITEM "F|"
FIELD 118@->SESSO
@ -120,7 +130,7 @@ END
LISTA 10
BEGIN
KEY "SESSO F"
PROMPT 127 15 ""
PROMPT 130 3 ""
ITEM "M|"
ITEM "F|X"
FIELD 118@->SESSO
@ -130,17 +140,16 @@ END
STRINGA 11
BEGIN
KEY "DATA DI NASCITA"
PROMPT 22 17 ""
PROMPT 25 5 ""
FIELD 118@->DATANASC
FORMAT "1444-"
PICTURE "## ^ ##^^^^^"
PICTURE "## ^ ## ^^###"
GROUP 1
END
STRINGA 12
BEGIN
KEY "COMUNE DI NASCITA"
PROMPT 44 17 ""
PROMPT 47 5 ""
FIELD 113@->DENCOM
GROUP 1
END
@ -148,7 +157,7 @@ END
STRINGA 13
BEGIN
KEY "PROV. DI NASCITA"
PROMPT 100 17 ""
PROMPT 103 5 ""
FIELD 113@->PROVCOM
GROUP 1
END
@ -156,7 +165,7 @@ END
STRINGA 14
BEGIN
KEY "EVENTI ECCEZIONALI"
PROMPT 127 17 ""
PROMPT 130 5 ""
FIELD 116@->EVECC
GROUP 1
END
@ -164,7 +173,7 @@ END
STRINGA 15
BEGIN
KEY "COMUNE DI RES.FISCALE"
PROMPT 41 19 ""
PROMPT 44 7 ""
FIELD 213@->DENCOM
GROUP 1
END
@ -172,7 +181,7 @@ END
STRINGA 16
BEGIN
KEY "PROV DI RES.FISCALE"
PROMPT 100 19 ""
PROMPT 102 7 ""
FIELD 213@->PROVCOM
GROUP 1
END
@ -180,7 +189,7 @@ END
STRINGA 17
BEGIN
KEY "CAP"
PROMPT 119 19 ""
PROMPT 122 7 ""
FIELD 116@->CAPRF
FIELD 116@->CAPRES
GROUP 1
@ -189,7 +198,7 @@ END
STRINGA 18
BEGIN
KEY "VIA di RES."
PROMPT 41 21 ""
PROMPT 44 9 ""
FIELD 116@->INDRF
FIELD 116@->INDRES
GROUP 1
@ -198,31 +207,29 @@ END
STRINGA 19
BEGIN
KEY "NUM. CIVICO di RES."
PROMPT 102 13 ""
PROMPT 82 9 ""
FIELD 116@->CIVRF
FIELD 116@->CIVRES
FLAGS "H"
GROUP 1
END
STRINGA 20
BEGIN
KEY "TELEFONO - PREFISSO"
PROMPT 100 21 ""
PROMPT 100 9 ""
FIELD 116@->PTELRF
END
STRINGA 21
BEGIN
KEY "TELEFONO - NUMERO"
PROMPT 112 21 ""
PROMPT 112 9 ""
FIELD 116@->TELRF
END
STRINGA 22
BEGIN
KEY "GRUPPO 2 - ALTRI SOGGETTI - CODICE FISCALE"
PROMPT 22 23 ""
PROMPT 25 11 ""
FIELD 116@->COFI
GROUP 2
END
@ -230,7 +237,8 @@ END
LISTA 23
BEGIN
KEY "REG.A.STATUTO.SPECIALE VA - SA -SI"
PROMPT 90 23 ""
PROMPT 95 11 ""
ITEM "|"
ITEM "1|X"
ITEM "2|"
ITEM "3|"
@ -241,7 +249,8 @@ END
LISTA 24
BEGIN
KEY "REG.A.STATUTO.SPECIALE VA - SA -SI"
PROMPT 98 23 ""
PROMPT 103 11 ""
ITEM "|"
ITEM "1|"
ITEM "2|X"
ITEM "3|"
@ -252,7 +261,8 @@ END
LISTA 25
BEGIN
KEY "REG.A.STATUTO.SPECIALE VA - SA -SI"
PROMPT 107 23 ""
PROMPT 112 11 ""
ITEM "|"
ITEM "1|"
ITEM "2|"
ITEM "3|X"
@ -263,7 +273,7 @@ END
STRINGA 26
BEGIN
KEY "CODICE ATTIVITA"
PROMPT 119 23 ""
PROMPT 121 11 ""
FIELD 9->CODATTPREV
GROUP 2
END
@ -271,7 +281,7 @@ END
STRINGA 27
BEGIN
KEY "RAGIONE SOCIALE"
PROMPT 22 25 ""
PROMPT 25 13 ""
FIELD 116@->RAGSOC
GROUP 2
END
@ -279,7 +289,7 @@ END
STRINGA 28
BEGIN
KEY "EVENTI ECCEZIONALI"
PROMPT 127 25 ""
PROMPT 128 13 ""
FIELD 116@->EVECC
GROUP 2
END
@ -293,7 +303,7 @@ END
STRING 30
BEGIN
KEY "COMUNE SEDE LEGALE "
PROMPT 39 27 ""
PROMPT 39 15 ""
FIELD 413@->DENCOM
GROUP 2
END
@ -301,7 +311,7 @@ END
STRING 31
BEGIN
KEY "PROV. SEDE LEGALE"
PROMPT 119 27 ""
PROMPT 119 15 ""
FIELD 413@->PROVCOM
GROUP 2
END
@ -309,10 +319,9 @@ END
STRING 32
BEGIN
KEY "VIA SEDE LEGALE"
PROMPT 39 27 ""
PROMPT 39 17 ""
FIELD 216@->INDRES[1,18]
FLAGS "H"
MESSAGE COPY,12|COPY,107
END
STRING 33
@ -321,20 +330,20 @@ BEGIN
PROMPT 93 4 ""
FLAGS "H"
FIELD 216@->CIVRES
MESSAGE APPEND,12|APPEND,107
MESSAGE APPEND,12
END
STRING 34
BEGIN
KEY "VIA SEDE LEGALE"
PROMPT 39 27 ""
PROMPT 39 17 ""
GROUP 2
END
STRINGA 35
BEGIN
KEY "CAP"
PROMPT 119 27 ""
PROMPT 119 17 ""
FIELD 116@->CAPRF
FIELD 116@->CAPRES
GROUP 2
@ -343,7 +352,7 @@ END
STRING 36
BEGIN
KEY "COMUNE DI RESIDENZA FISCALE"
PROMPT 39 29 ""
PROMPT 39 19 ""
FIELD 413@->DENCOM
GROUP 2
END
@ -351,7 +360,7 @@ END
STRING 37
BEGIN
KEY "PROV. RESIDENZA FISCALE"
PROMPT 119 29 ""
PROMPT 119 19 ""
FIELD 413@->PROVCOM
GROUP 2
END
@ -359,10 +368,10 @@ END
STRING 38
BEGIN
KEY "VIA RESIDENZA FISCALE"
PROMPT 39 29 ""
PROMPT 39 21 ""
FIELD 216@->INDRES[1,18]
FLAGS "H"
MESSAGE COPY,12|COPY,107
MESSAGE COPY,12
END
STRING 39
@ -371,20 +380,20 @@ BEGIN
PROMPT 93 4 ""
FLAGS "H"
FIELD 216@->CIVRES
MESSAGE APPEND,12|APPEND,107
MESSAGE APPEND,12
END
STRING 40
BEGIN
KEY "VIA RES FISCALE"
PROMPT 39 29 ""
PROMPT 39 21 ""
GROUP 2
END
STRINGA 41
BEGIN
KEY "CAP"
PROMPT 119 29 ""
PROMPT 119 21 ""
FIELD 116@->CAPRF
GROUP 2
END
@ -392,76 +401,75 @@ END
STRINGA 42
BEGIN
KEY "DATA APP.BILANCIO gg-mm-aaa"
PROMPT 29 31 ""
FORMAT "1444-"
PICTURE "## ^ ##^^^^^"
PROMPT 29 23 ""
PICTURE "## ^ ##^^###"
GROUP 2
END
STRINGA 43
BEGIN
KEY "Termine per APP.BILANCIO gg-mm-aaa"
PROMPT 88 31 ""
FORMAT "1444-"
PICTURE "## ^ ##^^^^^"
PROMPT 88 23 ""
PICTURE "## ^ ##^^###"
GROUP 2
END
STRINGA 48
BEGIN
KEY "STATO"
PROMPT 29 33 ""
FIELD 118@->STATOSOC
PROMPT 29 25 ""
FIELD 7->STATOSOC
GROUP 2
END
STRINGA 49
BEGIN
KEY "NAT.GIURIDICA"
PROMPT 49 33 ""
FIELD 118@->NATGIU
PROMPT 49 25 ""
FIELD 7->NATGIU
GROUP 2
END
STRINGA 50
BEGIN
KEY "SITUAZIONE"
PROMPT 73 33 ""
FIELD 118@->SITSOC
PROMPT 73 25 ""
FIELD 7->SITSOC
GROUP 2
END
STRINGA 51
BEGIN
KEY "TELEFONO - PREF"
PROMPT 99 33 ""
PROMPT 99 25 ""
GROUP 2
END
STRINGA 52
BEGIN
KEY "TELEFONO - NUMERO"
PROMPT 110 33 ""
PROMPT 110 25 ""
GROUP 2
END
NUMBER 53
BEGIN
KEY "NUMERO ESTINTI"
PROMPT 66 35 ""
PROMPT 66 27 ""
END
STRINGA 54
BEGIN
KEY "Dati RAPP. - COFI"
PROMPT 22 37 ""
PROMPT 25 29 ""
FIELD 216@->COFI
END
LISTA 55
BEGIN
KEY "CODICE CARICA 1"
PROMPT 85 37 ""
PROMPT 85 29 ""
ITEM " | "
ITEM "1|X"
ITEM "2|"
ITEM "3|"
@ -473,7 +481,8 @@ END
LISTA 56
BEGIN
KEY "CODICE CARICA 2"
PROMPT 94 37 ""
PROMPT 94 29 ""
ITEM " | "
ITEM "1|"
ITEM "2|X"
ITEM "3|"
@ -485,7 +494,8 @@ END
LISTA 57
BEGIN
KEY "CODICE CARICA 3"
PROMPT 102 37 ""
PROMPT 102 29 ""
ITEM " |"
ITEM "1|"
ITEM "2|"
ITEM "3|X"
@ -497,7 +507,8 @@ END
LISTA 58
BEGIN
KEY "CODICE CARICA 4"
PROMPT 110 37 ""
PROMPT 110 29 ""
ITEM " |"
ITEM "1|"
ITEM "2|"
ITEM "3|"
@ -509,7 +520,8 @@ END
LISTA 59
BEGIN
KEY "CODICE CARICA 5"
PROMPT 119 37 ""
PROMPT 119 29 ""
ITEM " |"
ITEM "1|"
ITEM "2|"
ITEM "3|"
@ -521,7 +533,8 @@ END
LISTA 60
BEGIN
KEY "CODICE CARICA 6"
PROMPT 127 37 ""
PROMPT 127 29 ""
ITEM " |"
ITEM "1|"
ITEM "2|"
ITEM "3|"
@ -534,103 +547,192 @@ END
STRINGA 61
BEGIN
KEY "RAPP.COGNOME"
PROMPT 22 39 ""
PROMPT 25 31 ""
FIELD 216@->RAGSOC[1,30]
END
STRINGA 62
BEGIN
KEY "RAPP.NOME"
PROMPT 80 39 ""
PROMPT 82 31 ""
FIELD 216@->RAGSOC[31,50]
END
LISTA 63
BEGIN
KEY "RAPP.SESSO"
PROMPT 119 39 ""
PROMPT 121 31 ""
ITEM " |"
ITEM "M|X"
ITEM "F|"
ITEM "|"
FIELD 216@->SESSO
FIELD 218@->SESSO
END
LISTA 64
BEGIN
KEY "RAPP.SESSO"
PROMPT 127 39 ""
PROMPT 129 31 ""
ITEM " |"
ITEM "M|"
ITEM "F|X"
ITEM "|"
FIELD 216@->SESSO
FIELD 218@->SESSO
END
STRINGA 65
BEGIN
KEY "RAPP.DATANAGG"
PROMPT 22 41 ""
FORMAT "1444-"
PICTURE "## ^ ##^^^^^"
FIELD 216@->DATANASC
KEY "RAPP.DATANASC"
PROMPT 25 33 ""
PICTURE "## ^ ## ^^###"
FIELD 218@->DATANASC
END
STRINGA 68
BEGIN
KEY "COMUNE NA"
PROMPT 46 41 ""
PROMPT 46 33 ""
FIELD 313@->DENCOM
END
STRINGA 69
BEGIN
KEY "PROV NA"
PROMPT 119 41 ""
PROMPT 121 33 ""
FIELD 313@->PROVCOM
END
STRINGA 70
BEGIN
KEY "COMUNE RES"
PROMPT 41 43 ""
PROMPT 42 35 ""
FIELD 413@->DENCOM
END
STRINGA 71
BEGIN
KEY "PROV RES"
PROMPT 99 43 ""
PROMPT 101 35 ""
FIELD 413@->PROVCOM
END
STRINGA 72
BEGIN
KEY "CAP RES"
PROMPT 119 43 ""
FIELD 413@->CAPRF
FIELD 413@->CAPRES
PROMPT 121 35 ""
FIELD 216@->CAPRF
FIELD 216@->CAPRES
END
STRINGA 73
BEGIN
KEY "IND RES"
PROMPT 41 45 ""
FIELD 413@->INDRF
FIELD 413@->INDRES
PROMPT 42 37 ""
FIELD 216@->INDRF
FIELD 216@->INDRES
END
STRINGA 74
BEGIN
KEY "TELEFONO PREFISSO"
PROMPT 99 45 ""
PROMPT 99 37 ""
FIELD 216@->PTELRF
END
STRINGA 75
BEGIN
KEY "TELEFONO NUMERO"
PROMPT 111 45 ""
PROMPT 111 37 ""
FIELD 216@->TELRF
END
STRINGA 76
BEGIN
KEY "LUOGO CONSERVAZIONE S.C. - NOME"
PROMPT 25 38 ""
FIELD 316@->RAGSOC
END
STRINGA 77
BEGIN
KEY "LUOGO CONSERVAZIONE S.C. - COM"
PROMPT 25 39 ""
FIELD 513@->DENCOM
END
STRINGA 78
BEGIN
KEY "LUOGO CONSERVAZIONE S.C. - PROV"
PROMPT 92 39 ""
FIELD 513@->PROVCOM
END
STRINGA 79
BEGIN
KEY "LUOGO CONSERVAZIONE S.C. - VIA"
PROMPT 25 40 ""
FIELD 10->INDCS
END
STRINGA 80
BEGIN
KEY "LUOGO CONSERVAZIONE S.C. - CIV"
PROMPT 82 40 ""
FIELD 10->CIVCS
END
STRINGA 81
BEGIN
KEY "LUOGO CONSERVAZIONE S.C. - CAP"
PROMPT 112 40 ""
FIELD 10->CAPCS
END
END
SECTION FOOTER FIRST 4
STRINGA 82
BEGIN
KEY "AMMIN. 1 NOME"
PROMPT 25 54 ""
END
STRINGA 83
BEGIN
KEY "AMMIN. 1 SESSO"
PROMPT 52 54 ""
END
STRINGA 84
BEGIN
KEY "AMMIN. 1 COMUNENA"
PROMPT 56 54 ""
END
STRINGA 85
BEGIN
KEY "AMMIN. 1 PROVNA"
PROMPT 81 54 ""
END
STRINGA 86
BEGIN
KEY "AMMIN. 1 DATANA"
PROMPT 87 54 ""
END
STRINGA 87
BEGIN
KEY "AMMIN. 1 CODFIS"
PROMPT 100 54 ""
END
STRINGA 88
BEGIN
KEY "AMMIN. 1 QUALIFICA"
PROMPT 127 54 ""
END
END
END

321
m770/77base2.frm Executable file

@ -0,0 +1,321 @@
USE 36
JOIN 37 TO 36 INTO TIPOQUA=TIPOQUA CODDITTA=CODDITTA
END
DESCRIPTION
BEGIN
36->* "Base 770"
37->* "Basebis 770"
END
GENERAL
BEGIN
OFFSET 0 0
FONT "Courier 17cpi"
SIZE 10
CA "X"
IN 3 2
FI 131
END
SECTION BODY EVEN 73
NUMERO 1
BEGIN
KEY "I1-1"
PROMPT 23 1 ""
PICTURE "##.###"
FIELD 36->A0NFCOM
END
NUMERO 2
BEGIN
KEY "I1-2"
PROMPT 41 1 ""
PICTURE "##.###"
FIELD 36->A0NLDIP
END
NUMERO 3
BEGIN
KEY "I1-3"
PROMPT 55 1 ""
PICTURE "###.###.###.###^^^"
FIELD 36->A0COBB
END
NUMERO 4
BEGIN
KEY "I1-4"
PROMPT 77 1 ""
PICTURE "###.###.###.###^^^"
FIELD 36->A0CNET
END
NUMERO 5
BEGIN
KEY "I1-5"
PROMPT 99 1 ""
PICTURE "###.###.###.###^^^"
FIELD 36->A0IITRA
END
NUMERO 6
BEGIN
KEY "I1-6"
PROMPT 121 1 ""
PICTURE "###.###.###.###^^^"
FIELD 36->A0EPREV
END
NUMERO 7
BEGIN
KEY "I2-7 Compensi da terzi"
PROMPT 23 3 ""
PICTURE "###.###.###.###^^^"
FIELD 36->A0CTER
END
NUMERO 8
BEGIN
KEY "I2-8 Tot. imponibile"
PROMPT 55 3 ""
PICTURE "###.###.###.###^^^"
FIELD 36->A0TIMP
END
NUMERO 9
BEGIN
KEY "I2-9 Imposta lorda"
PROMPT 77 3 ""
PICTURE "###.###.###.###^^^"
FIELD 36->A0ILOR
END
NUMERO 10
BEGIN
KEY "I2-10 Tot. detrazioni"
PROMPT 99 3 ""
PICTURE "###.###.###.###^^^"
FIELD 36->A0TDET
END
NUMERO 11
BEGIN
KEY "I2-11 Incremento detrazioni"
PROMPT 121 5 ""
PICTURE "###.###.###.###^^^"
FIELD 36->A0INCDET
END
NUMERO 12
BEGIN
KEY "I3-12 Ritenute da terzi"
PROMPT 23 5 ""
PICTURE "###.###.###.###^^^"
FIELD 36->A0RTER
END
NUMERO 13
BEGIN
KEY "I3-13 Rit.datore di lavoro"
PROMPT 55 5 ""
PICTURE "###.###.###.###^^^"
FIELD 36->A0RDAT
END
NUMERO 14
BEGIN
KEY "I3-14 Eccedenza ritenute"
PROMPT 77 5 ""
PICTURE "###.###.###.###^^^"
FIELD 36->A0ERIT
END
NUMERO 15
BEGIN
KEY "I3-15 Contrib.arretrati"
PROMPT 99 5 ""
PICTURE "###.###.###.###^^^"
FIELD 36->A0CARR
END
NUMERO 16
BEGIN
KEY "I3-16 Ammontare arretrati"
PROMPT 121 5 ""
PICTURE "###.###.###.###^^^"
FIELD 36->A0AARR
END
NUMERO 17
BEGIN
KEY "I4-17 Detrazioni arretrati"
PROMPT 23 7 ""
PICTURE "###.###.###.###^^^"
FIELD 36->A0DARR
END
NUMERO 18
BEGIN
KEY "I4-18 Rit.arretrati"
PROMPT 55 7 ""
PICTURE "###.###.###.###^^^"
FIELD 36->A0RARR
END
NUMERO 19
BEGIN
KEY "I4-19 Compensi ai fini contr.INPS"
PROMPT 77 7 ""
PICTURE "###.###.###.###^^^"
FIELD 36->A0CINPS
END
NUMERO 20
BEGIN
KEY "I4-20 Rit.operate VA"
PROMPT 99 7 ""
PICTURE "###.###.###.###^^^"
FIELD 36->A0RITOPEVA
END
NUMERO 21
BEGIN
KEY "I4-21 Ritenute operate SA"
PROMPT 121 7 ""
PICTURE "###.###.###.###^^^"
FIELD 36->A0RITOPESA
END
NUMERO 22
BEGIN
KEY "I5-22 Rit.operate SI"
PROMPT 23 9 ""
PICTURE "###.###.###.###^^^"
FIELD 36->A0RITSI
END
NUMERO 23
BEGIN
KEY "I5-23 Credito d'imp.imprese d'autotrasporto"
PROMPT 55 9 ""
PICTURE "###.###.###.###^^^"
FIELD 36->A0CIIAUT
END
NUMERO 24
BEGIN
KEY "I5-25 Credito d'imp.premio d'assun."
PROMPT 77 9 ""
PICTURE "###.###.###.###^^^"
FIELD 36->A0CRIMPRAS
END
NUMERO 25
BEGIN
KEY "I5-25 Credito d'imp.L.85"
PROMPT 99 9 ""
PICTURE "###.###.###.###^^^"
FIELD 36->A0CRIMP85
END
NUMERO 26
BEGIN
KEY "I5-26 Num.assistiti da datore di lavoro"
PROMPT 121 9 ""
PICTURE "###.###.###.###^^^"
FIELD 36->A0NADLAV
END
NUMERO 27
BEGIN
KEY "I6-27 Num.ass.CAAF"
PROMPT 23 11 ""
PICTURE "###.###.###.###^^^"
FIELD 36->A0NACAAF
END
NUMERO 28
BEGIN
KEY "I7-1 N.fogli"
PROMPT 23 13 ""
PICTURE "##.###"
FIELD 36->A3NFCOM
END
NUMERO 29
BEGIN
KEY "I7-2 N.percipienti"
PROMPT 41 13 ""
PICTURE "##.###"
FIELD 36->A3NUMPER
END
NUMERO 30
BEGIN
KEY "I7-3 Reddito corrisp(p.10)"
PROMPT 55 13 ""
PICTURE "###.###.###.###^^^"
FIELD 36->A3REPT10
END
NUMERO 31
BEGIN
KEY "I7-4 Reddito corrisp(p.12)"
PROMPT 77 13 ""
PICTURE "###.###.###.###^^^"
FIELD 36->A3REPT12
END
NUMERO 32
BEGIN
KEY "I8-1 N.fogli"
PROMPT 23 15 ""
PICTURE "##.###"
FIELD 36->A0NFCOM
END
NUMERO 33
BEGIN
KEY "I1-2 N.dip."
PROMPT 41 15 ""
PICTURE "##.###"
FIELD 36->A0NLDIP
END
NUMERO 3
BEGIN
KEY "I1-3"
PROMPT 55 1 ""
PICTURE "###.###.###.###^^^"
FIELD 36->A0COBB
END
NUMERO 4
BEGIN
KEY "I1-4"
PROMPT 77 1 ""
PICTURE "###.###.###.###^^^"
FIELD 36->A0CNET
END
NUMERO 5
BEGIN
KEY "I1-5"
PROMPT 99 1 ""
PICTURE "###.###.###.###^^^"
FIELD 36->A0IITRA
END
NUMERO 6
BEGIN
KEY "I1-6"
PROMPT 121 1 ""
PICTURE "###.###.###.###^^^"
FIELD 36->A0EPREV
END
END
END

5
m770/77qaall.h Executable file

@ -0,0 +1,5 @@
// 77qaall.h
#define QA_ANNO_ALL 101
#define QA_NUM_ALL 102
#define QA2_NUM_ALL 103
#define QA2_ANNO_ALL 104

48
m770/77qaall.uml Executable file

@ -0,0 +1,48 @@
// 77qaall.uml - A,A2 - allegati 730
#include "77qaall.h"
PAGE "Allegati 730 " -1 -1 60 7
TEXT DLG_NULL
BEGIN
PROMPT 2 2 "Il sottoscritto allega n. "
END
NUMBER QA_NUM_ALL 5
BEGIN
PROMPT 28 2 ""
END
NUMBER QA2_NUM_ALL 5
BEGIN
PROMPT 28 2 ""
END
TEXT QA2_ANNO_ALL
BEGIN
PROMPT 35 2 "mod.730/95 completi"
END
TEXT QA_ANNO_ALL
BEGIN
PROMPT 35 2 "mod.730/96 completi"
END
TEXT DLG_NULL
BEGIN
PROMPT 2 3 "dei mod.730-3 e un ugual numero di buste mod.730-1"
END
BUTTON DLG_OK 9 2
BEGIN
PROMPT -12 -1 ""
END
BUTTON DLG_CANCEL 9 2
BEGIN
PROMPT -22 -1 ""
END
ENDPAGE
ENDMASK

@ -1,5 +1,4 @@
#include <xvt.h>
#include <applicat.h>
#include <relation.h>
#include <config.h>
@ -9,7 +8,6 @@
#include <progind.h>
#include "base.h"
#include <urldefid.h>
#include <nditte.h>
#include <anagr.h>
#include "quadroc.h"
@ -113,9 +111,6 @@ class TDicForm : public TForm
private:
real _f_tot_totale, _f_tot_snsrit, _f_tot_impon, _f_tot_impor, _f_tot_netto;
real _nf_tot_totale, _nf_tot_snsrit, _nf_tot_impon, _nf_tot_impor, _nf_tot_netto;
// void aggiorna_totali_D(const char tipo);
// void aggiorna_totali_E(const char tipo);
// void aggiorna_totali_E1(const char tipo);
TCursor* _cur;
@ -124,6 +119,7 @@ class TDicForm : public TForm
PaginaQuadro _PaginaCorrente;
void set_curr_page(PaginaQuadro pagina) { _PaginaCorrente = pagina; }
virtual int dic_form_len() const;
virtual void inc_curr_page();
virtual void next_page(TPrinter& pr);
bool _modulaser; // se stampa per modulaser
@ -209,7 +205,7 @@ void TDicForm::set_cursor(TCursor* cur)
}
TDicForm::TDicForm(const char* form, const char* quadro)
: TForm(form), _quadro(quadro), _prog(NULL)
: TForm(form), _quadro(quadro), _prog(NULL), _cur(NULL)
{
_can_print_tot_fis = _can_print_tot_nofis = FALSE;
_GiaStampatiFis = _GiaStampatiNoFis = _GiaMessoStartDoc = FALSE;
@ -607,6 +603,14 @@ bool TDicForm::PaginaPosizionamento() const
return _PaginaPosizionamento && curr_page() == PRIMA;
}
int TDicForm::dic_form_len() const
{
if (curr_page() == PRIMA)
return QD_FORMLEN_PRIMA;
else
return QD_FORMLEN;
}
// Stampa "righe" righe vuote. Se righe e' -1 fa un formfeed mettendo
// il codice ditta sull'ultima riga
void TDicForm::fill_page(TPrinter& pr, const int righe)
@ -617,8 +621,8 @@ void TDicForm::fill_page(TPrinter& pr, const int righe)
// form feed
if (righe < 0)
{
// const bool PrimaPagina = curr_page() == PRIMA;
const int stop = PaginaPosizionamento() ? QD_FORMLEN_PRIMA : QD_FORMLEN;
// const int stop = PaginaPosizionamento() ? QD_FORMLEN_PRIMA : QD_FORMLEN;
const int stop = dic_form_len();
for (int i = _RigaCorr; i < stop; i++)
{
if (i == 0)
@ -2931,7 +2935,6 @@ bool TStampaQuadroG::print_quadro(const int OffsetDitta, const bool modulaser)
// Quadro G-1
//
///////////////////////////////////////////////////////////////////////////////////////////
HIDDEN const int QG1_FORMLEN = 72;
HIDDEN const int QG1_PAGINE = 1;
@ -4738,6 +4741,297 @@ bool TStampaQuadroC::user_create()
return TRUE;
}
///////////////////////////////////////////////////////////////////////////////////////////
//
// BASE
//
///////////////////////////////////////////////////////////////////////////////////////////
HIDDEN const int BASE_FORMLEN = 73;
HIDDEN const int BASE_PAGINE = 4;
class TBase1 : public TDicForm
{
private:
long _codditta;
TRelation* r; // usate per contare i soci
TCursor* c;
long iContaSoci();
protected:
void stampa_corpo(TPrinter& pr);
void stampa_soci(TPrinter& pr);
virtual int dic_form_len() const { return BASE_FORMLEN-2; }
virtual void next_page(TPrinter& pr) { fill_page(pr, -1); }
virtual void stampa_totali(TPrinter& pr) {}
virtual void aggiorna_totali(const char tipo) {}
virtual void set_body(TPrinter& pr, const char tipo) {}
virtual int prima_riga(PaginaQuadro p) const { return 11; }
public:
virtual bool print(const long codditta, const long NumFis, const long NumNoFis);
TBase1(const char* sNomeForm, const char* quadro);
virtual ~TBase1();
};
TBase1::TBase1(const char* sNomeForm, const char* quadro) : TDicForm(sNomeForm, quadro)
{
r = new TRelation(LF_SOCI);
r->add(LF_ANAG, "TIPOA=TIPOASOC|CODANAGR=CODANAGRSO");
r->add(LF_ANAGFIS, "CODANAGR=CODANAGR",1, LF_ANAG);
r->add(LF_COMUNI, "COM=COMNASC",1,LF_ANAGFIS);
c = new TCursor(r);
}
TBase1::~TBase1()
{
delete r;
delete c;
}
void TBase1::stampa_corpo(TPrinter& pr)
{
TPrint_section& body = section('B', first_page);
body.reset();
body.update();
const int body_righe = body.height();
for (int i = 0; i < body_righe; i++)
{
pr.print(body.row(i));
_RigaCorr++;
}
if (usa_progind())
progind()->addstatus(1);
}
// accetta solo quelli con qualifica=A,B o C
bool bFiltraSoci(const TRelation* rel)
{
TString sQual(3);
sQual = rel->lfile().get("RICQUAL");
return sQual=="A" || sQual=="B" || sQual=="C";
}
long TBase1::iContaSoci()
{
TString filtro(20);
filtro.format("CODDITTA=%d",_codditta);
c->setfilter(filtro);
c->set_filterfunction(bFiltraSoci);
(*c)=0L;
return c->items();
}
void TBase1::stampa_soci(TPrinter& pr)
{
TPrint_section& fut = section('F', first_page);
fut.reset();
fut.update();
const long iSoci = iContaSoci();
if (iSoci > 11)
/* TBI stampa su file (allegato) */;
else
{
int i=0;
TString sRagsoc,sSesso,sComuneNa,sProvNa,sDataNa,sCodFis,sCodQua;
for ((*c)=0L; c->pos() < c->items(); ++(*c))
{
sCodQua=c->file().get("RICQUAL");
sRagsoc=c->file(LF_ANAG).get("RAGSOC");
sCodFis=c->file(LF_ANAG).get("COFI");
sDataNa=c->file(LF_ANAGFIS).get("DATANASC");
sSesso=c->file(LF_ANAGFIS).get("SESSO");
sComuneNa=c->file(LF_COMUNI).get("DENCOM");
sProvNa=c->file(LF_COMUNI).get("PROVCOM");
fut.field(0).set(sRagsoc);
fut.field(1).set(sSesso);
fut.field(2).set(sComuneNa);
fut.field(3).set(sProvNa);
fut.field(4).set(sDataNa);
fut.field(5).set(sCodFis);
fut.field(6).set(sCodQua);
pr.print(fut.row(i++));
_RigaCorr++;
}
}
if (usa_progind()) progind()->addstatus(1);
}
bool TBase1::print(const long codditta, const long NumFis, const long NumNoFis)
{
TCursor* cur = cursor();
TPrinter& pr = printer();
_codditta=codditta;
if (!InitPrint(codditta))
return FALSE;
pr.formlen(BASE_FORMLEN);
(*cur)=0L;
if (_modulaser)
ClearFlagModulaser();
jump_to_line(pr, prima_riga(PRIMA));
stampa_corpo(pr);
stampa_soci(pr);
next_page(pr);
return TRUE;
}
class TBase2 : public TDicForm
{
private:
long _codditta;
protected:
void stampa_corpo(TPrinter& pr);
virtual int dic_form_len() const { return BASE_FORMLEN; }
virtual void next_page(TPrinter& pr) { fill_page(pr, -1); }
virtual void stampa_totali(TPrinter& pr) {}
virtual void aggiorna_totali(const char tipo) {}
virtual void set_body(TPrinter& pr, const char tipo) {}
virtual int prima_riga(PaginaQuadro p) const { return 1;}
public:
virtual bool print(const long codditta, const long NumFis, const long NumNoFis);
TBase2(const char* sNomeForm, const char* quadro) : TDicForm(sNomeForm, quadro) {}
virtual ~TBase2() {}
};
void TBase2::stampa_corpo(TPrinter& pr)
{
TPrint_section& body = section('B', even_page);
body.reset();
body.update();
const int body_righe = body.height();
for (int i = 0; i < body_righe; i++)
{
pr.print(body.row(i));
_RigaCorr++;
}
if (usa_progind())
progind()->addstatus(1);
}
bool TBase2::print(const long codditta, const long NumFis, const long NumNoFis)
{
TCursor* cur = cursor();
TPrinter& pr = printer();
_codditta=codditta;
filtra(codditta);
(*cur)=0L;
// jump_to_line(pr, prima_riga(PRIMA));
stampa_corpo(pr);
next_page(pr);
return TRUE;
}
class TStampaBase : public TStampaQuadro
{
private:
TBase1* _fBase1;
TBase2* _fBase2;
TRelation* _rel;
TCursor* _cur, *_cur2;
protected:
virtual bool user_create();
virtual bool user_destroy();
virtual bool conta_tipi_per() const { return FALSE; }
virtual TDicForm* get_form() const { return _fBase1; }
virtual TCursor* get_cursor() const { return _cur; }
virtual bool print_quadro(const int OffsetDitta, const bool modulaser);
public:
TStampaBase(char livel) : TStampaQuadro("Base", livel) { }
};
bool TStampaBase::user_create()
{
_fBase1 = new TBase1("77base1", "Base");
_fBase2 = new TBase2("77base2", "Base");
// Adesso bisogna chiamare set_cursor per impostare il cursore dentro
// al form. Sarebbe meglio fare in modo che il form usi sempre il cursore
// letto dal .frm, senza bisogno di passarglielo dall'applicazione
_cur = _fBase1->TForm::cursor();
_fBase1->set_cursor(_cur);
_cur2 = _fBase2->TForm::cursor();
_fBase2->set_cursor(_cur2);
return TRUE;
}
bool TStampaBase::user_destroy()
{
// delete _cur;
delete _fBase1;
delete _fBase2;
return TRUE;
}
bool TStampaBase::print_quadro(const int OffsetDitta, const bool modulaser)
{
int start=0, last=0;
// Setta formlen prima di printer.open per avere la lunghezza giusta nel caso di
// stampa a video
printer().formlen(BASE_FORMLEN);
bool ok = printer().open();
_fBase1->set_modulaser(modulaser);
_fBase2->set_modulaser(modulaser);
// Dice se deve eseguire il posizionamento del foglio.
// Se stampa piu' ditte va eseguito solo sulla prima
// Occhio a non spostarlo nel ciclo.
_fBase1->set_posiziona(TRUE);
if (OffsetDitta >= 0)
{
start = OffsetDitta;
last = OffsetDitta;
}
else
last = ditte().items() - 1;
for (int i = start; i <= last; i++)
{
TString CoFiDic(20);
TToken_string riga(ditte()[i]);
const long codditta = atol(riga.get(0));
const TipoDitta tipo = (TipoDitta)riga.get_int(1);
const long fis = riga.get_long(2);
const long nofis = riga.get_long(3);
const bool LastFis = (bool)riga.get_int(4);
const bool LastNoFis = (bool)riga.get_int(5);
// I gruppi dich-estinti hanno totali comuni
// Si presume che nell'array vengano messi nell'ordine dich-estinti
if (tipo == normale || tipo == dichiarante)
_fBase1->azzera_totali();
if (tipo == estinto)
CoFiDic = riga.get(6);
// Dice al form che tipo di ditta si stampa
_fBase1->set_tipo_ditta(tipo);
// Numera i fogli a partire da 1 per ogni ditta normale e da 1 e di seguito negli estinti
// per i sogg. dichiaranti
if (tipo == normale || tipo == dichiarante)
_fBase1->set_num_foglio(1);
// Se la ditta e' estinta dice al form il cod.fis. del dichiarante
if (tipo == estinto)
_fBase1->set_cofi_dic(CoFiDic);
// Dice al form che e' l'ultima ditta
if (i == last)
_fBase1->set_last_ditta(TRUE);
_fBase1->print(codditta, fis, nofis);
_fBase2->print(codditta, fis, nofis);
}
printer().close();
return ok;
}
///////////////////////////////////////////////////////////////////////////////////////////
//
// Quadro H
@ -4893,7 +5187,6 @@ bool TStampaQuadroH::user_create()
// 772mod -4 [QUADRO] [ LIVELLO {S|D} ]
//
/////////////////////////////////////////////////////////////////////////////////
int stampa_quadro(int argc, char* argv[])
{
if (argc >= 4)
@ -4925,7 +5218,7 @@ int stampa_quadro(int argc, char* argv[])
default: app = new TStampaQuadroA(quadro, livello); break;
}
}
else if (quadro[0] == 'B')
else if (quadro[0] == 'B' && quadro[1] != 'a')
{
app = new TStampaQuadroB(quadro, livello);
}
@ -4941,11 +5234,15 @@ int stampa_quadro(int argc, char* argv[])
{
app = new TStampaQuadroG1(livello);
}
else if (quadro == "Base")
{
app = new TStampaBase(livello);
}
else if (quadro == "H")
{
app = new TStampaQuadroH(quadro, livello);
}
if (app != NULL)
{
app->run(argc, argv, app->taitol());

@ -37,15 +37,13 @@ TEXT T_BASE
BEGIN
PROMPT COL1 ROW1 "Quadro Base"
GROUP 1
FLAGS "D"
END
BUTTON B_BASE 1 1
BEGIN
PROMPT 1 ROW1 ""
MESSAGE RUN,771MOD,-7,A|K_TAB,RILEGGI_QUADRI
MESSAGE RUN,772MOD,-4,Base,S|K_TAB,RILEGGI_QUADRI
PICTURE 123
FLAGS "D"
GROUP 1
END
@ -53,15 +51,13 @@ TEXT T_LAGG
BEGIN
PROMPT COL1 ROW2 "Quadro L agg."
GROUP 1
FLAGS "D"
END
BUTTON B_LAGG 1 1
BEGIN
PROMPT 1 ROW2 ""
MESSAGE RUN,771MOD,-7,1|K_TAB,RILEGGI_QUADRI
// MESSAGE RUN,771MOD,-7,1|K_TAB,RILEGGI_QUADRI
PICTURE 123
FLAGS "D"
GROUP 1
END
@ -69,7 +65,6 @@ TEXT T_NAGG
BEGIN
PROMPT COL1 ROW3 "Quadro N agg."
GROUP 1
FLAGS "D"
END
BUTTON B_NAGG 1 1
@ -77,7 +72,6 @@ BEGIN
PROMPT 1 ROW3 ""
// MESSAGE RUN,771MOD,-7,2|K_TAB,RILEGGI_QUADRI
PICTURE 123
FLAGS "D"
GROUP 1
END
@ -93,14 +87,12 @@ BEGIN
PROMPT 1 ROW4 ""
// MESSAGE RUN,771MOD,-7,3|K_TAB,RILEGGI_QUADRI
PICTURE 123
FLAGS "D"
GROUP 1
END
TEXT T_ALLG
BEGIN
PROMPT COL1 ROW5 "Allegato G "
FLAGS "D"
GROUP 1
END
@ -109,14 +101,12 @@ BEGIN
PROMPT 1 ROW5 ""
PICTURE 123
// MESSAGE RUN,771MOD,-1
FLAGS "D"
GROUP 1
END
TEXT T_BUST
BEGIN
PROMPT COL1 ROW6 "Buste"
FLAGS "D"
GROUP 1
END
@ -125,7 +115,6 @@ BEGIN
PROMPT 1 ROW6 ""
PICTURE 123
// MESSAGE RUN,771MOD,-1
FLAGS "D"
GROUP 1
END
// Fine prima colonna
@ -135,7 +124,6 @@ END
TEXT T_A
BEGIN
PROMPT 24 ROW1 "Quadro A "
FLAGS "D"
GROUP 1
END
@ -143,15 +131,13 @@ BUTTON B_A 1 1
BEGIN
PROMPT 20 ROW1 ""
PICTURE 123
MESSAGE RUN,771MOD,-5,D|K_TAB,RILEGGI_QUADRI
FLAGS "D"
MESSAGE RUN,772MOD,-4,A,S|K_TAB,RILEGGI_QUADRI
GROUP 1
END
TEXT T_A1
BEGIN
PROMPT 24 ROW2 "Quadro A1 "
FLAGS "D"
GROUP 1
END
@ -159,15 +145,13 @@ BUTTON B_A1 1 1
BEGIN
PROMPT 20 ROW2 ""
PICTURE 123
FLAGS "D"
MESSAGE RUN,771MOD,-5,1|K_TAB,RILEGGI_QUADRI
MESSAGE RUN,771MOD,-4,A1,S|K_TAB,RILEGGI_QUADRI
GROUP 1
END
TEXT T_A2
BEGIN
PROMPT 24 ROW3 "Quadro A2 "
FLAGS "D"
GROUP 1
END
@ -175,15 +159,13 @@ BUTTON B_A2 1 1
BEGIN
PROMPT 20 ROW3 ""
PICTURE 123
MESSAGE RUN,771MOD,-5,E|K_TAB,RILEGGI_QUADRI
FLAGS "D"
MESSAGE RUN,772MOD,-4,A2,S|K_TAB,RILEGGI_QUADRI
GROUP 1
END
TEXT T_A3
BEGIN
PROMPT 24 ROW4 "Quadro A3 "
FLAGS "D"
GROUP 1
END
@ -191,15 +173,13 @@ BUTTON B_A3 1 1
BEGIN
PROMPT 20 ROW4 ""
PICTURE 123
MESSAGE RUN,771MOD,-5,2|K_TAB,RILEGGI_QUADRI
FLAGS "D"
MESSAGE RUN,772MOD,-4,A3,S|K_TAB,RILEGGI_QUADRI
GROUP 1
END
TEXT T_B
BEGIN
PROMPT 24 ROW5 "Quadro B"
FLAGS "D"
GROUP 1
END
@ -207,15 +187,13 @@ BUTTON B_B 1 1
BEGIN
PROMPT 20 ROW5 ""
PICTURE 123
MESSAGE RUN,771MOD,-5,3|K_TAB,RILEGGI_QUADRI
FLAGS "D"
MESSAGE RUN,772MOD,-4,B,S|K_TAB,RILEGGI_QUADRI
GROUP 1
END
TEXT T_B1
BEGIN
PROMPT 24 ROW6 "Quadro B1"
// FLAGS "D"
GROUP 1
END
@ -223,8 +201,7 @@ BUTTON B_B1 1 1
BEGIN
PROMPT 20 ROW6 ""
PICTURE 123
MESSAGE RUN,771MOD,-6,0|K_TAB,RILEGGI_QUADRI
FLAGS "D"
// MESSAGE RUN,771MOD,-6,0|K_TAB,RILEGGI_QUADRI
GROUP 1
END
// Fine seconda colonna
@ -233,7 +210,6 @@ END
TEXT T_C
BEGIN
PROMPT 43 ROW1 "Quadro C"
FLAGS "D"
GROUP 1
END
@ -241,29 +217,26 @@ BUTTON B_C 1 1
BEGIN
PROMPT 39 ROW1 ""
PICTURE 123
MESSAGE RUN,771MOD,-6,2|K_TAB,RILEGGI_QUADRI
FLAGS "D"
MESSAGE RUN,772MOD,-4,C,S|K_TAB,RILEGGI_QUADRI
GROUP 1
END
TEXT T_D
BEGIN
PROMPT 43 ROW2 "Quadro D"
GROUP 1
END
BUTTON B_D 1 1
BEGIN
PROMPT 39 ROW2 ""
PICTURE 123
MESSAGE RUN,772MOD,-4,D,S
MESSAGE RUN,772MOD,-4,D,S|K_TAB,RILEGGI_QUADRI
GROUP 1
END
TEXT T_D1
BEGIN
PROMPT 43 ROW3 "Quadro D1"
FLAGS "D"
GROUP 1
END
@ -271,15 +244,13 @@ BUTTON B_D1 1 1
BEGIN
PROMPT 39 ROW3 ""
PICTURE 123
FLAGS "D"
MESSAGE RUN,771MOD,-6,5|K_TAB,RILEGGI_QUADRI
MESSAGE RUN,772MOD,-4,D1,S|K_TAB,RILEGGI_QUADRI
GROUP 1
END
TEXT T_E
BEGIN
PROMPT 43 ROW4 "Quadro E "
FLAGS "D"
GROUP 1
END
@ -287,15 +258,13 @@ BUTTON B_E 1 1
BEGIN
PROMPT 39 ROW4 ""
PICTURE 123
MESSAGE RUN,771MOD,-1|K_TAB,RILEGGI_QUADRI
FLAGS "D"
MESSAGE RUN,772MOD,-4,E,S|K_TAB,RILEGGI_QUADRI
GROUP 1
END
TEXT T_E1
BEGIN
PROMPT 43 ROW5 "Quadro E1 "
FLAGS "D"
GROUP 1
END
@ -303,15 +272,13 @@ BUTTON B_E1 1 1
BEGIN
PROMPT 39 ROW5 ""
PICTURE 123
MESSAGE RUN,771MOD,-2,I|K_TAB,RILEGGI_QUADRI
FLAGS "D"
MESSAGE RUN,772MOD,-4,E1,S|K_TAB,RILEGGI_QUADRI
GROUP 1
END
TEXT T_E2
BEGIN
PROMPT 43 ROW6 "Quadro E2 "
FLAGS "D"
GROUP 1
END
@ -319,8 +286,7 @@ BUTTON B_E2 1 1
BEGIN
PROMPT 39 ROW6 ""
PICTURE 123
MESSAGE RUN,771MOD,-3|K_TAB,RILEGGI_QUADRI
FLAGS "D"
MESSAGE RUN,772MOD,-4,E2,S|K_TAB,RILEGGI_QUADRI
GROUP 1
END
// Fine terza colonna
@ -329,7 +295,6 @@ END
TEXT T_F
BEGIN
PROMPT 62 ROW1 "Quadro F"
FLAGS "D"
GROUP 1
END
@ -338,14 +303,12 @@ BEGIN
PROMPT 58 ROW1 ""
PICTURE 123
// MESSAGE RUN,771MOD,-1
FLAGS "D"
GROUP 1
END
TEXT T_F1
BEGIN
PROMPT 62 ROW2 "Quadro F1"
FLAGS "D"
GROUP 1
END
@ -354,14 +317,12 @@ BEGIN
PROMPT 58 ROW2 ""
PICTURE 123
// MESSAGE RUN,771MOD,-1
FLAGS "D"
GROUP 1
END
TEXT T_F2
BEGIN
PROMPT 62 ROW3 "Quadro F2"
FLAGS "D"
GROUP 1
END
@ -370,14 +331,12 @@ BEGIN
PROMPT 58 ROW3 ""
PICTURE 123
// MESSAGE RUN,771MOD,-1
FLAGS "D"
GROUP 1
END
TEXT T_G
BEGIN
PROMPT 62 ROW4 "Quadro G"
FLAGS "D"
GROUP 1
END
@ -385,15 +344,13 @@ BUTTON B_G 1 1
BEGIN
PROMPT 58 ROW4 ""
PICTURE 123
// MESSAGE RUN,771MOD,-1
FLAGS "D"
MESSAGE RUN,772MOD,-4,G,S
GROUP 1
END
TEXT T_G1
BEGIN
PROMPT 62 ROW5 "Quadro G1"
FLAGS "D"
GROUP 1
END
@ -402,14 +359,12 @@ BEGIN
PROMPT 58 ROW5 ""
PICTURE 123
// MESSAGE RUN,771MOD,-1
FLAGS "D"
GROUP 1
END
TEXT T_H
BEGIN
PROMPT 62 ROW5 "Quadro H"
FLAGS "D"
GROUP 1
END
@ -417,8 +372,7 @@ BUTTON B_H 1 1
BEGIN
PROMPT 58 ROW5 ""
PICTURE 123
// MESSAGE RUN,771MOD,-1
FLAGS "D"
MESSAGE RUN,772MOD,-4,H,S
GROUP 1
END
// Fine QUARTA colonna

@ -14,7 +14,7 @@
#define ROW6 12
#define HIDDEN "H"
#define MYFLAGS "DH"
#define MYFLAGS "H"
#define GRUPPO 5
// Prima colonna
@ -28,7 +28,7 @@ END
BUTTON B_BASE 1 1
BEGIN
PROMPT 1 ROW1 ""
MESSAGE RUN,771MOD,-7,A|K_TAB,RILEGGI_QUADRI
MESSAGE RUN,772MOD,-4,Base,D|K_TAB,RILEGGI_QUADRI
PICTURE 123
FLAGS MYFLAGS
GROUP GRUPPO
@ -44,7 +44,7 @@ END
BUTTON B_LAGG 1 1
BEGIN
PROMPT 1 ROW2 ""
MESSAGE RUN,771MOD,-7,1|K_TAB,RILEGGI_QUADRI
// MESSAGE RUN,771MOD,-7,1|K_TAB,RILEGGI_QUADRI
PICTURE 123
FLAGS MYFLAGS
GROUP GRUPPO
@ -112,7 +112,7 @@ BUTTON B_A 1 1
BEGIN
PROMPT 20 ROW1 ""
PICTURE 123
MESSAGE RUN,771MOD,-5,D|K_TAB,RILEGGI_QUADRI
MESSAGE RUN,772MOD,-4,A,D|K_TAB,RILEGGI_QUADRI
FLAGS MYFLAGS
GROUP GRUPPO
END
@ -129,7 +129,7 @@ BEGIN
PROMPT 20 ROW2 ""
PICTURE 123
FLAGS MYFLAGS
MESSAGE RUN,771MOD,-5,1|K_TAB,RILEGGI_QUADRI
MESSAGE RUN,772MOD,-4,A1,D|K_TAB,RILEGGI_QUADRI
GROUP GRUPPO
END
@ -144,7 +144,7 @@ BUTTON B_A2 1 1
BEGIN
PROMPT 20 ROW3 ""
PICTURE 123
MESSAGE RUN,771MOD,-5,E|K_TAB,RILEGGI_QUADRI
MESSAGE RUN,772MOD,-4,A2,D|K_TAB,RILEGGI_QUADRI
FLAGS MYFLAGS
GROUP GRUPPO
END
@ -160,7 +160,7 @@ BUTTON B_A3 1 1
BEGIN
PROMPT 20 ROW4 ""
PICTURE 123
MESSAGE RUN,771MOD,-5,2|K_TAB,RILEGGI_QUADRI
MESSAGE RUN,772MOD,-4,A3,D|K_TAB,RILEGGI_QUADRI
FLAGS MYFLAGS
GROUP GRUPPO
END
@ -176,7 +176,7 @@ BUTTON B_B 1 1
BEGIN
PROMPT 20 ROW5 ""
PICTURE 123
MESSAGE RUN,771MOD,-5,3|K_TAB,RILEGGI_QUADRI
MESSAGE RUN,772MOD,-4,B,D|K_TAB,RILEGGI_QUADRI
FLAGS MYFLAGS
GROUP GRUPPO
END
@ -192,7 +192,7 @@ BUTTON B_B1 1 1
BEGIN
PROMPT 20 ROW6 ""
PICTURE 123
MESSAGE RUN,771MOD,-6,0|K_TAB,RILEGGI_QUADRI
// MESSAGE RUN,771MOD,-6,0|K_TAB,RILEGGI_QUADRI
FLAGS MYFLAGS
GROUP GRUPPO
END
@ -210,7 +210,7 @@ BUTTON B_C 1 1
BEGIN
PROMPT 39 ROW1 ""
PICTURE 123
MESSAGE RUN,771MOD,-6,2|K_TAB,RILEGGI_QUADRI
MESSAGE RUN,772MOD,-4,C,D|K_TAB,RILEGGI_QUADRI
FLAGS MYFLAGS
GROUP GRUPPO
END
@ -243,7 +243,7 @@ BEGIN
PROMPT 39 ROW3 ""
PICTURE 123
FLAGS MYFLAGS
MESSAGE RUN,771MOD,-6,5|K_TAB,RILEGGI_QUADRI
MESSAGE RUN,772MOD,-4,D1,D|K_TAB,RILEGGI_QUADRI
GROUP GRUPPO
END
@ -258,7 +258,7 @@ BUTTON B_E 1 1
BEGIN
PROMPT 39 ROW4 ""
PICTURE 123
MESSAGE RUN,771MOD,-1|K_TAB,RILEGGI_QUADRI
MESSAGE RUN,772MOD,-4,E,D|K_TAB,RILEGGI_QUADRI
FLAGS MYFLAGS
GROUP GRUPPO
END
@ -274,7 +274,7 @@ BUTTON B_E1 1 1
BEGIN
PROMPT 39 ROW5 ""
PICTURE 123
MESSAGE RUN,771MOD,-2,I|K_TAB,RILEGGI_QUADRI
MESSAGE RUN,772MOD,-4,E1,D|K_TAB,RILEGGI_QUADRI
FLAGS MYFLAGS
GROUP GRUPPO
END
@ -290,7 +290,7 @@ BUTTON B_E2 1 1
BEGIN
PROMPT 39 ROW6 ""
PICTURE 123
MESSAGE RUN,771MOD,-3|K_TAB,RILEGGI_QUADRI
MESSAGE RUN,772MOD,-4,E2,D|K_TAB,RILEGGI_QUADRI
FLAGS MYFLAGS
GROUP GRUPPO
END
@ -356,7 +356,7 @@ BUTTON B_G 1 1
BEGIN
PROMPT 58 ROW4 ""
PICTURE 123
// MESSAGE RUN,771MOD,-1
MESSAGE RUN,772MOD,-4,G,D
FLAGS MYFLAGS
GROUP GRUPPO
END
@ -388,7 +388,7 @@ BUTTON B_H 1 1
BEGIN
PROMPT 58 ROW5 ""
PICTURE 123
// MESSAGE RUN,771MOD,-1
MESSAGE RUN,772MOD,-4,H,D
FLAGS MYFLAGS
GROUP GRUPPO
END