Supporto per 770 2012

git-svn-id: svn://10.65.10.50/branches/R_10_00@22671 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
guy 2012-06-07 16:00:00 +00:00
parent 7598c0bf5e
commit 599d7fab9b
13 changed files with 107 additions and 52 deletions

View File

@ -2158,10 +2158,10 @@ Pag_struct& TSchedaPercipienti::calcola_riga_pag(Pag_struct& s,
s.ctssncomp = c.ctssncomp; s.ctssncomp = c.ctssncomp;
// calcolo contributo Inps del percipiente // calcolo contributo Inps del percipiente
if (h_PercCommitInps == ZERO) if (h_PercCommitInps <= ZERO)
c.ctssnperc = s.ctssncomp - ((s.ctssncomp * 2) / 3); c.ctssnperc = s.ctssncomp - ((s.ctssncomp * 2) / 3);
else else
c.ctssnperc = s.ctssncomp - ((s.ctssncomp * h_PercCommitInps) / 100.00); c.ctssnperc = s.ctssncomp - ((s.ctssncomp * h_PercCommitInps) / CENTO);
c.ctssnperc.round(fdec); c.ctssnperc.round(fdec);
if (s.ctssnperc == ZERO || force) if (s.ctssnperc == ZERO || force)
s.ctssnperc = c.ctssnperc; s.ctssnperc = c.ctssnperc;

View File

@ -146,6 +146,10 @@ BEGIN
GROUP 3 GROUP 3
END END
ENDPAGE
TOOLBAR "topbar" 0 0 0 2
BUTTON DLG_OK 9 2 BUTTON DLG_OK 9 2
BEGIN BEGIN
PROMPT -14 -1 "" PROMPT -14 -1 ""
@ -160,12 +164,14 @@ BUTTON DLG_AZZERA 9 2
BEGIN BEGIN
PROMPT -34 -1 "A~zzera" PROMPT -34 -1 "A~zzera"
MESSAGE RESET,1@|RESET,2@|RESET,3@|RESET,101 MESSAGE RESET,1@|RESET,2@|RESET,3@|RESET,101
PICTURE TOOL_RESET
END END
BUTTON DLG_SELPAG 9 2 BUTTON DLG_SELPAG 9 2
BEGIN BEGIN
PROMPT -44 -1 "~Pagamenti" PROMPT -44 -1 "~Pagamenti"
HELP "Seleziona i pagamenti collegati" HELP "Seleziona i pagamenti collegati"
PICTURE TOOL_LINK
END END
ENDPAGE ENDPAGE

View File

@ -162,6 +162,10 @@ BEGIN
FIELD LF_RPAG->NUMREG FIELD LF_RPAG->NUMREG
END END
ENDPAGE
TOOLBAR "topbar" 0 0 0 2
BUTTON DLG_OK 9 2 BUTTON DLG_OK 9 2
BEGIN BEGIN
PROMPT -13 -1 "" PROMPT -13 -1 ""
@ -175,7 +179,8 @@ END
BUTTON DLG_AZZERAPAG 9 2 BUTTON DLG_AZZERAPAG 9 2
BEGIN BEGIN
PROMPT -33 -1 "A~zzera" PROMPT -33 -1 "A~zzera"
MESSAGE RESET,1@ MESSAGE RESET,1@
PICTURE TOOL_RESET
END END
ENDPAGE ENDPAGE

View File

@ -208,6 +208,10 @@ BEGIN
FIELD LF_RPAG->NUMREG FIELD LF_RPAG->NUMREG
END END
ENDPAGE
TOOLBAR "topbar" 0 0 0 2
BUTTON DLG_OK 9 2 BUTTON DLG_OK 9 2
BEGIN BEGIN
PROMPT -13 -1 "" PROMPT -13 -1 ""
@ -221,7 +225,8 @@ END
BUTTON DLG_AZZERAPAG 9 2 BUTTON DLG_AZZERAPAG 9 2
BEGIN BEGIN
PROMPT -33 -1 "A~zzera" PROMPT -33 -1 "A~zzera"
MESSAGE RESET,1@ MESSAGE RESET,1@
PICTURE TOOL_RESET
END END
ENDPAGE ENDPAGE

View File

@ -725,24 +725,36 @@ void TQuadroC_E2::genera_e1(TRectype& quadro, const TRectype& riga) const
void TQuadroC_E2::genera_la(TRectype& quadro, const TRectype& riga) const void TQuadroC_E2::genera_la(TRectype& quadro, const TRectype& riga) const
{ {
const real imponibile = riga.get(PAG_IMPONIBILE);
quadro.put(QUD_PERC, riga.get(PAG_PERC)); quadro.put(QUD_PERC, riga.get(PAG_PERC));
real ammlordo = riga.get(PAG_IMPONIBILE); real ammlordo = imponibile;
ammlordo += riga.get_real(PAG_SOMNSRIT); ammlordo += riga.get_real(PAG_SOMNSRIT);
ammlordo += riga.get_real(PAG_CONTROBB); ammlordo += riga.get_real(PAG_CONTROBB);
ammlordo += riga.get_real(PAG_SOMREGCONV); ammlordo += riga.get_real(PAG_SOMREGCONV);
quadro.put(QUD_TOTALE, ammlordo); // 16 quadro.put(QUD_TOTALE, ammlordo); // AUXXX021
real somme = riga.get_real(PAG_COMPENSO); real somme = riga.get_real(PAG_COMPENSO);
somme -= riga.get_real(PAG_IMPONIBILE); somme -= imponibile;
somme += riga.get_real(PAG_SPESA); somme += riga.get_real(PAG_SPESA);
somme -= riga.get_real(PAG_IMPCPA); somme -= riga.get_real(PAG_IMPCPA);
somme -= riga.get_real(PAG_SOMREGCONV); somme -= riga.get_real(PAG_SOMREGCONV);
quadro.put(QUD_SOMME, somme); // 17 quadro.put(QUD_SOMME, somme);
quadro.put(QUD_SOMREGCONV, riga.get(PAG_SOMREGCONV)); // 18 quadro.put(QUD_SOMREGCONV, riga.get(PAG_SOMREGCONV)); // AUXXX022
quadro.put(QUD_IMPONIBILE, riga.get(PAG_IMPONIBILE)); // 19 quadro.put(QUD_IMPONIBILE, imponibile); // AUXXX024
quadro.put(QUD_IMPORTO, riga.get(PAG_RITENUTA)); // 20 quadro.put(QUD_IMPORTO, riga.get(PAG_RITENUTA));
const real inps_tot = riga.get(PAG_INPSCOMP);
real inps_erog, inps_perc;
if (inps_tot > ZERO && riga.get_real(PAG_IMPONIBILE) > 5000.0)
{
inps_perc = riga.get_real(PAG_INPSPERC);
inps_erog = inps_tot - inps_perc;
}
quadro.put(QUD_CTINPSEROG, inps_erog); // AUXXX033
quadro.put(QUD_CTINPSPERC, inps_perc); // AUXXX034
genera_aliquota(quadro, QUD_PERC, QUD_IMPONIBILE, QUD_IMPORTO); genera_aliquota(quadro, QUD_PERC, QUD_IMPONIBILE, QUD_IMPORTO);
} }
@ -1311,29 +1323,29 @@ int TQuadroC_E2::write_prospetto_e1() const
int quadriC_E2(int argc, char* argv[]) int quadriC_E2(int argc, char* argv[])
{ {
TString16 taitol; TString taitol;
taitol << "Riepilogo "; taitol << TR("Riepilogo ");
const char* nome_quadro = argv[2]; const TFixed_string nome_quadro = argv[2];
if (strnicmp(nome_quadro, "C", 1) == 0) if (nome_quadro.starts_with("C", true))
taitol << "C"; else taitol << "C"; else
if (strnicmp(nome_quadro, "DB", 2) == 0) if (nome_quadro.starts_with("DB", true))
taitol << "SG"; else taitol << "SG"; else
if (strnicmp(nome_quadro, "D1", 2) == 0) if (nome_quadro.starts_with("D1", true))
{ {
_quadronuovo = "SE"; _quadronuovo = "SE";
taitol << "SE"; taitol << "SE";
} else } else
if (strnicmp(nome_quadro, "D", 1) == 0) if (nome_quadro.starts_with("D", true))
{ {
_quadronuovo = "SC"; _quadronuovo = "SC";
taitol << "SC"; taitol << "SC";
} else } else
if (strnicmp(nome_quadro, "E1", 2) == 0) if (nome_quadro.starts_with("E1", true))
{ {
_quadronuovo = "SG"; _quadronuovo = "SG";
taitol << "SG"; taitol << "SG";
} else } else
if (strnicmp(nome_quadro, "E", 1) == 0) if (nome_quadro.starts_with("E", true))
{ {
_quadronuovo = "SF"; _quadronuovo = "SF";
taitol << "SF"; taitol << "SF";

View File

@ -60,6 +60,8 @@ BEGIN
INPUT NPROG F_NUMPROG INPUT NPROG F_NUMPROG
DISPLAY "Codice" CODANAGR DISPLAY "Codice" CODANAGR
DISPLAY "Denominazione@50" LF_ANAG->RAGSOC DISPLAY "Denominazione@50" LF_ANAG->RAGSOC
DISPLAY "Codice Fiscale@16" LF_ANAG->COFI
DISPLAY "Partita IVA@13" LF_ANAG->PAIV
OUTPUT F_CODANAGR CODANAGR OUTPUT F_CODANAGR CODANAGR
CHECKTYPE REQUIRED CHECKTYPE REQUIRED
END END
@ -110,6 +112,8 @@ BEGIN
ITEM "Addizionale\nregionale sosp.@15" ITEM "Addizionale\nregionale sosp.@15"
ITEM "Imponibile anni\nprecedenti@15" ITEM "Imponibile anni\nprecedenti@15"
ITEM "Ritenute operate\nanni precedenti@15" ITEM "Ritenute operate\nanni precedenti@15"
ITEM "Contributi\nerogante@15"
ITEM "Contributi\npercipiente@15"
ITEM "Anticip." ITEM "Anticip."
ITEM "Generata\nda schede@9" ITEM "Generata\nda schede@9"
END END
@ -118,7 +122,7 @@ ENDPAGE
ENDMASK ENDMASK
PAGE "RIGA 1" -1 -1 58 15 PAGE "RIGA LA" -1 -1 58 16
NUMBER 101 2 NUMBER 101 2
BEGIN BEGIN
@ -248,19 +252,36 @@ BEGIN
FIELD RITANNIPRE FIELD RITANNIPRE
END END
BOOLEAN 115 CURRENCY 115 15
BEGIN BEGIN
PROMPT 1 13 "Anticipazione" PROMPT 1 13 "Contributi a carido dell'erogante "
FIELD CTINPSEROG
END
CURRENCY 116 15
BEGIN
PROMPT 1 14 "Contributi a carido del percipiente "
FIELD CTINPSPERC
END
BOOLEAN 117
BEGIN
PROMPT 1 15 "Anticipazione"
FIELD ANTICIPAZ FIELD ANTICIPAZ
END END
BOOLEAN 116 BOOLEAN 118
BEGIN BEGIN
PROMPT 31 13 "Riga generata da schede" PROMPT 31 15 "Riga generata da schede"
FLAGS "D" FLAGS "D"
FIELD GENERATA FIELD GENERATA
END END
ENDPAGE
TOOLBAR "topbar" 0 0 0 2
BUTTON DLG_OK 10 2 BUTTON DLG_OK 10 2
BEGIN BEGIN
PROMPT -13 -1 "~Conferma" PROMPT -13 -1 "~Conferma"

View File

@ -775,8 +775,7 @@ print_action TStampa_perc::postprocess_page(int file, int counter)
void TStampa_perc::intestazione_riepilogo(const bool redo_header, const int start_riga) void TStampa_perc::intestazione_riepilogo(const bool redo_header, const int start_riga)
{ {
TString sep(100); const TString sep(100, '-');
sep.fill('_');
if (redo_header) if (redo_header)
{ {
int ind = start_riga; int ind = start_riga;
@ -1188,6 +1187,6 @@ bool TStampa_perc::user_destroy()
int m72100(int argc, char* argv[]) int m72100(int argc, char* argv[])
{ {
TStampa_perc a(*argv[2]); TStampa_perc a(*argv[2]);
a.run(argc, argv, "Stampa schede percipienti"); a.run(argc, argv, TR("Stampa schede percipienti"));
return 0; return 0;
} }

View File

@ -151,20 +151,6 @@ BEGIN
FLAGS "H" FLAGS "H"
END END
TEXT DLG_NULL
BEGIN
PROMPT 43 5 "Invio Dylog"
GROUP MENU_MAIN MENU_MAIN_VIS
END
BUTTON DLG_STOPREC_IR 1 1
BEGIN
PROMPT 39 5 ""
PICTURE 123
MESSAGE RUN,777,-1
GROUP MENU_MAIN MENU_MAIN_VIS
END
TEXT DLG_NULL TEXT DLG_NULL
BEGIN BEGIN
PROMPT 43 6 "Invio Ministeriale" PROMPT 43 6 "Invio Ministeriale"

View File

@ -28,7 +28,7 @@
// Codice fiscale di Sirio spa // Codice fiscale di Sirio spa
#define CF_PRODUTTORE "00909290355" #define CF_PRODUTTORE "00909290355"
const int ANNO_DIC = 2010; const int ANNO_DIC = 2011;
/////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////
// TForm770 // TForm770
@ -521,7 +521,7 @@ TRecnotype TForm770::trasfer(long codditta, TTrasferimento770& file, char rectyp
if (region.num() == LF_QUADRO_ST) if (region.num() == LF_QUADRO_ST)
{ {
TString filter; TString16 filter;
filter.format("QLAP=%d", ANNO_DIC); filter.format("QLAP=%d", ANNO_DIC);
cur.setfilter(filter); cur.setfilter(filter);
} }
@ -851,8 +851,8 @@ TTracciato770::TTracciato770(char tipo) : _tipo(tipo)
add_field("Numero record di tipo 'F'", NU, 43, 9); // 6 add_field("Numero record di tipo 'F'", NU, 43, 9); // 6
add_field("Numero record di tipo 'G'", NU, 52, 9); add_field("Numero record di tipo 'G'", NU, 52, 9);
add_field("Numero record di tipo 'H'", NU, 61, 9); add_field("Numero record di tipo 'H'", NU, 61, 9);
add_field("Numero record di tipo 'J'", NU, 70, 9); add_field("Numero record di tipo 'I'", NU, 70, 9);
add_field("Numero record di tipo 'I'", NU, 79, 9); // 10 add_field("Numero record di tipo 'J'", NU, 79, 9); // 10
add_filler(88, 1810); add_filler(88, 1810);
} }
} }
@ -1184,7 +1184,7 @@ TRecord770::~TRecord770()
/////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////
const char* TTrasferimento770::default_name() const const char* TTrasferimento770::default_name() const
{ return "MOD77010"; } { return "MOD77012"; }
bool TTrasferimento770::open(const char* path, char mode, int volume) bool TTrasferimento770::open(const char* path, char mode, int volume)
{ {
@ -1591,12 +1591,13 @@ bool TTrasferimento770::split(const char* path)
// Compila record di coda // Compila record di coda
rec.tipo_record('Z'); rec.tipo_record('Z');
rec.set(3, totale['B'-'A']); // Totale B rec.set(3, totale['B'-'A']); // Totale B
rec.set(4, totale['D'-'A']); // Totale B rec.set(4, totale['D'-'A']); // Totale D
rec.set(5, totale['E'-'A']); // Totale E rec.set(5, totale['E'-'A']); // Totale E
rec.set(6, totale['F'-'A']); // Totale F rec.set(6, totale['F'-'A']); // Totale F
rec.set(7, totale['G'-'A']); // Totale G rec.set(7, totale['G'-'A']); // Totale G
rec.set(8, totale['H'-'A']); // Totale H rec.set(8, totale['H'-'A']); // Totale H
rec.set(9, totale['J'-'A']); // Totale J rec.set(9, totale['I'-'A']); // Totale I
rec.set(10,totale['J'-'A']); // Totale J
// Scrive record di coda // Scrive record di coda
outfile << rec; outfile << rec;

View File

@ -298,5 +298,21 @@ BEGIN
SPECIAL STRING TRASFER "AU001032" "NP" SPECIAL STRING TRASFER "AU001032" "NP"
END END
VALUTA 33
BEGIN
KEY "CONTRIBUTI PREVIDENZIALI A CARICO DEL SOGGETTO EROGANTE"
PROMPT 109 9 ""
FIELD CTINPSEROG
SPECIAL STRING TRASFER "AU001033" "NP"
END
VALUTA 34
BEGIN
KEY "CONTRIBUTI PREVIDENZIALI A CARICO DEL PERCIPIENTE"
PROMPT 109 9 ""
FIELD CTINPSPERC
SPECIAL STRING TRASFER "AU001034" "NP"
END
END END

View File

@ -1,3 +1,3 @@
144 144
1 1
m770/quadrola|0|0|211|0|Quadro LA 770||| m770/quadrola|0|0|247|0|Quadro LA 770|||

View File

@ -1,5 +1,5 @@
144 144
20 22
CODDITTA|3|5|0|Codice ditta CODDITTA|3|5|0|Codice ditta
TIPOA|1|1|0|Tipo anagrafica (Sempre 'F') TIPOA|1|1|0|Tipo anagrafica (Sempre 'F')
CODANAGR|3|5|0|Codice anagrafica CODANAGR|3|5|0|Codice anagrafica
@ -19,6 +19,8 @@ ADDREGSOSP|4|18|3|Addizionale regionale sospesa
IMPANNIPRE|4|18|3|Imponibile anni precedenti IMPANNIPRE|4|18|3|Imponibile anni precedenti
RITANNIPRE|4|18|3|Ritenute anni precedenti RITANNIPRE|4|18|3|Ritenute anni precedenti
SOMREGCONV|4|18|3|Somme non soggette a ritenuta per reg. conv. SOMREGCONV|4|18|3|Somme non soggette a ritenuta per reg. conv.
CTINPSEROG|4|18|3|Contribuiti previdenziali a carico dell'erogante
CTINPSPERC|4|18|3|Contribuiti previdenziali a carico del percipiente
GENERATA|8|1|0|Riga generata dalle schede GENERATA|8|1|0|Riga generata dalle schede
1 1
CODDITTA+TIPOA+CODANAGR+NPROG| CODDITTA+TIPOA+CODANAGR+NPROG|

View File

@ -1,4 +1,4 @@
// Mod.770 - Quadro D // Mod.770 - Quadro LA (ex Quadro D)
#ifndef __QUADROD_H #ifndef __QUADROD_H
#define __QUADROD_H #define __QUADROD_H
@ -15,6 +15,8 @@
#define QUD_IMPORTO "IMPORTO" #define QUD_IMPORTO "IMPORTO"
#define QUD_NETTO "NETTO" #define QUD_NETTO "NETTO"
#define QUD_SOMREGCONV "SOMREGCONV" #define QUD_SOMREGCONV "SOMREGCONV"
#define QUD_CTINPSEROG "CTINPSEROG"
#define QUD_CTINPSPERC "CTINPSPERC"
#define QUD_GENERATA "GENERATA" #define QUD_GENERATA "GENERATA"
#endif #endif