Ir para conteúdo
  • Cadastre-se

Adição da leitura da tag cLocEmi (PadraoNacional.LerXml.pas)


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

Recommended Posts

  • Consultores
  • Solution
Postado

Boa tarde @Daniel - PiraByte,

Fiz uma modificação na sua implementação e mandei para o SVN.

Só não entendi o porque você esta atribuindo o código do local da emissão ao código do município em função do emitente, sendo que o componente realiza a leitura dessa informação nas respectivas procedures.

Consultor SAC ACBr

Italo Giurizzato Junior
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

Analista de Sistemas / Araraquara-SP

Araraquara - A era dos Trólebus

Postado
16 minutos atrás, Italo Giurizzato Junior disse:

Boa tarde @Daniel - PiraByte,

Fiz uma modificação na sua implementação e mandei para o SVN.

Só não entendi o porque você esta atribuindo o código do local da emissão ao código do município em função do emitente, sendo que o componente realiza a leitura dessa informação nas respectivas procedures.

Boa tarde @Italo Giurizzato Junior, muito obrigado.

Sobre a leitura, fiz com base no arquivo de gravação do XML: 

  case NFSe.tpEmit of
    teTomador:
      Result.AppendChild(AddNode(tcStr, '#1', 'cLocEmi', 7, 7, 1,
                                    NFSe.Tomador.Endereco.CodigoMunicipio, ''));
    teIntermediario:
      Result.AppendChild(AddNode(tcStr, '#1', 'cLocEmi', 7, 7, 1,
                              NFSe.Intermediario.Endereco.CodigoMunicipio, ''));
  else
    Result.AppendChild(AddNode(tcStr, '#1', 'cLocEmi', 7, 7, 1,
                                  NFSe.Prestador.Endereco.CodigoMunicipio, ''));
  end;


Pelo que vi nas alterações, foi adicionado a propriedade cLocEmi, junto disso a leitura da tag direto para essa propriedade, porém no arquivo de gravação, a alteração foi apenas para gravação do arquivo ini: 

AINIRec.WriteString(LSecao, 'cLocEmi', NFSe.cLocEmi);

A gravação do XML parece estar usando ainda o código que mencionei usar de base acima, com isso ao carregar um XML com cLocEmi preenchido e sem o endereço do prestador, ao usar a função de Emitir, ele vai gravar o XML novamente, e com isso vai tentar pegar a informação do cLocEmi no endereço do prestador, que vai estar vázio.

Fiz a alteração para que a gravação do XML seja feita usando a propriedade cLocEmi, não mantive o código acima com o case.


PadraoNacional.GravarXml.pas

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