X-Git-Url: http://git.cascardo.eti.br/?a=blobdiff_plain;ds=sidebyside;f=lib%2Fgera.c;h=181343ae118a1c67c41ea6b64083b43bbccfb859;hb=9784a57e8cb98cf62860fdebee481eca5499ab81;hp=885dbb94261ad0a2da9ae0644019acc7b40cbf4a;hpb=07733f71982cecf29125ce2e5ddf33c56f9a889c;p=cascardo%2Fdeclara.git diff --git a/lib/gera.c b/lib/gera.c index 885dbb9..181343a 100644 --- a/lib/gera.c +++ b/lib/gera.c @@ -574,6 +574,11 @@ static void gera_23_poupanca(struct declaracao *dec, FILE *f) gera_isentos2(dec, f, 12, "POUPANCA"); } +static void gera_23_lucrome(struct declaracao *dec, FILE *f) +{ + gera_isentos2(dec, f, 13, "LUCROME"); +} + static void gera_exclusivos(struct declaracao *dec, FILE *f) { fprintf(f, "24"); @@ -637,13 +642,19 @@ static void gera_conjuge(struct declaracao *dec, FILE *f) static int is_trailler_filler(int ano, int i) { - if (ano >= 2018) { + if (ano == 2018) { return i == 29 || i == 31 || i == 33 || i == 36 || i == 37 || i == 44 || i == 82; } - return i == 44; +#if 0 + if (ano == 2019) { + return i == 57 || (i >= 76 && i <= 79); + } +#endif + return (ano <= 2018 && i == 44); /* Ano 2016, linha 29 é um FILLER, mas preenchida com múltiplos * 0s. Como esta linha não é gerada na declaração de 2016, não * deve constar aqui, e será contabilizada como 0. */ + /* O mesmo vale para as linhas de 2019 comentadas acima. */ /* || (ano == 2016 && i == 29); */ } @@ -654,8 +665,10 @@ static int is_trailler_spaces(int ano, int i) static int is_trailler_empty(int ano, int i) { - return (i == 57 || i == 64 || i == 79) || - (ano == 2015 && i == 49); + return + (ano == 2015 && i == 49) || + (ano <= 2018 && + (i == 57 || i == 64 || i == 79)); } static void gera_trailler(struct declaracao *dec, FILE *f) @@ -836,8 +849,12 @@ static void gera_plr(struct declaracao *dec, FILE *f) static void gera_plr2(struct declaracao *dec, FILE *f) { - gera_isento2(dec, f, 96, 11, 88); - dec->linhas[96]++; + gera_isento2(dec, f, 11, 11, 88); +} + +static void gera_lucrome2(struct declaracao *dec, FILE *f) +{ + gera_isento2(dec, f, 13, 13, 84); } static void gera_outrosisentos(struct declaracao *dec, FILE *f) @@ -857,8 +874,7 @@ static void gera_poupanca(struct declaracao *dec, FILE *f) static void gera_poupanca2(struct declaracao *dec, FILE *f) { - gera_isento2(dec, f, 98, 12, 84); - dec->linhas[98]++; + gera_isento2(dec, f, 12, 12, 84); } static void gera_aplicacoes(struct declaracao *dec, FILE *f) @@ -868,8 +884,7 @@ static void gera_aplicacoes(struct declaracao *dec, FILE *f) static void gera_aplicacoes2(struct declaracao *dec, FILE *f) { - gera_isento2(dec, f, 99, 6, 88); - dec->linhas[99]++; + gera_isento2(dec, f, 6, 6, 88); } static void gera_dependente(struct declaracao *dec, FILE *f) @@ -1093,6 +1108,7 @@ static int gera(struct declaracao *dec, char *filename) W(gera_exclusivos); } else { W(gera_23_poupanca); + W(gera_23_lucrome); W(gera_24_decimoterceiro); W(gera_24_aplicacoes); W(gera_24_plr); @@ -1129,12 +1145,13 @@ static int gera(struct declaracao *dec, char *filename) IW(gera_poupanca, 98); IW(gera_aplicacoes, 99); } else { - IW(gera_poupanca2, 98); - dec->linhas[98] = 0; - IW(gera_aplicacoes2, 99); - dec->linhas[99] = 0; - IW(gera_plr2, 96); - dec->linhas[96] = 0; + IW(gera_poupanca2, 12); + //dec->linhas[12] = 0; + IW(gera_aplicacoes2, 6); + //dec->linhas[99] = 0; + IW(gera_plr2, 11); + IW(gera_lucrome2, 13); + //dec->linhas[96] = 0; } W(gera_trailler);