Ir para conteúdo
  • Cadastre-se

  • Este tópico foi criado há 174 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

Postado (editado)

Boa tarde, pessoal.

Queria compartilhar alguns pontos que notei durante a implementação da NFSe em C# e, caso eu esteja fazendo algo errado, peço por favor que me corrijam.

Percebi que algumas conversões de enum não estão sendo refletidas automaticamente no INI com os valores numéricos esperados, conforme os arrays definidos nos exemplos em Delphi do ACBr.

Um caso específico é o OpSimpNac. No Delphi temos o TOptanteSN, cujo array mapeia para os valores "1", "2" e "3". Porém, no meu cenário, o enum estava sendo gravado como 0, 1, 2 no INI, o que causava rejeição no Padrão Nacional.
Para contornar isso temporariamente, precisei adicionar a seguinte lógica manual:

// 29/12/2025 - array não tratado pelo fonte da ACBr até o momento
// (enum está indo como 0, 1, 2 ao invés de 1, 2, 3)
secPrestador["OpSimpNac"] = Emitente.RegTrib!.OpSimpNac switch
{
    OptanteSN.osnNaoOptante   => "1",
    OptanteSN.osnOptanteMEI   => "2",
    OptanteSN.osnOptanteMEEPP => "3",
    _ => "1"
};

Os nomes do enum estão corretos e equivalentes ao Delphi, mas o valor numérico não está sendo convertido automaticamente conforme o array de referência.

Outro ponto parecido acontece com o campo TpOper dentro de IbsCbsDps.
Quando envio TpOper = Nenhum (0), o valor realmente vai como 0, porém o INI não remove a propriedade, enquanto no exemplo do ACBr esse campo simplesmente não é gerado quando está como “Nenhum”.

Para alinhar com o comportamento do ACBr, implementei a seguinte lógica:

if (IbsCbsDps.TpOper == TpOper.togNenhum)
{
    iniData["IbsCbsDps"].Remove(nameof(IbsCbsDps.TpOper));
}

A dúvida é:

  • Esse comportamento está correto do lado do ACBrLib?

  • Ou existe alguma configuração / padrão que eu deveria seguir para que essas conversões e remoções aconteçam automaticamente?

Desde já agradeço qualquer orientação ou confirmação. Caso haja alguma atualização sobre essas questoes no repositorio svm peço que me avisem se possivel.

(especialmente na reforma tributaria esta tendo muito esse problema de conversao)

Editado por beatriz-n
Esqueci de algumas informações
  • Este tópico foi criado há 174 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora
×
×
  • Criar Novo...

Informação Importante

Colocamos cookies em seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies, caso contrário, assumiremos que você está bem para continuar.

The popup will be closed in 10 segundos...