Ir para conteúdo
  • Cadastre-se

dev botao

Propriedade ProtocoloCTe em ACBRCTeDacteClass


windsoft
Ver Solução Respondido por windsoft,
  • Este tópico foi criado há 3056 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

  • Membros Pro

Olá amigos, estou enfrentando um problema ao imprimir conhecimentos cancelados, a tarja CTe Cancelado às vezes não aparece.

Estou utilizando FastReport. 

Percebi que na função TACBrCTeDACTEFR.CarregaParametros existe o código abaixo. Não consegui entender a lógica de verificar se a Propriedade "ProtocoloCTe" está vazia e também "FCTe.procCTe.nProt", o que acontece é que debugando percebi que em alguns conhecimentos em alguns casos a propriedade  "FCTe.procCTe.nProt" está com o número do protocolo e a "ProtololoCTe" não. Já perdi um tempo aqui e não entendi a finalidade desta última e nem encontrei onde é que o valor dela é preenchido.

O correto não seria remover esta propriedade e considerar apenas a "FCTe.procCTe.nProt" ?

Obrigado pelos esclarecimentos.

    if (FCTe.ide.tpAmb = taHomologacao) then
      FieldByName('Mensagem0').AsString := 'CTe sem Valor Fiscal - HOMOLOGAÇÃO'
    else
    begin
      if not(FCTe.ide.TpEmis in [teContingencia, teFSDA]) then
      begin
        if ((EstaVazio(ProtocoloCTE)) and
          (EstaVazio(FCTe.procCTe.nProt))) then
          FieldByName('Mensagem0').AsString := 'CTe sem Autorização de Uso da SEFAZ'
        else
          if (not((EstaVazio(ProtocoloCTE)) and
          (EstaVazio(FCTe.procCTe.nProt)))) and
          (FCTe.procCTe.cStat = 101) then
          FieldByName('Mensagem0').AsString := 'CTe Cancelado'
        else
        begin
          if CTeCancelada then
            FieldByName('Mensagem0').AsString := 'CTe Cancelado'
          else
            FieldByName('Mensagem0').AsString := '';
        end;
      end
      else
        FieldByName('Mensagem0').AsString := '';
    end;

 

Gilson do Carmo
WindSoft Sistemas

Link para o comentário
Compartilhar em outros sites

  • Membros Pro
  • Solution

Ficou confuso né @Juliomar Marchetti até eu me perdi agora que fui ler o que escreví.

Acabei resolvendo de outra forma, quando eu carrego o XML para realizar a impressão, eu atribuo manualmente o cStat=101 para o procCTe, assim mesmo que eu imprima um lote de CTe os que estão canceladas saem com a tarja cancelada.

Mesmo assim, obrigado pela atenção de sempre.

Gilson do Carmo
WindSoft Sistemas

Link para o comentário
Compartilhar em outros sites

  • Este tópico foi criado há 3056 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.