Olá pessoal!
Foi enviado ao SVN na Rev-34473 uma alteração que muda a lógica de geração dos campos quantidade tributada (qBCMono), quantidade tributada sujeita a retenção (qBCMonoReten) e quantidade tributada retida anteriormente (qBCMonoRet).
O que mudou?
Nas rotinas de geração do arquivo XML, o parâmetro que equivale ao número de ocorrências dos respectivos campos foi alterado de 0 para 1.
Isso faz com que esses campos sempre sejam criados, independentemente de haver valor informado ou não na propriedade. Preenchendo com zeros quando valor não for atribuído.
Por que mudou?
Originalmente os campos foram adicionados na rotina de criação do XML com o parâmetro do número de ocorrências com o valor zero conforme o layout.
Isso significa que o campo é opcional e nesse caso, quando o valor informado for zero ou não houver nenhum valor atribuído o campo não seja criado no XML.
No entanto, apesar de o número de ocorrências ser zero, existem rejeições que obrigam o preenchimento desses campos mesmo quando o valor for zero.
Um exemplo disso é a rejeição 767 cuja regra de validação é:
E a mensagem de rejeição é:
Por isso, entendemos que mesmo que o número de ocorrências indique que o campo seja opcional, logicamente falando, faz sentido que o mesmo seja sempre inserido.
Para que a modificação tenha efeito, é necessário atualizar os fontes e reinstalar o ACBr.
Para aqueles que utilizam ACBrMonitor ou ACBrLib, as versões compiladas após o dia 17/07/2024.