Corretti errori di livello 2 riguardo alla stampa anagrafiche

I codici li trovate sul fax di Paolino


git-svn-id: svn://10.65.10.50/trunk@5652 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
guy 1997-11-20 16:22:25 +00:00
parent f063dde4e7
commit c4baf1bfd6
2 changed files with 255 additions and 229 deletions

View File

@ -12,22 +12,23 @@
TRectype& TAnaprint_app::look_com(const char* cod)
{
_comuni->curr().zero();
if (*cod)
{
TRectype& com = _comuni->curr();
com.zero();
if (cod && *cod)
{
_comuni->curr().put("COM",cod);
_comuni->read();
if (_comuni->bad())
_comuni->curr().zero();
com.put("COM",cod);
if (_comuni->read() != NOERR)
com.zero();
}
return _comuni->curr();
return com;
}
const char* TAnaprint_app::look_tab(const char* tabname, const char* cod,
const char* fld)
{
if (*cod == 0) return "";
if (cod == NULL || *cod == 0)
return "";
TTable tab(tabname);
tab.curr().zero();
tab.curr().put("CODTAB",cod);
@ -44,8 +45,7 @@ void TAnaprint_app::process_link(int id, const char* txt)
{
TString80 ss = "1|"; ss << txt;
TMessage fs(cmd2name("ba4","-1"), MSG_LN, ss);
TMailbox m;
m.send(fs);
fs.send();
TExternal_app ba4(_pr_what == anafis ? "ba4 -1 F" : "ba4 -1 G");
if (ba4.run()) beep();
}

View File

@ -14,22 +14,22 @@ void TAnaprint_app::set_scheda_anagiu()
TString zio = current_cursor()->curr(LF_ANAG).get("RAGSOC");
_bk_ana = set_bookmark(zio);
set_row(1,"SCHEDA SOCIETA'");
set_row(2,"");
set_row(3,"@bCodice@r@15g@u@pn@25g@r@bRag.Sociale @r@u@50s",
int row = 1;
set_row(row++,"SCHEDA SOCIETA'");
set_row(row++,"");
set_row(row++,"@bCodice@r@15g@u@pn@25g@r@bRag.Sociale @r@u@50s",
FLD(LF_ANAG,"CODANAGR","@@@@@"),
FLD(LF_ANAG,"RAGSOC"));
set_row(4,"@25g@bEvent. sigla@r@40g@u@20s",
set_row(row++,"@25g@bEvent. sigla@r@40g@u@20s",
FLD(LF_ANAGGIU,"SIGLA"));
set_row(5,"Oggetto soc.@15g@60s",
set_row(row++,"Oggetto soc.@15g@60s",
FLD(LF_ANAGGIU,"OGGSOC"));
set_row(6,"Codice Fiscale@20g@16s@46gPartita IVA @12s",
FLD(LF_ANAG,"COFI"),
FLD(LF_ANAG,"PAIV"));
set_row(7,"Riferimento@15g@20s", FLD(LF_ANAGGIU,"PERRIF"));
set_row(8,"");
set_row(9,"Sede legale@20gIndirizzo @35s N. @s",
set_row(row++,"Codice Fiscale@20g@16s@46gPartita IVA @12s",
FLD(LF_ANAG,"COFI"), FLD(LF_ANAG,"PAIV"));
set_row(row++,"Riferimento@15g@20s", FLD(LF_ANAGGIU,"PERRIF"));
set_row(row++,"");
set_row(row++,"Sede legale@20gIndirizzo @35s N. @s",
FLD(LF_ANAG,"INDRES"),
FLD(LF_ANAG,"CIVRES"));
@ -39,17 +39,15 @@ void TAnaprint_app::set_scheda_anagiu()
TString a = cc.get("DENCOM");
TString b = cc.get("CAPCOM");
TString c = cc.get("PROVCOM");
set_row(10,"@20gComune %-24s@53gProvincia %2s@68gCAP %5s",
(const char*)a,
(const char*)c,
(const char*)b);
set_row(row++,"@20gComune %s %-24s@58gProv. %2s@68gCAP %5s",
(const char*)com, (const char*)a, (const char*)c, (const char*)b);
set_row(11,"@20gTelefono @u@10s@r/@u@30s@r",
set_row(row++,"@20gTelefono @u@10s@r/@u@30s@r",
FLD(LF_ANAG,"PTELRF"),
FLD(LF_ANAG,"TELRF"));
set_row(12,"");
set_row(row++,"");
set_row(13,"Domicilio fiscale@20gIndirizzo @35s N. @s",
set_row(row++,"Domicilio fiscale@20gIndirizzo @35s N. @s",
FLD(LF_ANAG,"INDRF"),
FLD(LF_ANAG,"CIVRF"));
@ -58,16 +56,14 @@ void TAnaprint_app::set_scheda_anagiu()
a = cc.get("DENCOM");
b = cc.get("CAPCOM");
c = cc.get("PROVCOM");
set_row(14,"@20gComune %-24s@53gProvincia %2s@68gCAP %5s",
(const char*)a,
(const char*)c,
(const char*)b);
set_row(row++,"@20gComune %s %-24s@58gProv. %2s@68gCAP %5s",
(const char*)com, (const char*)a, (const char*)c, (const char*)b);
set_row(15,"");
set_row(16,"Corrispondenza@20gIndirizzo @35s N. @s @35s",
set_row(row++,"");
set_row(row++,"Corrispondenza@20gIndirizzo @35s N. @s @35s",
FLD(LF_ANAG,"INDCORR"),
FLD(LF_ANAG,"CIVCORR"),
FLD(LF_ANAG, "LOCCORR"));
FLD(LF_ANAG,"LOCCORR"));
com = current_cursor()->curr(LF_ANAG).get("COMCORR");
cc = look_com(com);
@ -75,46 +71,52 @@ void TAnaprint_app::set_scheda_anagiu()
b = cc.get("CAPCOM");
c = cc.get("PROVCOM");
set_row(17,"@20gComune %-24s@53gProvincia %2s@68gCAP %5s",
(const char*)a,
(const char*)c,
(const char*)b);
set_row(row++,"@20gComune %s %-24s@58gProv. %2s@68gCAP %5s",
(const char*)com, (const char*)a, (const char*)c, (const char*)b);
com = current_cursor()->curr(LF_ANAG).get("STATOCORR");
if (com.empty())
a = "Italia";
else { a = look_tab("%STA",com,"S0"); }
set_row(18,"@20gStato %s",(const char*)a);
set_row(19,"");
set_row(20,"Telex@20g@u@10s@r/@u@30s@r",
set_row(row++,"@20gStato %s",(const char*)a);
set_row(row++,"");
set_row(row++,"Telex@20g@u@10s@r/@u@30s@r",
FLD(LF_ANAG,"PTLEXRF"),
FLD(LF_ANAG,"TLEXRFX"));
set_row(21,"Telefax@20g@u@10s@r/@u@30s@r",
FLD(LF_ANAG,"PFAXRF"),
FLD(LF_ANAG,"FAXRF"));
set_row(22,"");
set_row(23,"Ufficio imposte@20gNumero @pn",
set_row(row++,"Telefax@20g@u@10s@r/@u@30s@r",
FLD(LF_ANAG,"PFAXRF"), FLD(LF_ANAG,"FAXRF"));
set_row(row++,"Posta elettronica@20g@s", FLD(LF_ANAG,"MAIL"));
set_row(row++,"");
set_row(row++,"Ufficio imposte@20gNumero @pn",
FLD(LF_ANAG,"UFFIIDD","@@@"));
com = current_cursor()->curr(LF_ANAG).get("UFFIIDD");
a = look_tab("%UID",com,"S6");
c = look_tab("%UID",com,"S4");
cc = look_com(a);
com = look_tab("%UID",get_field(LF_ANAG, "UFFIIDD"),"S6"); // Comune imposte dirette
c = look_tab("%UID",get_field(LF_ANAG, "UFFIIDD"),"S4"); // c.c. Esattoria
cc = look_com(com);
a = cc.get("DENCOM");
b = cc.get("PROVCOM");
set_row(24,"@20gComune %-24s@53gProvincia %2s",
set_row(row++,"@20gComune %s %-24s@58gProv. %s",
(const char*)com, (const char*)a, (const char*)b);
set_row(row++,"Ufficio IVA@20gNumero @pn",
FLD(LF_ANAG,"UFFIVA","@@@"));
com = look_tab("%UIV",get_field(LF_ANAG, "UFFIVA"),"S6");
cc = look_com(com);
a = cc.get("DENCOM");
b = cc.get("PROVCOM");
set_row(row++,"@20gComune %s %-24s@58gProv. %s",
(const char*)com, (const char*)a, (const char*)b);
set_row(row++,"Esattoria@20gComunale @02s Provinciale @03s C.C. %s",
FLD(LF_ANAG,"CODCONTR",1,2), FLD(LF_ANAG,"CODCONTR",3,5), (const char*)c);
set_row(row++,"@20gComune %-24s@58gProv. %s",
(const char*)a,
(const char*)b);
set_row(25,"");
set_row(26,"Esattoria@20gC/C n. %-20s",(const char*)c);
set_row(27,"@20gComune %-24s@53gProvincia %2s",
(const char*)a,
(const char*)b);
set_row(28,"@20gCodice contribuente @10s",
FLD(LF_ANAG,"CODCONTR"));
set_row(29,""); set_row(30,"");
set_row(row++,"@20gCodice contribuente @pn",
FLD(LF_ANAG,"CODCONTR", "@@ @@@ @@@@@@@@ @@"));
set_row(row++,"");
//Qui la stampa dei dati conto fiscale
TString16 tipo_stampa;
@ -122,9 +124,9 @@ void TAnaprint_app::set_scheda_anagiu()
if (tipo == 0) tipo_stampa = "Delega";
else if (tipo == 1) tipo_stampa = "Bollettino";
else tipo_stampa = "Distinta";
set_row(32,"Dati conto fiscale @20gTitolare conto fiscale @54g@f @60gTipo stampa %s",
set_row(row++,"Dati conto fiscale @20gTitolare conto fiscale @54g@f @60gTipo stampa %s",
FLD(LF_ANAG,"TITCF"), (const char*) tipo_stampa);
set_row(33,"@20gCodice ABI @pn @60gCAB @pn",
set_row(row++,"@20gCodice ABI @pn @60gCAB @pn",
FLD(LF_ANAG,"CODABI","@@@@@"), FLD(LF_ANAG,"CODCAB","@@@@@"));
tipo_stampa = current_cursor()->curr(LF_ANAG).get("UFFCONC");
if (tipo_stampa.empty())
@ -139,71 +141,74 @@ void TAnaprint_app::set_scheda_anagiu()
tipo_stampa = cc.get("UFFCONC");
}
}
set_row(34,"@20gConto fiscale %s @s",
set_row(row++,"@20gConto fiscale %s @s",
(const char*)tipo_stampa, FLD(LF_ANAG,"COFI"));
set_row(row++,"");
// dati atto costitutivo etc
set_row(35,"Dati atto costitutivo e statuto"); set_row(36,"");
set_row(37,"Estremi@20g@60s", FLD(LF_ANAGGIU,"ESTROMOL"));
set_row(38,"Omologa@25g@ld@41gData iscrizione@70g@ld",
set_row(row++,"Dati atto costitutivo e statuto");
set_row(row++,"Estremi@20g@60s", FLD(LF_ANAGGIU,"ESTROMOL"));
set_row(row++,"Omologa@25g@ld@41gData iscrizione@70g@ld",
FLD(LF_ANAGGIU,"DATAOMOL"),
FLD(LF_ANAGGIU,"DATAISCRIZ"));
set_row(39,"Data costituzione@25g@ld@41gDurata sino@70g@ld",
set_row(row++,"Data costituzione@25g@ld@41gDurata sino@70g@ld",
FLD(LF_ANAGGIU,"DATACOST"),
FLD(LF_ANAGGIU,"DATASCAD"));
set_row(40,"Termine appr. bilancio@25g@d@41gApprovazione bilancio@70g@d",
TString cod = get_field(LF_ANAGGIU,"COMCOST");
cc = look_com(cod);
set_row(row++,"Luogo costituzione@20g%s %s", (const char*)cod, (const char*)cc.get("DENCOM"));
set_row(row++,"Termine appr. bilancio@25g@d@41gApprovazione bilancio@70g@d",
FLD(LF_ANAGGIU,"DATATAPPBI"),
FLD(LF_ANAGGIU,"DATAAPPBIL"));
set_row(41,"Scad.org.amministrativo@25g@d@41gScadenza collegio "
set_row(row++,"Scad.org.amministrativo@25g@d@41gScadenza collegio "
"sindacale@70g@d",
FLD(LF_ANAGGIU,"DATASORAMM"),
FLD(LF_ANAGGIU,"DATASCSIND"));
// set_row(38,"Fine esercizio@25g@d", FLD(LF_ANAGGIU,"???"));
set_row(43,"");
set_row(44,"@5gCapit.sociale@24gCapit.versato@47g"
FLD(LF_ANAGGIU,"DATASORAMM"), FLD(LF_ANAGGIU,"DATASCSIND"));
set_row(row++,"");
set_row(row++,"@5gCapit.sociale@24gCapit.versato@47g"
"Fatturato@65gN.azioni@74gValore");
set_row(45,"@pn @pn @pn @61g@n @pn",
set_row(row++,"@pn @pn @pn @61g@n @pn",
FLD(LF_ANAGGIU,"CAPSOC","###.###.###.###.###"),
FLD(LF_ANAGGIU,"CAPVER","###.###.###.###.###"),
FLD(LF_ANAGGIU,"FATT","###.###.###.###.###"),
FLD(LF_ANAGGIU,"NAZIONI"),
FLD(LF_ANAGGIU,"VALNOM","###.###.###.###"));
set_row(46,"");
set_row(row++,"");
set_row(47,"Dati Statistici@20gNon residente@61g@f",
set_row(row++,"Dati Statistici@20gNon residente@61g@f",
FLD(LF_ANAG,"SOGGNRES"));
set_row(48,"@20gEventi naturali eccezionali@61g@s",
set_row(row++,"@20gEventi naturali eccezionali@61g@s",
FLD(LF_ANAG,"EVECC"));
set_row(49,"@20gResidente in zone terremotate@61g@f",
set_row(row++,"@20gResidente in zone terremotate@61g@f",
FLD(LF_ANAG,"RESZTERR"));
// *TBI* traduzione natura giuridica
set_row(50,"@20gNatura giuridica@61g@s",
set_row(row++,"@20gNatura giuridica@61g@s",
FLD(LF_ANAGGIU,"NATGIU"));
set_row(51,"@20gStato societa'@51g@20,rt",
set_row(row++,"@20gStato societa'@51g@20,rt",
FLD(LF_ANAGGIU,"STATOSOC"));
set_row(52,"@20gSituazione societa'@51g@20,rt",
set_row(row++,"@20gSituazione societa'@51g@20,rt",
FLD(LF_ANAGGIU,"SITSOC"));
set_row(53,"");
set_row(row++,"");
a = look_tab("%STT",current_cursor()->curr(LF_ANAG).get("CODSTAT1"),"S0");
set_row(54,"@20gSigla stat.1 @7s %-50s",
set_row(row++,"@20gSigla stat.1 @7s %-50s",
FLD(LF_ANAG,"CODSTAT1"), (const char*)a);
a = look_tab("%STT",current_cursor()->curr(LF_ANAG).get("CODSTAT2"),"S0");
set_row(55,"@20gSigla stat.2 @7s %-50s",
set_row(row++,"@20gSigla stat.2 @7s %-50s",
FLD(LF_ANAG,"CODSTAT2"), (const char*)a);
a = look_tab("%STT",current_cursor()->curr(LF_ANAG).get("CODSTAT3"),"S0");
set_row(56,"@20gSigla stat.3 @7s %-50s",
set_row(row++,"@20gSigla stat.3 @7s %-50s",
FLD(LF_ANAG,"CODSTAT3"), (const char*)a);
// NOTE
set_row(57,"");
set_row(58,"Note");
set_row(59,"@6g@70s",FLD(LF_ANAGGIU,"NOTE1"));
set_row(60,"@6g@70s",FLD(LF_ANAGGIU,"NOTE2"));
set_row(61,"@6g@70s",FLD(LF_ANAGGIU,"NOTE3"));
set_row(62,"@6g@70s",FLD(LF_ANAGGIU,"NOTE4"));
set_row(63,"@6g@70s",FLD(LF_ANAGGIU,"NOTE5"));
set_row(row++,"Note");
set_row(row++,"@6g@70s",FLD(LF_ANAGGIU,"NOTE1"));
set_row(row++,"@6g@70s",FLD(LF_ANAGGIU,"NOTE2"));
set_row(row++,"@6g@70s",FLD(LF_ANAGGIU,"NOTE3"));
set_row(row++,"@6g@70s",FLD(LF_ANAGGIU,"NOTE4"));
set_row(row++,"@6g@70s",FLD(LF_ANAGGIU,"NOTE5"));
row++;
set_row(row++,"Aggiornato il@20g@s", FLD(LF_ANAG, "DATAAGG"));
const int l = printer().rows();
for (int i = 64; i <= l; i++)
@ -215,47 +220,52 @@ void TAnaprint_app::set_scheda_anafis()
// always at top level
TString zio = current_cursor()->curr(LF_ANAG).get("RAGSOC");
_bk_ana = set_bookmark(zio);
set_row(1,"SCHEDA PERSONA FISICA");
set_row(2,"");
set_row(3,"@bCodice @r@u@pn@20g@r@bCognome @r@u@S",
int row = 1;
set_row(row++,"SCHEDA PERSONA FISICA");
set_row(row++,"");
set_row(row++,"@bCodice @r@u@pn@20g@r@bCognome @r@u@S",
FLD(LF_ANAG,"CODANAGR","@@@@@"),
FLD(LF_ANAG,"RAGSOC",0,29));
set_row(4,"@20g@bNome @r@u@s",
set_row(row++,"@20g@bNome @r@u@s",
FLD(LF_ANAG,"RAGSOC",30,50));
set_row(5,"");
set_row(6,"Codice Fiscale@20g@s@46gPartita IVA @s",
FLD(LF_ANAG,"COFI"),
FLD(LF_ANAG,"PAIV"));
set_row(7,"Data di nascita@20g@ld@32g@t@46gNazionalita' @s",
FLD(LF_ANAGFIS,"DATANASC"),
FLD(LF_ANAGFIS,"SESSO"),
FLD(LF_ANAGFIS,"NAZION"));
set_row(8,"");
set_row(9,"Residenza@20gIndirizzo @s N. @s",
FLD(LF_ANAG,"INDRES"),
FLD(LF_ANAG,"CIVRES"));
set_row(row++,"");
set_row(row++,"Codice Fiscale@20g@s@46gPartita IVA @s",
FLD(LF_ANAG,"COFI"), FLD(LF_ANAG,"PAIV"));
set_row(row++,"Cod. Fisc. estero@20g@s", FLD(LF_ANAG,"COFIEST"));
set_row(row++,"Data di nascita@20g@ld@32g@t@46gNazionalita' @s",
FLD(LF_ANAGFIS,"DATANASC"), FLD(LF_ANAGFIS,"SESSO"), FLD(LF_ANAGFIS,"NAZION"));
TString com = current_cursor()->curr(LF_ANAG).get("COMRES");
TString com = get_field(LF_ANAGFIS, "COMNASC");
TRectype& cc = look_com(com);
TString a = cc.get("DENCOM");
TString b = cc.get("CAPCOM");
TString b; // CAPCOM
TString c = cc.get("PROVCOM");
set_row(10,"@20gComune %s@53gProvincia %s@68gCAP %s",
(const char*)a,
(const char*)c,
(const char*)b
);
set_row(row++,"@20gComune %s %s@58gProv. %s",
(const char*)com, (const char*)a, (const char*)c);
set_row(11,"@20gTelefono @u@s@r/@u@s@r",
FLD(LF_ANAG,"PTELRF"),
FLD(LF_ANAG,"TELRF"));
set_row(12,"");
set_row(13,"Domicilio fiscale@20gIndirizzo @s N. @s",
FLD(LF_ANAG,"INDRF"),
FLD(LF_ANAG,"CIVRF"));
row++;
set_row(row++,"Residenza@20gIndirizzo @s N. @s",
FLD(LF_ANAG,"INDRES"), FLD(LF_ANAG,"CIVRES"));
com = current_cursor()->curr(LF_ANAG).get("COMRES");
cc = look_com(com);
a = cc.get("DENCOM");
b = cc.get("CAPCOM");
c = cc.get("PROVCOM");
set_row(row++,"@20gComune %s %s@58gProv. %s@68gCAP %s",
(const char*)com, (const char*)a, (const char*)c, (const char*)b);
set_row(row++,"@20gTelefono @u@s@r/@u@s@r",
FLD(LF_ANAG,"PTELRF"), FLD(LF_ANAG,"TELRF"));
set_row(row++,"@20gVariata residenza @f@53gData variazione @s",
FLD(LF_ANAG,"VARSLORES"), FLD(LF_ANAG,"DVARSLORES"));
row++;
set_row(row++,"Domicilio fiscale@20gIndirizzo @s N. @s",
FLD(LF_ANAG,"INDRF"), FLD(LF_ANAG,"CIVRF"));
com = current_cursor()->curr(LF_ANAG).get("COMRF");
cc = look_com(com);
@ -263,45 +273,47 @@ void TAnaprint_app::set_scheda_anafis()
b = cc.get("CAPCOM");
c = cc.get("PROVCOM");
set_row(14,"@20gComune %s@53gProvincia %s@68gCAP %s",
(const char*)a,
(const char*)c,
(const char*)b
);
set_row(15,"");
set_row(16,"Corrispondenza@20gIndirizzo @s N. @s @s",
FLD(LF_ANAG,"INDCORR"),
FLD(LF_ANAG,"CIVCORR"),
FLD(LF_ANAG, "LOCCORR"));
set_row(row++,"@20gComune %s %s@58gProv. %s@68gCAP %s",
(const char*)com, (const char*)a, (const char*)c, (const char*)b);
TString flag;
const int partic = atoi(get_field(LF_ANAGFIS, "CPARTRF"));
switch(partic)
{
case 2:flag = "Residente all'estero"; break;
case 3:flag = "Provvedimenti amministrativi"; break;
case 4:flag = "Variata da meno di 60 giorni"; break;
default:flag = "Nessuno"; break;
};
set_row(row++,"@20gCasi particolari: %s", (const char*)flag);
set_row(row++,"@20gDomicilio fiscale diverso da sede legale @f",
FLD(LF_ANAG,"RFDIVERSA"));
set_row(row++, "");
set_row(row++,"Corrispondenza@20gIndirizzo @s N. @s @s",
FLD(LF_ANAG,"INDCORR"), FLD(LF_ANAG,"CIVCORR"), FLD(LF_ANAG, "LOCCORR"));
com = current_cursor()->curr(LF_ANAG).get("COMCORR");
cc = look_com(com);
a = cc.get("DENCOM");
b = cc.get("CAPCOM");
c = cc.get("PROVCOM");
set_row(17,"@20gComune %s@53gProvincia %s@68gCAP %s",
(const char*)a,
(const char*)c,
(const char*)b
);
set_row(row++,"@20gComune %s %s@58gProv. %s@68gCAP %s",
(const char*)com, (const char*)a, (const char*)c, (const char*)b);
com = current_cursor()->curr(LF_ANAG).get("STATOCORR");
if (com.empty())
a = "Italia";
else { a = look_tab("%STA",com,"S0"); }
set_row(18,"@20gStato %s",(const char*)a);
set_row(19,"");
set_row(20,"Telex@20g@u@s@r/@u@s@r",
FLD(LF_ANAG,"PTLEXRF"),
FLD(LF_ANAG,"TLEXRFX"));
set_row(21,"Telefax@20g@u@s@r/@u@s@r",
FLD(LF_ANAG,"PFAXRF"),
FLD(LF_ANAG,"FAXRF"));
set_row(22,"");
set_row(23,"Ufficio imposte@20gNumero @pn",
a = com.empty() ? "Italia" : look_tab("%STA",com,"S0");
set_row(row++,"@20gStato %s",(const char*)a);
row++;
set_row(row++,"Telex@20g@u@s@r/@u@s@r",
FLD(LF_ANAG,"PTLEXRF"), FLD(LF_ANAG,"TLEXRFX"));
set_row(row++,"Telefax@20g@u@s@r/@u@s@r",
FLD(LF_ANAG,"PFAXRF"), FLD(LF_ANAG,"FAXRF"));
set_row(row++,"Posta elettronica@20g@s",FLD(LF_ANAG,"MAIL"));
set_row(row++,"");
set_row(row++,"Ufficio imposte@20gNumero @pn",
FLD(LF_ANAG,"UFFIIDD","@@@"));
com = current_cursor()->curr(LF_ANAG).get("UFFIIDD");
@ -311,17 +323,15 @@ void TAnaprint_app::set_scheda_anafis()
a = cc.get("DENCOM");
b = cc.get("PROVCOM");
set_row(24,"@20gComune %s@53gProvincia %s",
(const char*)a,
(const char*)b);
set_row(25,"");
set_row(26,"Esattoria@20gC/C n. %s",(const char*)c);
set_row(27,"@20gComune %s@53gProvincia %s",
(const char*)a,
(const char*)b);
set_row(28,"@20gCodice contribuente @s",
set_row(row++,"@20gComune %s@58gProv. %s",
(const char*)a, (const char*)b);
set_row(row++,"");
set_row(row++,"Esattoria@20gC/C n. %s",(const char*)c);
set_row(row++,"@20gComune %s@58gProv. %s",
(const char*)a, (const char*)b);
set_row(row++,"@20gCodice contribuente @s",
FLD(LF_ANAG,"CODCONTR"));
set_row(29,"");
set_row(row++,"");
// cerca coniuge
com = current_cursor()->curr(LF_ANAGFIS).get("CODCONIUGE");
@ -329,36 +339,38 @@ void TAnaprint_app::set_scheda_anafis()
TRecnotype last = af.recno();
int k = af.getkey();
if (!com.empty())
if (com.not_empty())
{
af.curr().zero();
af.setkey(1);
af.put("CODANAGR",com);
af.put("TIPOA","F");
af.put("CODANAGR",com);
af.read();
}
a = af.get("RAGSOC");
if (!com.empty())
if (com.not_empty())
{
af.setkey(k);
af.readat(last);
b = a.sub(30); a = a.left(20);
b = a.sub(30); a.cut(30);
}
else { a = ""; b = ""; }
else
a = b = "";
set_row(30,"Coniuge @pn@20gCognome %s",
set_row(row++,"Coniuge @pn@20gCognome %s",
FLD(LF_ANAGFIS,"CODCONIUGE","@@@@@"),
(const char*)a);
set_row(31,"@20gNome %s", (const char*)b);
set_row(row++,"@20gNome %s", (const char*)b);
set_row(row++,"");
TString16 tipo_stampa;
const int tipo = current_cursor()->curr(LF_ANAG).get_int("TIPOSTDEL");
if (tipo == 0) tipo_stampa = "Delega";
else if (tipo == 1) tipo_stampa = "Bollettino";
else tipo_stampa = "Distinta";
set_row(33,"Dati conto fiscale @20gTitolare conto fiscale @54g@f @60gTipo stampa %s",
set_row(row++,"Dati conto fiscale @20gTitolare conto fiscale @54g@f @60gTipo stampa %s",
FLD(LF_ANAG,"TITCF"), (const char*) tipo_stampa);
set_row(34,"@20gCodice ABI @pn @60gCAB @pn",
set_row(row++,"@20gCodice ABI @pn @60gCAB @pn",
FLD(LF_ANAG,"CODABI","@@@@@"), FLD(LF_ANAG,"CODCAB","@@@@@"));
tipo_stampa = current_cursor()->curr(LF_ANAG).get("UFFCONC");
if (tipo_stampa.empty())
@ -373,35 +385,38 @@ void TAnaprint_app::set_scheda_anafis()
tipo_stampa = cc.get("UFFCONC");
}
}
set_row(35,"@20gConto fiscale %s @s",
set_row(row++,"@20gConto fiscale %s @s",
(const char*)tipo_stampa, FLD(LF_ANAG,"COFI"));
set_row(37,"Dati Statistici@20gNon residente@53g@f",
set_row(row++,"");
set_row(row++,"Dati Statistici@20gNon residente@53g@f",
FLD(LF_ANAG,"SOGGNRES"));
set_row(38,"@20gEventi naturali eccezionali@53g@s",
set_row(row++,"@20gEventi naturali eccezionali@53g@s",
FLD(LF_ANAG,"EVECC"));
set_row(39,"@20gResidente in zone terremotate@53g@f",
set_row(row++,"@20gResidente in zone terremotate@53g@f",
FLD(LF_ANAG,"RESZTERR"));
set_row(40,"@20gStato civile@53g@t",
set_row(row++,"@20gStato civile@53g@t",
FLD(LF_ANAGFIS,"STATCIV"));
set_row(41,"@20gData variazione stato civile@53g@D",
set_row(row++,"@20gData variazione stato civile@53g@D",
FLD(LF_ANAGFIS,"DVARSCIV"));
set_row(42,"@20gTitolo di studio@53g@t",
set_row(row++,"@20gTitolo di studio@53g@t",
FLD(LF_ANAGFIS,"TITSTU"));
// set_row(37,"@20gProvincia lavoro dipendente@61g@s");
set_row(43,""); set_row(44,""); set_row(45,""); set_row(46,"");
row ++;
a = look_tab("%STT",
current_cursor()->curr(LF_ANAG).get("CODSTAT1"),"S0");
set_row(47,"@20gSigla stat.1 @7s %s",
set_row(row++,"@20gSigla stat.1 @7s %s",
FLD(LF_ANAG,"CODSTAT1"), (const char*)a);
a = look_tab("%STT",current_cursor()->curr(LF_ANAG).get("CODSTAT2"),"S0");
set_row(48,"@20gSigla stat.2 @7s %s",
set_row(row++,"@20gSigla stat.2 @7s %s",
FLD(LF_ANAG,"CODSTAT2"), (const char*)a);
a = look_tab("%STT",current_cursor()->curr(LF_ANAG).get("CODSTAT3"),"S0");
set_row(49,"@20gSigla stat.3 @7s %s",
set_row(row++,"@20gSigla stat.3 @7s %s",
FLD(LF_ANAG,"CODSTAT3"), (const char*)a);
set_row(row++,"");
set_row(row++,"Aggiornato il@20g@s", FLD(LF_ANAG, "DATAAGG"));
const int l = printer().rows();
for (int i = 50; i <= l; i++)
set_row(i, "");
@ -469,19 +484,31 @@ void TAnaprint_app::set_scheda_ditta()
set_row(14,"@20gNumero unita' locali @n@54gNum.enasarco @s",
FLD(LF_NDITTE,"NULC"),
FLD(LF_NDITTE,"NENASARCO"));
set_row(15,"");
/* TBI: banca di appoggio */
set_row(16,"Stato@20g@t",FLD(LF_NDITTE,"STATOSOC"));
set_row(17,""); set_row(18,"");
set_row(15,"Banca di appoggio");
TString16 abicab = get_field(LF_NDITTE, "ABIBAN");
if (abicab.not_empty() && abicab != "00000")
{
set_row(15,"@20gABI %s@40g%s", (const char*)abicab, look_tab("%BAN", abicab));
const TString16 cab = get_field(LF_NDITTE, "CABBAN");
if (cab.not_empty() && cab != "00000")
{
abicab << cab;
set_row(16,"@20gCAB %s@40g%s",
(const char*)cab, look_tab("%BAN", abicab));
}
}
set_row(17,"Stato@20g@t",FLD(LF_NDITTE,"STATOSOC"));
set_row(18,"");
}
void TAnaprint_app::set_scheda_attiv()
{
TString dio(current_cursor()->curr(LF_ATTIV).get("DESCR"));
_bk_attiv = set_bookmark(dio, _bk_ditta);
const TString descr(current_cursor()->curr(LF_ATTIV).get("DESCR"));
_bk_attiv = set_bookmark(descr, _bk_ditta);
set_row(1,"@bATTIVITA'@r @s@20g@bDescrizione:@r %s",
FLD(LF_ATTIV,"CODATT","@@@@@"), (const char*)dio);
FLD(LF_ATTIV,"CODATT","@@@@@"), (const char*)descr);
set_row(2,"@20gRegime agricolo@67g@f",
FLD(LF_ATTIV,"REGAGR"));
@ -491,8 +518,8 @@ void TAnaprint_app::set_scheda_attiv()
FLD(LF_ATTIV,"ATTSTAG"));
set_row(5,"@20gAttivita' esercitata in piu' luoghi@67g@f",
FLD(LF_ATTIV,"ESLUOGHID"));
set_row(6,"@20gData inizio attivita'@60g@D",
FLD(LF_NDITTE,"DINIZIOATT"));
set_row(6,"@20gData inizio attivita'@60g@D",
FLD(LF_ATTIV,"DATAISCIVA"));
set_row(7,"@20gData variazione attivita'@60g@D",
FLD(LF_ATTIV,"DATAVARIVA"));
set_row(8,"@20gData cessazione attivita'@60g@D",
@ -534,7 +561,7 @@ void TAnaprint_app::set_scheda_attiv()
(const char*)b);
set_row(11,"@20gIndirizzo %s N. %s", (const char*)com, (const char*)z);
a = exists ? cm.get("DENCOM") : ""; b = exists ? cm.get("PROVCOM") : ""; c = exists ? cm.get("CAPCOM") : "";
set_row(12,"@20gComune %s@53gProvincia %s@68gC.a.p. %s",
set_row(12,"@20gComune %s@58gProv. %s@68gC.a.p. %s",
(const char*)a, (const char*)b, (const char*)c);
set_row(13,"@20gTenuta scritture parziali@68g@f",
FLD(LF_ATTIV,"TSCRPARZ"));
@ -543,7 +570,7 @@ void TAnaprint_app::set_scheda_attiv()
FLD(LF_ATTIV,"CIVCS"));
cm = look_com(get_field(LF_ATTIV,"COMCS"));
a = cm.get("DENCOM"); b = cm.get("PROVCOM"); c = cm.get("CAPCOM");
set_row(15,"@20gComune %s@53gProvincia %s@68gC.a.p. %s",
set_row(15,"@20gComune %s@58gProv. %s@68gC.a.p. %s",
(const char*)a, (const char*)b, (const char*)c);
set_row(16,"@20gTelefono @s/@s", FLD(LF_ATTIV,"PTELCS"), FLD(LF_ATTIV,"TELCS"));
@ -571,7 +598,7 @@ void TAnaprint_app::set_scheda_unloc()
TString a = cc.get("DENCOM");
TString b = cc.get("PROVCOM");
TString c = cc.get("CAPCOM");
set_row(3,"@20g@bComune@r@4j@u%s@r@53g@bProvincia@r @u%s@r@68g@b"
set_row(3,"@20g@bComune@r@4j@u%s@r@58g@bProv.@r @u%s@r@68g@b"
"C.a.p.@r @u%s",
(const char*)a, (const char*)b, (const char*)c);
set_row(4,"");
@ -579,9 +606,7 @@ void TAnaprint_app::set_scheda_unloc()
FLD(LF_UNLOC,"NUMCCIAA","@@@@@@@"));
cc = look_com(get_field(LF_UNLOC,"COMCCIAA"));
a = cc.get("DENCOM");
set_row(6,"@20gComune@30g%s@53gN. Meccanografico @n",
(const char*)a,
FLD(LF_UNLOC,"NUMMECC"));
set_row(6,"@20gComune@30g%s", (const char*)a);
set_row(7,"@20gData iscrizione @D@48gData ultima variazione @D",
FLD(LF_UNLOC,"DATAICCIAA"),
FLD(LF_UNLOC,"DATAVCCIAA"));
@ -597,16 +622,24 @@ void TAnaprint_app::set_scheda_unloc()
FLD(LF_UNLOC,"POSINPS"),
FLD(LF_UNLOC,"POSINAIL"));
set_row(12,"");
set_row(13,"Tribunale@20gRegistro@30g@pn@44gVolume@52g@pn@64gFascicolo @pn",
FLD(LF_UNLOC,"REGTRIB","@@@@@@@@@"),
FLD(LF_UNLOC,"VOLTRIB","@@@@@@@"),
FLD(LF_UNLOC,"FASCTRIB","@@@@@"));
set_row(14,"");
set_row(15,"Locali destinati");
set_row(16,"all'attivita'@20gMq.Locali @pn Di cui a magazzino @pn",
set_row(13, "Numero Registro Imprese@30g@pn",
FLD(LF_UNLOC, "REGIMP", "@@ @@@ @@@@ @@@@@@@@@ @"));
zio = get_field(LF_UNLOC,"COMTRIB");
cc = look_com(zio);
a = cc.get("DENCOM");
b = cc.get("PROVCOM");
c = get_field(LF_UNLOC, "CAPTRIB");
if (c.empty()) c = cc.get("CAPCOM");
set_row(14,"Comune tribunale@20g%s %s@58gProv. %s@68gC.a.p. %s",
(const char*)zio, (const char*)a, (const char*)b, (const char*)c);
set_row(15,"");
set_row(16,"Locali destinati");
set_row(17,"all'attivita'@20gMq.Locali @pn Di cui a magazzino @pn",
FLD(LF_UNLOC,"MQULC","@@@@@"),
FLD(LF_UNLOC,"MQULCMAG","@@@@@"));
set_row(17,""); set_row(18,"");
set_row(18,"");
}
void TAnaprint_app::set_scheda_socio()
@ -677,21 +710,14 @@ void TAnaprint_app::set_scheda_socio()
b1 = anaf->get_date("DATANASC").string(full);
b2 = anaf->get("SESSO");
/* b3 = anaf->get("STATONASC").empty() ?
"Italiana" : anaf->get("STATONASC");
*/
// set_row(4,"Nascita@20gData@30g%S@42gSesso %S@53gCittadinanza %S",
set_row(5,"Nascita@20gData@30g%S@42gSesso %S",
(const char*)b1,
(const char*)b2);
// (const char*)b3);
(const char*)b1, (const char*)b2);
b1 = com.get("DENCOM");
b2 = com.get("PROVCOM");
set_row(6,"@20gComune@30g%S@53gProvincia %S",
(const char*)b1,
(const char*)b2);
set_row(6,"@20gComune@30g%S@58gProv. %S",
(const char*)b1, (const char*)b2);
rw = 7;
codconiuge = "Cod.coniuge ";
@ -722,7 +748,7 @@ void TAnaprint_app::set_scheda_socio()
b3 = com.get("CAPCOM");
set_row(rw+1,"Residenza@20gIndirizzo %S", (const char*)indres);
set_row(rw+2,"@20gComune %S@53gProvincia %S@68gC.a.p. %S",
set_row(rw+2,"@20gComune %S@58gProv. %S@68gC.a.p. %S",
(const char*)b1,
(const char*)b2,
(const char*)b3);