Não gera linhas de rendimentos exclusivos de total zero.
authorThadeu Lima de Souza Cascardo <cascardo@cascardo.eti.br>
Fri, 19 Apr 2019 13:13:39 +0000 (10:13 -0300)
committerThadeu Lima de Souza Cascardo <cascardo@cascardo.eti.br>
Sat, 20 Apr 2019 02:20:17 +0000 (23:20 -0300)
Quando não há um determinado rendimento exclusivo, seu total é zero, e não deve
ser gerada uma linha para determinado tipo de rendimento exclusivo.

lib/gera.c

index a6aaa01..5b08064 100644 (file)
@@ -593,10 +593,13 @@ static void gera_exclusivos(struct declaracao *dec, FILE *f)
 
 static void gera_exclusivos2(struct declaracao *dec, FILE *f, int codigo, char *nome)
 {
+       long long total = totais_get(dec, nome);
+       if (total == 0)
+               return;
        fprintf(f, "24");
        fprintf(f, "%-11.11s", dec->cpf);
        fprintf(f, "%04d", codigo);
-       fprintf(f, "%013lld", totais_get(dec, nome)); /* TODO: retistuição imposto anos anteriores */
+       fprintf(f, "%013lld", total); /* TODO: retistuição imposto anos anteriores */
 }
 
 static void gera_24_decimoterceiro(struct declaracao *dec, FILE *f)