Patch level : 10.0 750

Files correlati     : tc1.exe
Ricompilazione Demo : [ ]
Commento

Aggiunta le macro_CONTOC e _SEZIONEC per trasferire i conti di felice dania.
In Zucchetti il sottoconto e' univoco e fatto di conto piu' sottoconto.
La macro simula questo fatto visto che non e' stato codificato cosi' (il commercialista ha conto+ sottoconto)
Questa macro non va usata per altri clienti, visto che se si vuole usare il pdc di zucchetti bisogna codificarlo conto piu' sottoconto, altrimenti si deve riclassificare.


git-svn-id: svn://10.65.10.50/trunk@20502 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
alex 2010-05-26 10:01:30 +00:00
parent c5eb4ca419
commit 6761fd473e

View File

@ -68,7 +68,7 @@ protected:
virtual void validate(TCursor& cur,TRecord_text &rec, TToken_string &val, TString& str);
public:
const TString& bill2ricl(const char t, int gr, int co, long so);
const TString& bill2ricl(const char t, int gr, int co, long so, bool completo);
TInvio_file(const TString& file_name);
virtual ~TInvio_file() { }
};
@ -202,14 +202,19 @@ void TInvio::log(int sev, const char* msg)
}
const TString& TInvio_file::bill2ricl(const char t, int gr, int co, long so)
const TString& TInvio_file::bill2ricl(const char t, int gr, int co, long so, bool completo)
{
TString & codricl = get_tmp_string();
if (gr > 0&& co >0 && so > 0)
{
if (!app().trcon())
codricl.format("%d",so);
{
if (completo && t <= ' ')
codricl.format("%02d%03d", co, so);
else
codricl.format("%05d",so);
}
else
{
TToken_string cod("ZUCONTI");
@ -263,11 +268,12 @@ void TInvio_file::validate(TCursor& cur,TRecord_text &rec, TToken_string &s, TSt
int mese = data.month();
valore.format("%ld", mese);
}
else if (code == "_SEZIONE")
else if (code.starts_with("_SEZIONE"))
{
const TRectype & rmov = cur.curr(LF_RMOV);
const char sezione = s.get()[0];
const char sezriga = rmov.get_char(RMV_SEZIONE);
const bool completo = code.starts_with("_SEZIONEC");
valore = str;
if (sezione != sezriga)
@ -278,7 +284,7 @@ void TInvio_file::validate(TCursor& cur,TRecord_text &rec, TToken_string &s, TSt
const int co = rmov.get_int(RMV_CONTO);
const long so = rmov.get_long(RMV_SOTTOCONTO);
const char t = rmov.get_char(RMV_TIPOC);
valore = bill2ricl(t, gr, co, so);
valore = bill2ricl(t, gr, co, so, completo);
}
}
else if (code == "_CAUSALE")
@ -435,12 +441,13 @@ void TInvio_file::validate(TCursor& cur,TRecord_text &rec, TToken_string &s, TSt
const bool sospeso = cur.curr(LF_CLIFO).get_bool(CLI_SOSPESO);
valore = (sospeso == true) ? "S" : " ";
}
else if (code == "_CONTO")
else if (code.starts_with("_CONTO"))
{
const int ln = s.get_int();
const TRectype & rec = cur.curr(ln);
char t = ' ';
const TString& tiponame = s.get();
const bool completo = code.starts_with("_CONTOC");
if (tiponame.full())
t = rec.get_char(tiponame);
@ -451,7 +458,7 @@ void TInvio_file::validate(TCursor& cur,TRecord_text &rec, TToken_string &s, TSt
const int co = rec.get_int(CLI_CONTORIC);
const long so = rec.get_long(CLI_SOTTOCRIC);
valore = bill2ricl(t, gr, co, so);
valore = bill2ricl(t, gr, co, so, completo);
}
else
{
@ -459,7 +466,7 @@ void TInvio_file::validate(TCursor& cur,TRecord_text &rec, TToken_string &s, TSt
const int co = rec.get_int("CONTO");
const long so = rec.get_long("SOTTOCONTO");
valore = bill2ricl(t, gr, co, so);
valore = bill2ricl(t, gr, co, so, completo);
}
}
@ -515,7 +522,7 @@ void TInvio_file::validate(TCursor& cur,TRecord_text &rec, TToken_string &s, TSt
const int co = rmov.get_int(RMV_CONTO);
const long so = rmov.get_long(RMV_SOTTOCONTO);
const TString codcf = bill2ricl(t, gr, co, so);
const TString codcf = bill2ricl(t, gr, co, so, false);
add_field(rec, fldcodcf, codcf);
}
}