- Fórum
- Protheus/Microsiga/Totvs
- AdvPL (Advanced Protheus Language)
- Dúvidas Gerais
- Leitura de arquivo XML
×
Linguagem de Programação ADVPL
Perguntas Leitura de arquivo XML
- Natalia Perioto
- Autor do Tópico
- Desconectado
- Membro Iniciado
Menos
Mais
- Postagens: 3
- Obrigados Recebidos: 0
11 anos 2 meses atrás #17280
por Natalia Perioto
Leitura de arquivo XML foi criado por Natalia Perioto
Bom dia Pessoal!
Estou fazendo uma importação de nota através de um arquivo xml. O usuário precisa escolher o arquivo xml que será importado, para isso estou usando cGetFile e depois XmlParserFile() para gerar o objeto xml. Mas ele não lê o arquivo quando uso o cGetFile, mas quando determino o caminho do arquivo no fonte funciona.
Podem me ajudar?
Estou fazendo uma importação de nota através de um arquivo xml. O usuário precisa escolher o arquivo xml que será importado, para isso estou usando cGetFile e depois XmlParserFile() para gerar o objeto xml. Mas ele não lê o arquivo quando uso o cGetFile, mas quando determino o caminho do arquivo no fonte funciona.
Podem me ajudar?
Por favor Acessar ou Registrar para participar da conversa.
- ftvernier
- Desconectado
- Membro Platina
Menos
Mais
- Postagens: 386
- Obrigados Recebidos: 2
- Natalia Perioto
- Autor do Tópico
- Desconectado
- Membro Iniciado
Menos
Mais
- Postagens: 3
- Obrigados Recebidos: 0
11 anos 2 meses atrás #17294
por Natalia Perioto
Respondido por Natalia Perioto no tópico Leitura de arquivo XML
Boa tarde Fernando,
Segue:
aAdd( aSay, "O objetivo desta rotina e efetuar a leitura em um arquivo XML" )
aAdd( aButton, { 1,.T.,{|| nOpc := 1,FechaBatch()}})
aAdd( aButton, { 2,.T.,{|| FechaBatch() }} )
FormBatch( cCadastro, aSay, aButton )
If nOpc == 1
cFileOpen := cGetFile(cExtens,cTitulo1,,,.T.) //cMainPath
//Gera o Objeto XML
oXml:= XmlParserFile(cFileOpen, "_", @cError, @cWarning )
If Type("oXml:_root:_pedido:_itens:_item") <> "U"
IF ValType(oXml:_root:_pedido:_itens:_item) <> "A"
XmlNode2Arr( oXml:_root:_pedido:_itens:_item, "_Item" )
loXml := .T.
ENDIF
Else
Alert("Arquivo "+cFileOpen+" não possui itens.")
EndIf
If (oXml == NIL )
MsgStop("Falha ao gerar Objeto XML : "+cError+" / "+cWarning)
Endif
aRet := GRAVAR(oXml)
Segue:
aAdd( aSay, "O objetivo desta rotina e efetuar a leitura em um arquivo XML" )
aAdd( aButton, { 1,.T.,{|| nOpc := 1,FechaBatch()}})
aAdd( aButton, { 2,.T.,{|| FechaBatch() }} )
FormBatch( cCadastro, aSay, aButton )
If nOpc == 1
cFileOpen := cGetFile(cExtens,cTitulo1,,,.T.) //cMainPath
//Gera o Objeto XML
oXml:= XmlParserFile(cFileOpen, "_", @cError, @cWarning )
If Type("oXml:_root:_pedido:_itens:_item") <> "U"
IF ValType(oXml:_root:_pedido:_itens:_item) <> "A"
XmlNode2Arr( oXml:_root:_pedido:_itens:_item, "_Item" )
loXml := .T.
ENDIF
Else
Alert("Arquivo "+cFileOpen+" não possui itens.")
EndIf
If (oXml == NIL )
MsgStop("Falha ao gerar Objeto XML : "+cError+" / "+cWarning)
Endif
aRet := GRAVAR(oXml)
Por favor Acessar ou Registrar para participar da conversa.
- lalberto
- Desconectado
- Administrador
Menos
Mais
- Postagens: 3676
- Obrigados Recebidos: 6
11 anos 2 meses atrás #17306
por lalberto
Luiz Alberto Vieira Alves
Proprietário
55 (12) 9 8256-5905 (Vivo)
www.3lsystems.com.br
www.masteradvpl.com.br
Respondido por lalberto no tópico Leitura de arquivo XML
Natalia boa noite, segue o fonte de importação de nota fiscal eletronica, que lê xml, tem tudo que vc precisa ok.
Abraços e seja bem vinda ao masteradvpl.
Abraços e seja bem vinda ao masteradvpl.
Luiz Alberto Vieira Alves
Proprietário
55 (12) 9 8256-5905 (Vivo)
www.3lsystems.com.br
www.masteradvpl.com.br
Por favor Acessar ou Registrar para participar da conversa.
- Natalia Perioto
- Autor do Tópico
- Desconectado
- Membro Iniciado
Menos
Mais
- Postagens: 3
- Obrigados Recebidos: 0
11 anos 1 mês atrás #17311
por Natalia Perioto
Respondido por Natalia Perioto no tópico Leitura de arquivo XML
Obrigada Luiz!
Por favor Acessar ou Registrar para participar da conversa.
- Fórum
- Protheus/Microsiga/Totvs
- AdvPL (Advanced Protheus Language)
- Dúvidas Gerais
- Leitura de arquivo XML
Tempo para a criação da página:0.154 segundos