X-Git-Url: http://git.cascardo.eti.br/?a=blobdiff_plain;f=lib%2Fgera.c;h=a496190d30240db06cb9e6dc382d3ad0d50b8c3c;hb=2e07f695eca0462d1d16bef67ba32c804e134121;hp=212ca95d0dfc775a3f58cb2620fc0a1a112c488d;hpb=168fac475fcd8b8dbdc1836ebfb6ffe739dba6b0;p=cascardo%2Fdeclara.git diff --git a/lib/gera.c b/lib/gera.c index 212ca95..a496190 100644 --- a/lib/gera.c +++ b/lib/gera.c @@ -260,7 +260,9 @@ static void gera_simples(struct declaracao *dec, FILE *f) fprintf(f, "%013lld", 0); /* TODO: retido na fonte (Lei 11.033) */ fprintf(f, "%013lld", 0); /* TODO: 13o. dependentes */ fprintf(f, "%013lld", 0); /* TODO: lucros dependentes */ - fprintf(f, "%013lld", totais_get(dec, "ISENTOSDEP")); /* isentos dependentes */ + /* BUG IRPF: O IRPF imprime 0 aqui mesmo com doações e poupança. */ + /* fprintf(f, "%013lld", totais_get(dec, "ISENTOSDEP")); */ + fprintf(f, "%013lld", 0); /* isentos dependentes */ fprintf(f, "%013lld", totais_get(dec, "EXCLUSIVOSDEP")); /* exclusivos dependentes */ fprintf(f, "%-13.13s", ""); /* FILLER */ fprintf(f, "%-13.13s", ""); /* FILLER */ @@ -317,7 +319,7 @@ static void gera_totais_simples(struct declaracao *dec, FILE *f) fprintf(f, "%013lld", totais_get(dec, "ISENTOSDEP")); /* rendimentos isentos dependentes */ fprintf(f, "%013lld", totais_get(dec, "EXCLUSIVOSTIT")); /* tributação exclusiva titular */ fprintf(f, "%013lld", totais_get(dec, "EXCLUSIVOSDEP")); /* tributação exclusiva dependentes */ - fprintf(f, "%013lld", 0); /* TODO: total não tributável */ + fprintf(f, "%013lld", 0); /* TODO: total não tributável AR */ fprintf(f, "%013lld", 0); /* TODO: total dívidas ano anterior */ fprintf(f, "%013lld", 0); /* TODO: total dívidas ano base */ fprintf(f, "%013lld", 0); /* TODO: retido fonte Lei 11.033 */ @@ -368,7 +370,7 @@ static void gera_completa(struct declaracao *dec, FILE *f) fprintf(f, "%013lld", 0); fprintf(f, "%013lld", totais_get(dec, "DECIMOTERCEIRO")); /* TODO: 13o titular */ fprintf(f, "%013lld", 0); /* TODO: 13o dependente */ - fprintf(f, "%05d", 0); /* TODO: dependentes com instrucao */ + fprintf(f, "%05d", totais_get(dec, "DEPSINSTRUCAO")); /* dependentes com instrucao */ fprintf(f, "%05d", 0); /* TODO: alimentandos com instrucao */ fprintf(f, "%013lld", 0); /* TODO: rendimentos PF titular */ fprintf(f, "%013lld", 0); /* TODO: rendimentos PF dependente */ @@ -400,7 +402,7 @@ static void gera_totais_completa(struct declaracao *dec, FILE *f) /* TODO (2016): somar FUNPRESP acima do limite */ fprintf(f, "%013lld", totais_get(dec, "PREVIDENCIA")); /* previdencia privada */ fprintf(f, "%013lld", totais_get(dec, "DEPENDENTES")); /* deducao dependentes */ - fprintf(f, "%013lld", 0); /* TODO: deducao instrucao */ + fprintf(f, "%013lld", totais_get(dec, "INSTRUCAO")); /* deducao instrucao */ fprintf(f, "%013lld", totais_get(dec, "MEDICAS")); /* despesas medicas */ fprintf(f, "%013lld", 0); /* TODO: pensao */ fprintf(f, "%013lld", 0); /* TODO: pensao escritura publica */ @@ -477,7 +479,7 @@ static void gera_isentos(struct declaracao *dec, FILE *f) fprintf(f, "%-11.11s", dec->cpf); fprintf(f, "%013lld", 0); /* TODO: bolsa de estudo */ fprintf(f, "%013lld", 0); /* TODO: pecúlio de previdência privada */ - fprintf(f, "%013lld", 0); /* TODO: FGTS, aviso prévio indenizado */ + fprintf(f, "%013lld", totais_get(dec, "INDENIZACOES")); /* FGTS, aviso prévio indenizado */ fprintf(f, "%013lld", 0); /* TODO: ganho de capital isento */ fprintf(f, "%013lld", 0); /* TODO: lucros e dividendos */ fprintf(f, "%013lld", 0); /* TODO: atividade rural */ @@ -500,7 +502,7 @@ static void gera_isentos(struct declaracao *dec, FILE *f) fprintf(f, "%013lld", 0); /* TODO: GC total informado */ fprintf(f, "%013lld", 0); /* TODO: GC total transportado */ fprintf(f, "%013lld", 0); /* TODO: imposto renda anos anteriores */ - fprintf(f, "%013lld", 0); /* TODO: rencimentos assalariados moeda estrangeira */ + fprintf(f, "%013lld", 0); /* TODO: rendimentos assalariados moeda estrangeira */ fprintf(f, "%013lld", 0); /* TODO: bonificações ações */ fprintf(f, "%013lld", 0); /* TODO: médicos residentes */ fprintf(f, "%013lld", 0); /* TODO: volutários da Copa */ @@ -696,6 +698,11 @@ static void gera_doacao(struct declaracao *dec, FILE *f) gera_isento(dec, f, 82); } +static void gera_indenizacoes(struct declaracao *dec, FILE *f) +{ + gera_isento(dec, f, 93); +} + static void gera_plr(struct declaracao *dec, FILE *f) { gera_isento(dec, f, 96); @@ -901,6 +908,7 @@ static int gera(struct declaracao *dec, char *filename) W(fn); \ } IW(gera_doacao, 82); + IW(gera_indenizacoes, 93); IW(gera_plr, 96); IW(gera_poupanca, 98); IW(gera_aplicacoes, 99);