Correzione MI3262, relativo allo spostamento in parametri liquidazione

della gestione liquidazione differita. Ora non e' piu' un parametro di
ditta ma un parametro annuale memorizzato in LIA->B1.


git-svn-id: svn://10.65.10.50/trunk@4021 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
angelo 1996-12-19 09:21:13 +00:00
parent 1d2aee1c2d
commit 6b05513677
10 changed files with 81 additions and 52 deletions

View File

@ -460,6 +460,12 @@ public:
void add_plafond (int month, const char* codatt, int type,
real& howmuch, bool intra);
// Ritorna il parametro della liquidazione differita per la ditta corrente, cosi come
// e' scritto sui parametri liquidazione (LIA)
// Se si passa 0 (default) vede prende la ditta correntemente in corso di calcolo
// Analogamente per l'anno
bool TLiquidazione_app::is_differita(long firm = 0, int year = 0);
// ritorna l'aliquota ordinaria dal
// codice IVA apposito immesso nei parametri studio
real aliquota_agvia();

View File

@ -758,6 +758,20 @@ real TLiquidazione_app::versamenti_IVA(int month, const char* types, bool intr)
return ret;
}
// Ritorna il parametro della liquidazione differita per la ditta corrente, cosi come
// e' scritto sui parametri liquidazione (LIA)
// Se si passa 0 (default) vede prende la ditta correntemente in corso di calcolo
// Analogamente per l'anno
bool TLiquidazione_app::is_differita(long firm, int year)
{
long d = (firm == 0) ? _nditte->lfile().get_long("CODDITTA") : firm;
int y = (year == 0) ? atoi(_year) : year;
if (look_lia(d,atoi(_year)))
return _lia->get_bool("B1");
else
return FALSE;
}
real TLiquidazione_app::aliquota_agvia()
{
TConfig cnf(CONFIG_STUDIO);

View File

@ -456,10 +456,12 @@ bool TLiquidazione_app::recalc_acconto(real& inf, real& ina)
real acq_intr = 0.0;
bool isdifferita = FALSE;
bool error = FALSE;
{
TConfig cnf(CONFIG_DITTA, "cg");
isdifferita = cnf.get_bool("GeLiDi");
}
// MI3262
//{
// TConfig cnf(CONFIG_DITTA, "cg");
// isdifferita = cnf.get_bool("GeLiDi");
//}
isdifferita = is_differita();
TString16 tipo_acc;
// TBI rewrite from scratch

View File

@ -373,7 +373,9 @@ bool LiqAcc_app::video_vis()
return FALSE;
TConfig cnf(CONFIG_DITTA, "cg");
bool liqdiff = cnf.get_bool("GeLiDi");
// MI3262..
bool liqdiff = lia.get_bool("B1");//= cnf.get_bool("GeLiDi");
_tipo_acc = lia.get("S8");
TString16 freqviva = lia.get("S7");
TInteressi_IVA_table ver;

View File

@ -174,29 +174,9 @@ bool TParametri_ditta::postprocess_config(TMask& mask, TConfig& config)
{
check_registers(mask.get_int(FLD_ANLIIV));
mask.field(FLD_ANLIIV).set_dirty(mask.get_int(FLD_ANLIIV) != config.get_int("AnLiIv"));
if (mask.get_bool(CHK_GELIDI))
{
TLocalisamfile ditte(LF_NDITTE);
const long ditta = get_firm();
ditte.put("CODDITTA", ditta);
ditte.read();
if (ditte.get("DINIZIOATT").empty())
error_box("La gestione della liquidazione differita richiede "
"la data di inizio attivita' sull'anagrafica della ditta.");
char freqiva = ditte.get_char("FREQVIVA");
TString16 key; key.format("%05ld%d", ditta, mask.get_int(FLD_ANLIIV));
TTable lia("%LIA");
lia.put("CODTAB", key);
if (lia.read() == NOERR)
freqiva = lia.get_char("S7");
if (freqiva != 'M')
error_box("La gestione della liquidazione differita richiede "
"la frequenza dei versamenti IVA mensile.");
}
// MI3262
// La gestione liquidazione differita e' stata spostata sui parametri liquidazione
// ovvero cg5300.cpp
return TRUE;
}

View File

@ -12,7 +12,6 @@
#define CHK_GESVAL 111
#define FLD_CODLIN 112
#define FLD_CRIVAP 113
#define CHK_GELIDI 114
#define FLD_COCACH 115
#define FLD_COCAAP 116
#define FLD_CSBICHS 117

View File

@ -50,14 +50,14 @@ BEGIN
END
GROUPBOX DLG_NULL 76 8
GROUPBOX DLG_NULL 76 7
BEGIN
PROMPT 2 5 "Parametri contabilita'"
END
GROUPBOX DLG_NULL 76 6
BEGIN
PROMPT 2 13 "Parametri saldaconto"
PROMPT 2 12 "Parametri saldaconto"
END
BOOLEAN CHK_GSLBCN
@ -81,30 +81,23 @@ BEGIN
FIELD StLgiU
END
BOOLEAN CHK_GELIDI
BEGIN
PROMPT 4 9 "Gestione liquidazione differita"
HELP "Indicare se effettuare la liq. diff. ex DL 151 del 13-5-91 convertito da L. 202"
FIELD GeLiDi
END
BOOLEAN CHK_GESVEN
BEGIN
PROMPT 4 10 "Gestione vendite"
PROMPT 4 9 "Gestione vendite"
HELP "Indicare se e' attivata anche la gestione delle vendite"
FIELD GesVen
END
BOOLEAN CHK_GEST74
BEGIN
PROMPT 4 11 "Gestione versamenti 4.tr per soggetti art. 74/4"
PROMPT 4 10 "Gestione versamenti 4.tr per soggetti art. 74/4"
HELP "Indicare se si deve gestire il versamento del 4. trimestre per benzinai e autotrasportatori"
FIELD GesT74
END
BOOLEAN CHK_GESSAL
BEGIN
PROMPT 4 14 "Gestione saldaconto "
PROMPT 4 13 "Gestione saldaconto "
HELP "Indicare se attivare la gestione del saldaconto clienti/fornitori"
MESSAGE TRUE ENABLE,CHK_GESVAL
MESSAGE TRUE ENABLE,CHK_NRCLIDX
@ -124,7 +117,7 @@ END
BOOLEAN CHK_GESVAL
BEGIN
PROMPT 48 14 "Gestione Valuta"
PROMPT 48 13 "Gestione Valuta"
HELP "Indicare se gestire i movimenti prima nota in valuta"
FIELD GesVal
GROUP GROUP_SALDACONTO
@ -132,7 +125,7 @@ END
BOOLEAN CHK_NRCLIDX
BEGIN
PROMPT 4 15 "N. Rif. allineato a destra per clienti"
PROMPT 4 14 "N. Rif. allineato a destra per clienti"
HELP "Indicare se allineare a destra il num. di rif. delle partite nel saldaconto"
FIELD NrCliDx
GROUP GROUP_SALDACONTO
@ -140,7 +133,7 @@ END
BOOLEAN CHK_NRFORDX
BEGIN
PROMPT 48 15 "e per fornitori"
PROMPT 48 14 "e per fornitori"
HELP "Indicare se allineare a destra il num. di rif. delle partite nel saldaconto"
FIELD NrForDx
GROUP GROUP_SALDACONTO
@ -148,7 +141,7 @@ END
BOOLEAN CHK_DTCFPG
BEGIN
PROMPT 4 16 "Dettaglio riga C/F sui pagamenti"
PROMPT 4 15 "Dettaglio riga C/F sui pagamenti"
HELP "Indicare se si desidera il dettaglio riga clienti/fornitori in gestione pagamenti"
FIELD DtCfPg
GROUP GROUP_SALDACONTO
@ -156,7 +149,7 @@ END
BOOLEAN CHK_RIFPRO
BEGIN
PROMPT 4 17 "Riferimento partita con numero protocollo"
PROMPT 4 16 "Riferimento partita con numero protocollo"
HELP "Indicare se si desidera il numero protocollo IVA anziche' il numero documento come riferimento partita"
FIELD RifPro
GROUP GROUP_SALDACONTO
@ -164,7 +157,7 @@ END
STRING FLD_CODLIN 1
BEGIN
PROMPT 50 17 "Codice lingua "
PROMPT 50 16 "Codice lingua "
HELP "Lingua di riferimento per rendiconti contabili"
FIELD CodLin
USE %LNG

View File

@ -28,6 +28,7 @@ class TParaliq_app : public TRelation_application
protected: // Applicat
virtual void on_config_change();
static bool gelidi_handler(TMask_field& f, KEY k);
protected: // Relapp
virtual bool user_create();
@ -59,6 +60,30 @@ public:
virtual ~TParaliq_app() {}
};
inline TParaliq_app& app() { return (TParaliq_app&) main_app(); }
bool TParaliq_app::gelidi_handler(TMask_field& f, KEY k)
{
if (k==K_ENTER)
{
TLocalisamfile* ditte = app()._ditte;
TMask& m = f.mask();
if (m.get_bool(F_GELIDI))
{
const long ditta = m.get_long(F_CODDITTA);
ditte->put("CODDITTA", ditta);
if (ditte->read()==NOERR)
if (ditte->get("DINIZIOATT").empty())
{
f.set(" ");
f.error_box("La gestione della liquidazione differita richiede "
"la data di inizio attivita' sull'anagrafica della ditta.");
}
}
}
return TRUE;
}
void TParaliq_app::check_registers(int year)
{
@ -161,6 +186,7 @@ bool TParaliq_app::user_create()
_ditte = new TLocalisamfile(LF_NDITTE);
_msk = new TMask("cg5300a");
_msk->set_handler(F_GELIDI,gelidi_handler);
((TSheet_field&)_msk->field(F_SHEET_PLA)).set_notify(sheet_action);
return TRUE;
}

View File

@ -1,9 +1,10 @@
#define F_YEAR 301
#define F_CRED_PREC 302
#define F_FREQ_VERS 303
#define F_SHEET_PLA 304
#define F_CODDITTA 305
#define F_RAGSOC 306
#define F_GELIDI 304
#define F_SHEET_PLA 305
#define F_CODDITTA 306
#define F_RAGSOC 307
#define F_CRED_COST 308
#define F_CODATT 101
#define F_DESATT 150

View File

@ -66,11 +66,17 @@ LIST F_FREQ_VERS 1 14
BEGIN
PROMPT 4 5 "Frequenza versamenti "
HELP "Indicare la frequenza dei versamenti delle liquidazioni IVA"
ITEM "M|Mensile"
ITEM "T|Trimestrale"
ITEM "M|Mensile" MESSAGE ENABLE,F_GELIDI
ITEM "T|Trimestrale" MESSAGE CLEAR,F_GELIDI
FIELD S7
END
BOOLEAN F_GELIDI
BEGIN
PROMPT 45 5 "Liquidazione differita "
FIELD B1
END
NUMBER F_CRED_PREC 15
BEGIN
PROMPT 4 6 "Credito precedente "