Ir para conteúdo
  • Cadastre-se

Marcelo Calvi Belanga

Membros Pro
  • Total de ítens

    285
  • Registro em

  • Última visita

  • Days Won

    2

Posts postados por Marcelo Calvi Belanga

  1. Basicamente, teria que alterar o arquivo pcnConversao.pas, da seguinte forma?

     

    TpcnDeterminacaoBaseIcms = (dbiMargemValorAgregado, dbiPauta, dbiPrecoTabelado, dbiValorOperacao, dbiNenhum);

    // N13 - Modalidade de determinação da BC do ICMS ******************************
    function modBCToStrTagPosText(const t: TpcnDeterminacaoBaseIcms): string;
    begin
      result := EnumeradoToStr(t, ['0 - Margem Valor Agregado (%)', '1 - Pauta (Valor)', '2 - Preço Tabelado Máx. (valor)', '3 - valor da operação', ''],
        [dbiMargemValorAgregado, dbiPauta, dbiPrecoTabelado, dbiValorOperacao, dbiNenhum]);
    end;

    function modBCToStr(const t: TpcnDeterminacaoBaseIcms): string;
    begin
      // 0 - Margem Valor Agregado (%);
      // 1 - Pauta (Valor);
      // 2 - Preço Tabelado Máx. (valor);
      // 3 - valor da operação.
      result := EnumeradoToStr(t, ['0', '1', '2', '3', ''],
        [dbiMargemValorAgregado, dbiPauta, dbiPrecoTabelado, dbiValorOperacao, dbiNenhum]);
    end;

    function StrTomodBC(out ok: boolean; const s: string): TpcnDeterminacaoBaseIcms;
    begin
      result := StrToEnumerado(ok, s, ['0', '1', '2', '3', ''],
        [dbiMargemValorAgregado, dbiPauta, dbiPrecoTabelado, dbiValorOperacao, dbiNenhum]);
    end;

  2. 33 minutos atrás, Italo Jurisato Junior disse:

    Bom dia Marcelo,

    Realmente o campo modBC recebe um enumerador, logo se não atribuirmos nada será assumido o primeiro valor que é zero.

    Como a tag é opcional, acredito que a melhor solução para esse caso é criar um enumerador chamado "dbiNenhum".

    Desta forma se o valor de modBC for dbiNenhum a tag não será gerada.

    Bom dia Italo,

    Pensei exatamente isso, mas não tenho conhecimento suficiente para esse tipo de alteração. Pode me ajudar?

  3. Boa tarde,

    Estou com uma situação que não descobri como resolver, procurei pelo fórum e não encontrei nada.

    Como não informar a TAG modBC quando ICMS51 com pDif=100? Ou seja, quando o diferimento do produto for 100%, devo informar apenas a tag <orig> e <CST> e neste caso a tag modBC está sendo informada automaticamente com <modBC>0</modBC>, por se tratar de um tipo enumerado. Conforme a imagem abaixo:
    image.png.7a38e9230c12ef27593849012c5b00a9.png

    Mas na tabela onde informa se a tag é obrigatória ou não para cada CST, temos um ?, no modBC para o ICMS51, como pode ser visto na imagem abaixo:
    image.thumb.png.24902511b188d127771d5b0f52a98aac.png

    Pesquisando, encontrei essa informação:

    image.thumb.png.216677eb3b191dcaacb77ddc4a8e2dc8.png

    Agradeço, desde já alguém que possa ajudar.

    Obrigado.

  4. Bom pessoal, necessitei dessas informações que não havia conseguido obter, para tratar a rejeição 573, de duplicidade de evento, com a ajuda do @BigWings, consegui obter as informações necessárias para salvar na base de dados, as informações que geralmente salvo, quando o registro do evento ocorre normalmente. O que ocorreu esse dias e que na resposta do webservice de evento, deu algum problema que o aplicativo não recebeu tais informações, então após a consulta da NFe pela chave de acesso, tenho tais informações carregadas no componente.

    Por fim, usei Campo.SaveToFile para salvar o XML "-procEventoNFe.xml" do evento. Não sei se é a maneira mais simples, mas foi a única forma que consegui.

    Se houver mais algum comentário, ou dica, ótimo.

    Caso contrário, podemos dar por encerrado esse tópico.

    Obrigado.

    • Curtir 3
  5. Muitíssimo obrigado @BigWings, era exatamente isso que eu precisava.

    Acrescentando informações ao mesmo assunto...

    Através deste DM_Principal.ACBrNFe.WebServices.Consulta.procEventoNFe.Items.RetEventoNFe.XML, consegui separar somente o XML do envento teCancelamento e salvar na base de dados. Através do componente, consigo gravar somente esse XML em disco após a consulta? Como se fosse no Envio do Evento?

    • Curtir 1
  6. Boa tarde a todos...

    Estou tentando tratar um erro de duplicidade de evento de cancelamento e preciso pegar o conteúdo da tag dhRegEvento e nProt, que obtenho após carregar o XML de autorização da NFe e executar uma consulta pela chave de acesso no Webservice.

    Não consigo encontrar como pegar essas informações. Segue abaixo, imagem para facilitar entendimento, se alguém souber e por ajudar, fico muito agradecido.

    image.png.899b8e07684362af13cc6bd10167f1ad.png

  7. Bom dia Fernando,

    Veja que no seu XML, você está passando o código da receita de ICMS ST e o detalhamento da Receita do DIFAL.

    <c02_receita>100099</c02_receita>

    <c25_detalhamentoReceita>000005</c25_detalhamentoReceita>

    Tente passar desta forma e veja se dá certo

    <c02_receita>100099</c02_receita>
    <c25_detalhamentoReceita>000003</c25_detalhamentoReceita>

    • Curtir 2
  8. 54 minutos atrás, bochnia disse:

    Olá Marcelo,
    Eu estou com o mesmo problema descrito por você, estou pesquisando bastante uma solução e efetuando teste e teste, verificando cada propriedade do FireDac. Mas até agora o problema de apagar todos os registros do detalhe é o mesmo,
    sempre retornar os registros apagados.

     

    O cache bagunça após a exclusão do último registro do detalhe, correto?

×
×
  • 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...