Ola foreiros.
Lendo um XML de NFe me vem o campo infCpl (informações complementares) com caracteres inválidos.
Dai meu teste para ver se tem informação [CODIGO] if len(alltrim(infCpl)) # 0 [CODIGO] provoca um erro.
Como posso evitar este erro se tiver caracteres invalidos?
XML em anexo.
Obrigado.
tag infCpl XML NFe com caracter invalido
Moderador: Moderadores
-
softecmario
- Usuário Nível 1

- Mensagens: 3
- Registrado em: 22 Nov 2012 00:47
- Localização: porto alegre/rs
tag infCpl XML NFe com caracter invalido
- Anexos
-
- Proice_143170012984783-procNFe_5688-VEN.xml
- (7.43 KiB) Baixado 55 vezes
tag infCpl XML NFe com caracter invalido
depende de sua função... como vc esta fazendo?
Sun Tzu há mais de três mil anos cita nas epígrafes de seu livro “A Arte da Guerra“:
“Concentre-se nos pontos fortes, reconheça as fraquezas, agarre as oportunidades e proteja-se contra as ameaças”.
“Se não é vantajoso, nunca envie suas tropas; se não lhe rende ganhos, nunca utilize seus homens; se não é uma situação perigosa, nunca lute uma batalha precipitada”.
Até 2017 Desktop Console [ Legado ] Harbour | MinGW | DBF | CDX | FastReport | MySQL
Novos Projetos:
Desktop Visual Windev Desktop
Celular Android/iOS Windev Mobile
WEB Windev Web
Sejamos gratos a Deus.
“Concentre-se nos pontos fortes, reconheça as fraquezas, agarre as oportunidades e proteja-se contra as ameaças”.
“Se não é vantajoso, nunca envie suas tropas; se não lhe rende ganhos, nunca utilize seus homens; se não é uma situação perigosa, nunca lute uma batalha precipitada”.
Até 2017 Desktop Console [ Legado ] Harbour | MinGW | DBF | CDX | FastReport | MySQL
Novos Projetos:
Desktop Visual Windev Desktop
Celular Android/iOS Windev Mobile
WEB Windev Web
Sejamos gratos a Deus.
-
softecmario
- Usuário Nível 1

- Mensagens: 3
- Registrado em: 22 Nov 2012 00:47
- Localização: porto alegre/rs
tag infCpl XML NFe com caracter invalido
Obrigado pelo interesse fladimir.
Uso HMG EXTEND 17.01, BORLAND\BCC55, WINDOWS 10
no .xml esta:
-<infCpl>
-<![CDATA[<BR/><BR/><BR/><BR/><BR/><BR/><BR/><BR/><BR/><BR/><BR/><BR/><BR/><BR/><BR/><BR/><BR/>]]>
</infCpl>
Código: Selecionar todos
...
IF oCurrent:cName == "infCpl"
infCpl := oCurrent:cData
ENDIF
...
if len(alltrim(infCpl)) # 0 <------------------------------------------------------------------------------------------------ aqui da erro Error BASE/2022 Argument error: ALLTRIM
xObs:=infCpl
nPed:=WED_PEDIDO
nObserv:=FOBSERV_GRV("EOBSERV","PED_PEDIDO","PED_SEQUEN","PED_OBSERV",nPed,nObserv,xObs) //grava
replace PED_OBSER with nObserv
endif
...
no .xml esta:
-<infCpl>
-<![CDATA[<BR/><BR/><BR/><BR/><BR/><BR/><BR/><BR/><BR/><BR/><BR/><BR/><BR/><BR/><BR/><BR/><BR/>]]>
</infCpl>
- JoséQuintas
- Administrador

- Mensagens: 20267
- Registrado em: 26 Fev 2007 11:59
- Localização: São Paulo-SP
tag infCpl XML NFe com caracter invalido
Nem parece que é programador..... rs
Se isso dá erro em AllTrim() e AllTrim() serve pra string, então..... o conteúdo não é string.
O certo seria rever o conteúdo dessa variável, como ele inicia, e como ele se altera.
Apenas pra esconder o SEU erro, é desprezar se não for string.
Código: Selecionar todos
if len(alltrim(infCpl)) # 0
O certo seria rever o conteúdo dessa variável, como ele inicia, e como ele se altera.
Apenas pra esconder o SEU erro, é desprezar se não for string.
Código: Selecionar todos
if ValType( infCpl ) != "C" .OR. Len( AllTrim( InfCpl ) ) != 0
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
https://github.com/JoseQuintas/
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
https://github.com/JoseQuintas/
-
softecmario
- Usuário Nível 1

- Mensagens: 3
- Registrado em: 22 Nov 2012 00:47
- Localização: porto alegre/rs
tag infCpl XML NFe com caracter invalido
Obrigado José Quintas.
Nada como um expert para os mínimos detalhes.
alterei para:
FUNCIONANDO OK.
Colaborando,
o XML que estava lendo é de uma NFe aprovada na SEFAZ, Fornecedor de Cliente meu.
Ou seja não estava esperando NFe aprovada com Caracteres Inválidos no campo infCpl.
Nada como um expert para os mínimos detalhes.
alterei para:
Código: Selecionar todos
if ValType( infCpl ) != "C"
//caracteres inválidos no campo infCpl do XML, não grava observação
elseif Len( AllTrim( InfCpl ) ) != 0
...
endif
FUNCIONANDO OK.
Colaborando,
o XML que estava lendo é de uma NFe aprovada na SEFAZ, Fornecedor de Cliente meu.
Ou seja não estava esperando NFe aprovada com Caracteres Inválidos no campo infCpl.
Editado pela última vez por Toledo em 02 Fev 2017 21:48, em um total de 1 vez.
Razão: Mensagem editada para colocar a tag [ code ]<br>Veja como utilizar esta tag: http://www.pctoledo.com.br/forum/faq.php?mode=bbcode#f2r1
Razão: Mensagem editada para colocar a tag [ code ]<br>Veja como utilizar esta tag: http://www.pctoledo.com.br/forum/faq.php?mode=bbcode#f2r1
