Patch level : 12.0 1032
Files correlati : 770.exe 773100a.msk 771mod.exe 777.exe Commento : Certificazione Unica 2021 Aggiunto parametro di studio per leggere nella generazione la causale quadro dalla causale e non dalla scheda percipiente. Nella generazione separate le schede per causale oltre che per causale quadro. La certificazione mette anche gli importi con tipo 12 e 13 nella altre somme non soggette.
This commit is contained in:
parent
8773bc65e4
commit
15d020a2cb
@ -787,6 +787,13 @@ void TSchedaPercipienti::init_modify_mode(TMask& m)
|
||||
|
||||
// inizilizza maschera
|
||||
init_mask(m, false);
|
||||
if (ini_get_bool(CONFIG_STUDIO, "77", "CauQFCau"))
|
||||
{
|
||||
const TRectype& caus = cache().get("%CA7", m.get(F_CODCAUS));
|
||||
|
||||
build_causqua_items(m, caus.get("S1"));
|
||||
m.set(F_CAUSQUA, caus.get("S2"));
|
||||
}
|
||||
}
|
||||
|
||||
void TSchedaPercipienti::init_insert_mode(TMask& m)
|
||||
@ -796,6 +803,7 @@ void TSchedaPercipienti::init_insert_mode(TMask& m)
|
||||
// La proposta causale è valida con e senza collegamneto da prima nota
|
||||
TToken_string key; key.format("%c|%ld", m.get(F_TIPOA)[0], m.get_long(F_CODANAGR));
|
||||
TString4 codcaus = cache().get(LF_ANAG, key, "CAUSQUA");
|
||||
|
||||
if (codcaus.blank())
|
||||
{
|
||||
key.format("%ld|%c|%ld|%d",
|
||||
|
@ -6,7 +6,7 @@
|
||||
void TSchedaPercipienti::init_mask(TMask& m, bool inserimento)
|
||||
{
|
||||
update_lasts(m);
|
||||
|
||||
m.enable(F_CAUSQUA, !ini_get_bool(CONFIG_STUDIO, "77", "CauQFCau"));
|
||||
// se collegamento
|
||||
if (tipo_coll() != nessuno)
|
||||
{
|
||||
@ -747,6 +747,7 @@ bool TSchedaPercipienti::check_causale(TMask_field& f, KEY k)
|
||||
{
|
||||
// forzo causale quadro con il valore in tabella
|
||||
TEdit_field& f_causqua = m.efield(F_CAUSQUA);
|
||||
|
||||
f_causqua.reset();
|
||||
if (cod_qua == "LA")
|
||||
f_causqua.set(m.get(F_TABCAUSQUASC));
|
||||
|
@ -99,6 +99,7 @@ void TRighe_riepilogo::genera_la(TRectype& quadro, const TRectype& riga, const T
|
||||
quadro.put(QUD_CODCAUS, codcaus);
|
||||
|
||||
real somme = compenso;
|
||||
|
||||
somme -= imponibile;
|
||||
somme += riga.get_real(PAG_SPESA);
|
||||
somme -= riga.get_real(PAG_IMPCPA);
|
||||
@ -108,10 +109,9 @@ void TRighe_riepilogo::genera_la(TRectype& quadro, const TRectype& riga, const T
|
||||
// 26/01/17: Spostato qua questo blocco per aggiungere somme e tenere un filo logico di tutto insieme
|
||||
real ammlordo = imponibile;
|
||||
real snsar = riga.get_real(PAG_SOMNSRIT);
|
||||
|
||||
if (snsar > -0.02 && snsar < 0.02)
|
||||
{
|
||||
snsar = ZERO;
|
||||
}
|
||||
ammlordo += snsar;
|
||||
ammlordo += riga.get_real(PAG_CONTROBB);
|
||||
ammlordo += riga.get_real(PAG_SOMREGCONV);
|
||||
@ -142,6 +142,7 @@ void TRighe_riepilogo::genera_la(TRectype& quadro, const TRectype& riga, const T
|
||||
if (somme.is_zero() && quadro.get(QUD_TOTALE) == quadro.get(QUD_IMPONIBILE))
|
||||
{
|
||||
const TRectype& ca7 = cache().get("%CA7", codcaus);
|
||||
|
||||
if (ca7.get_int("I1") == 3)
|
||||
{
|
||||
quadro.put(QUD_SOMME, quadro.get(QUD_IMPONIBILE));
|
||||
@ -153,14 +154,20 @@ void TRighe_riepilogo::genera_la(TRectype& quadro, const TRectype& riga, const T
|
||||
bool TRighe_riepilogo::add_riga_pag(const TRectype& riga, const TRectype& scheda)
|
||||
{
|
||||
const TString8 codcaus = scheda.get(SPR_CODCAUS);
|
||||
const TString8 causqua = scheda.get(SPR_CAUSQUA);
|
||||
TString8 causqua = scheda.get(SPR_CAUSQUA);
|
||||
|
||||
if (ini_get_bool(CONFIG_STUDIO, "77", "CauQFCau"))
|
||||
causqua = cache().get("%CA7", codcaus, "S2");
|
||||
|
||||
|
||||
// cerca riga compatibile
|
||||
int i = 0;
|
||||
for (i = last(); i >= 0; i--)
|
||||
{
|
||||
const TRectype* rr = (const TRectype*)objptr(i);
|
||||
if (rr->get("CAUSALE") == causqua)
|
||||
|
||||
if (rr->get("CAUSALE") == causqua &&
|
||||
rr->get(QUD_CODCAUS) == codcaus)
|
||||
break;
|
||||
}
|
||||
if (i < 0)
|
||||
|
@ -2,5 +2,6 @@
|
||||
|
||||
#define F_CODCAU1015 101
|
||||
#define F_FSTAMPAQL 102
|
||||
#define F_FSTAMPAQCQD 103
|
||||
#define F_ANNO 104
|
||||
#define F_QUAFROMCAUS 103
|
||||
#define F_FSTAMPAQCQD 104
|
||||
#define F_ANNO 105
|
@ -31,9 +31,15 @@ BEGIN
|
||||
ADD RUN 773mod -3 %ca7
|
||||
END
|
||||
|
||||
BOOLEAN F_QUAFROMCAUS
|
||||
BEGIN
|
||||
PROMPT 3 6 "Nella generazione leggi la causale quadro dalla causale 770"
|
||||
FIELD CauQFCau
|
||||
END
|
||||
|
||||
LIST F_FSTAMPAQL 35
|
||||
BEGIN
|
||||
PROMPT 3 6 "Flag per stampa quadro L "
|
||||
PROMPT 3 8 "Flag per stampa quadro L "
|
||||
ITEM "1|Ordine primario data versamento"
|
||||
ITEM "2|Ordine primario periodo riferimento"
|
||||
FIELD FlStQl
|
||||
@ -42,7 +48,7 @@ END
|
||||
|
||||
LIST F_FSTAMPAQCQD 29
|
||||
BEGIN
|
||||
PROMPT 3 8 "Flag per stampa quadri C/D/D1 "
|
||||
PROMPT 3 10 "Flag per stampa quadri C/D/D1 "
|
||||
ITEM "1|Per codice causale e aliquota"
|
||||
ITEM "2|Per codice tributo e aliquota"
|
||||
FIELD FlStQcQd
|
||||
|
@ -816,9 +816,8 @@ bool TTrasferimentoCU::append_record_h(const TRectype& qla, int modulo, TLog_rep
|
||||
if (perc.estero())
|
||||
rec.np_put("AU001005", qla.get_real("SOMREGCONV"));
|
||||
|
||||
real imponibile = qla.get_real("IMPONIBILE");
|
||||
|
||||
const TString4 codcaus = qla.get("CODCAUS");
|
||||
real imponibile = qla.get_real(QUD_IMPONIBILE);
|
||||
const TString4 codcaus = qla.get(QUD_CODCAUS);
|
||||
long codice = atol(cache().get("%CA7", codcaus, "I1")); // 1, 2, 5, 6, 7 // EDIT 2020: aggiunti 8, 9, 10, 11 // Edit 2021 aggiunti 12,13
|
||||
|
||||
real altre_somme = qla.get_real("SOMME");
|
||||
@ -826,7 +825,8 @@ bool TTrasferimentoCU::append_record_h(const TRectype& qla, int modulo, TLog_rep
|
||||
{
|
||||
altre_somme = ZERO;
|
||||
}
|
||||
if (altre_somme.is_zero() && codice == 7)
|
||||
if (altre_somme.is_zero() &&
|
||||
((codice == 7) || (codice == 12) || (codice == 13)))
|
||||
{
|
||||
altre_somme = imponibile;
|
||||
imponibile = ZERO;
|
||||
|
Loading…
x
Reference in New Issue
Block a user