Olá pessoal, tudo certo?
Enfrentei um problema durante quase 2 dias até perceber que algumas configurações não são resetadas quando eu seto um valor "vazio" ao chamar a função ConfigGravarValor.
Situação:
Estou homologando os boletos do sicoob, e o código de barras estava apresentando inconsistência por conta do "Nosso Numero" que estava sendo calculado da maneira errada.
Basicamente eu deveria gerar o boleto usando o LayoutVersaoArquivo = 81 ao invés de 810.
Em algum lugar da documentação de vocês eu vi que o valor "81" era o valor padrão, ou seja, ele calculava o DV. Até aí tudo bem.
Problema:
Fui até o código que setava o valor do LayoutVersaoArquivo e passei a inserir um valor "vazio" nele, para poder resetar.
boleto.ConfigGravarValor(ACBrSessao.BoletoBancoConfig, "LayoutVersaoArquivo", "");
Depois de horas debugando, percebi que esse valor não havia resetado, e que continuava com o valor "810" e por isso meus boletos continuavam inválidos.
Solução
Alterei o valor de LayoutVersaoArquivo para "81" e aí sim a configuração alterou e meus boletos foram gerados corretamente.
boleto.ConfigGravarValor(ACBrSessao.BoletoBancoConfig, "LayoutVersaoArquivo", "81");
Dúvida / Preocupação
Esse realmente é o comportamento esperado?
Se sim, existe algum método para eu forçar os valores padrões das configurações?
Minha preocupação é eu acabar alterando alguma outra configuração e esbarrar na mesma situação, de eu achar que está trocando e não está.