ERRO NO XML, COMO CORRIGIR

FUTURA 10/04/2017 16:23:00
#473208
Pessoal, é o seguinte, uso um componente para nfe, de uma empresa, que o suporte é uma porcaria, porém ainda não tenho condições de criar meu próprio projeto, e nem de mudar de fornecedor, pois existe todo um processo de programação em cima da dll. Ocorre que descobri que o xml de cancelamento esta sendo gerado errado, e gostaria de uma solução meio na gambiarra mesmo, para editar e tirar o que esta errado, teria como usar um replace ou algo parecido levando em conta apenas as linhas com erro ?, vejam na imagem o que preciso tirar, dentro da seleção em azul no final do arquivo.
MARCOSLING 10/04/2017 20:19:39
#473211
vc pode carregar o arquivo no XmlDocument
ler a propriedade InnerXml fazer o replace e salvar o resultado em outro XmlDocument

Mas tem que fazer isso antes de assinar o arquivo
MARCOSLING 10/04/2017 20:27:33
#473212
Mas espera lá... olhando bem o print da tela.
Esse problema que vc está citando está no retorno!
Então, porque está com problema?
DS2T 11/04/2017 08:41:27
#473218
Resposta escolhida
Citação:

Mas espera lá... olhando bem o print da tela.
Esse problema que vc está citando está no retorno!
Então, porque está com problema



Pelo que entendi, o problema dele é justamente o componente externo que ele usa, que está gravando o retorno dessa forma e ele não consegue mudar.
Como você tá lidando com VB6 e a operação que deseja, já uma gambiarra por si só... Faça o seguinte procedimento:


Função Instr() para conhecer o índice inicial da expressão [Ô]retEvento versao[Ô]
Use a função Mid para quebrar a string em duas. Tudo que veio antes do [Ô]retEvento versao[Ô] numa variável, tudo que veio depois, em outra. (Esse procedimento também daria pra fazer com um Split())

Na segunda string (o que veio depois do retEvento), você faz um replace simples tirando o [Ô]xmlns=.... inf.br/cte[Ô]

Concatene as duas strings novamente.
FUTURA 11/04/2017 08:56:45
#473219
pois é amigos, isso mesmo, o componente dll que uso de terceiros, esta gerando assim, é um absurdo, e com a empresa é dificil o contato, tudo via ticket, o problema nunca é deles, achando o fone na net, até liguei, mas dizem só via ticket e desligam na sua cara. Eu até ja achei uma maneira, carregando o arquivo e usando uns 2 replaces, mas ai checkei que além disso, tbm tem tags com nome errado e faltando. A pergunta é, como esta ocorrendo apenas no retorno do cancelamento, ( ultimo bloco a ser adicionado no xml), se eu alterar ele, posso ter problemas com a assinatura, ou no caso, apenas esse bloco não interfere ?, pois ai vou acertar por aqui mesmo, e partir pra outra solução.
MARCOSLING 11/04/2017 10:22:30
#473220
Citação:

:
pois é amigos, isso mesmo, o componente dll que uso de terceiros, esta gerando assim, é um absurdo, e com a empresa é dificil o contato, tudo via ticket, o problema nunca é deles, achando o fone na net, até liguei, mas dizem só via ticket e desligam na sua cara. Eu até ja achei uma maneira, carregando o arquivo e usando uns 2 replaces, mas ai checkei que além disso, tbm tem tags com nome errado e faltando. A pergunta é, como esta ocorrendo apenas no retorno do cancelamento, ( ultimo bloco a ser adicionado no xml), se eu alterar ele, posso ter problemas com a assinatura, ou no caso, apenas esse bloco não interfere ?, pois ai vou acertar por aqui mesmo, e partir pra outra solução.



Quais tags estão com nome errado e o que está faltando?
FUTURA 11/04/2017 10:34:12
#473221
tags de retorno do cancelamento, esta marcado na imagem acima.
MARCOSLING 11/04/2017 13:36:44
#473231
Citação:

:
tags de retorno do cancelamento, esta marcado na imagem acima.


São apenas namespaces. Que problemas isso está causando?
FUTURA 11/04/2017 14:06:27
#473232
Marcos, mas eles ão deveriam estar ai correto ?, além dos namespaces, faltam tags e ha tags com nomes errados.. Sobre o problema que esta causando, seria a importação dos dados destas tags.
MARCOSLING 11/04/2017 14:21:38
#473233
Citação:

:
Marcos, mas eles ão deveriam estar ai correto ?, além dos namespaces, faltam tags e ha tags com nomes errados.. Sobre o problema que esta causando, seria a importação dos dados destas tags.



Sera que não é por causa da versão do xml?
Estou vendo que a versão que consta é 1.0
FUTURA 11/04/2017 14:44:20
#473235
então, como eu disse, é gerado pelo componente dll que não é meu, estou tentando achar um xml de cancelamento do cte 2.0 pra ajustar.
Página 1 de 2 [11 registro(s)]
Tópico encerrado , respostas não são mais permitidas