Matos Informatica
Video - Windev - Curso - 57/... - Xml - Ler conteudo Tags e Importar Pedido
Nessa aula vou mostrar como importar um xml, para poder importar para
pedidos do cupom fiscal
isso ajuda a integrar Erp com Cupom
<?xml version="1.0" encoding="UTF-8"?>
<importa_cupom>
<pedido>
<pedido_numero>5</pedido_numero>
</pedido>
<produto item="1">
<produto_codigo>2</produto_codigo>
<produto_nome>Teste de produto 2</produto_nome>
<produto_unidade>KG</produto_unidade>
<produto_quantidade>1.50</produto_quantidade>
<produto_preco_venda>2.00</produto_preco_venda>
<produto_total>3.00</produto_total>
</produto>
<produto item="2">
<produto_codigo>1</produto_codigo>
<produto_nome>primeiro produto</produto_nome>
<produto_unidade>PC</produto_unidade>
<produto_quantidade>13.00</produto_quantidade>
<produto_preco_venda>5.51</produto_preco_venda>
<produto_total>71.63</produto_total>
</produto>
</importa_cupom>
PROCEDURE xml_importar_cupom()
// Aqui estou Pedido para informar o Numero do Pedido
s_numero_pedido is string
LOOP
Input("Informe Numero do Pedido",s_numero_pedido)
// Caso ele nao informar o numero o sistema nao deixar sair ate digitar um Numero
IF s_numero_pedido="" THEN
Info("favor informar Numero do Pedido")
ELSE
// aqui faz sair do loop
BREAK
END
END
// criei uma variavel n-iten para saber a sequencia do iten do pedido
n_iten is int=0
// aqui estou criando as variaveis que vao ser jogadas na tabela
produto_codigo is string=""
produto_nome is string=""
produto_unidade is string=""
produto_quantidade is currency=0
produto_preco_venda is currency=0
produto_total is currency=0
// aqui é a variavel do totalizador
gcy_total_venda=0
//aqui estou Eliminado dados da tabela
TableDeleteAll(TABLE_caixa)
// aqui criei uma variavel s_diretorio para pegar o nome do xml e o local onde esta
s_diretorio is string="e:\aleva\cupom_"+s_numero_pedido+".xml"
s_xml_documento is string=s_diretorio
s_meu_xml is string=fLoadText(s_xml_documento)
XMLDocument("xmldoc",s_meu_xml)
XMLFind("xmldoc",Null,XMLElement+XMLChildItem,XMLStartWith)
//agora vou comecar a ler cada linha do xml
WHILE XMLFound("xmldoc")
IF XMLElementType("xmldoc")=XMLAttribute THEN
// caso ele achar o atributo num item , vai inicializar
//<produto item="1">
// se for iten = 0 nao faz nada
IF n_iten=0 THEN
ELSE
// caso contrario ja jogo as informacoes para tabela e limpo os campos
TableAddLine(TABLE_caixa,n_iten,produto_codigo,produto_nome,produto_unidade,produto_quantidade,produto_preco_venda,produto_total)
produto_codigo=""
produto_nome=""
END
//aqui estou pegando o item=.. que sera 1 ,, ou outro
n_iten=XMLData("xmldoc")
END
// aqui estou pegando todos os campos que preciso
IF XMLElementName("xmldoc")="produto_codigo" THEN produto_codigo=XMLData("xmldoc")
IF XMLElementName("xmldoc")="produto_nome" THEN produto_nome=XMLData("xmldoc")
IF XMLElementName("xmldoc")="produto_unidade" THEN produto_unidade=XMLData("xmldoc")
IF XMLElementName("xmldoc")="produto_quantidade" THEN produto_quantidade=XMLData("xmldoc")
IF XMLElementName("xmldoc")="produto_preco_venda" THEN produto_preco_venda=XMLData("xmldoc")
IF XMLElementName("xmldoc")="produto_total" THEN
produto_total=XMLData("xmldoc")
gcy_total_venda+=produto_total
END
XMLNext("xmldoc")
// aqui estou pedido para ir para proxima tag
END
EDT_total_geral=gcy_total_venda
XMLClose("xmldoc")
// aqui estou fechando o xml
// estou agora, gerando a tabela da ultima linha
IF produto_codigo<>"" THEN
TableAddLine(TABLE_caixa,n_iten,produto_codigo,produto_nome,produto_unidade,produto_quantidade,produto_preco_venda,produto_total)
END
// se numero do iten for 0 é porque nao existe arquivo xml
IF n_iten=0 THEN
Info("Nao Encontrado Numero do Pedido [ "+s_numero_pedido+"]")
END
Blog - Curso Iniciante /1/... - Inicio
Blog - Curso Iniciante /2/... - Menu
Blog - Curso Iniciante /3/... Campos
Blog - Curso Iniciante /4/... - Duvida/Style
Blog - Curso Iniciante /5/... - Menu
Blog - Curso Iniciante /6/... - Menu 2
Blog - Curso Iniciante /7/... - If / ShellExecute
Blog - Curso Iniciante /8/... - ReturntoCapture
Blog - Curso Iniciante /9/... - Info
Blog - Curso Iniciante /10/.. - DateSys - Now
Blog - Curso Iniciante /11/... - Criando Analise Agenda
Blog - Curso Iniciante /12/... - Menu , Agenda
Blog - curso Iniciante /13/... - HreadSeek
Blog - curso Iniciante /14/... - For Each - Percorrer Tabela
Blog - Curso Iniciante /15/... - Query Consultas
Blog - Curso Iniciante /16/... - Tabela Relatorio
Blog - Curso Iniciante /17/... - Relatorio Criando
Blog - Curso Iniciante /18/... - Relatorio Manual
Blog - Curso Iniciante /19/.. - Menu Popup
Blog - Curso Iniciante /20/... - Data - Separar dia mes e ano
Blog - Curso Iniciante /21/... - Time - Separar hora/min/seg
Blog - Curso Iniciante /22/... - Operadores
Blog - Curso Iniciante /23/... - String Igualdade
Blog - Curso Iniciante /24/... - Switch / Case
Blog - Curso Iniciante /25/... - LOOP
Blog - Curso Iniciante /26/... - FOR
Blog - Curso /27/... - Extern
Blog - Curso /28/... - My
Blog - Curso /29/... Procedures
Blog - Curso /30/... HSave .. - Inclui Um Registro
Blog - Curso /31/... - Hsave - Altera um Registro
Blog - Curso /32/... - HDelete - Exclui Registro(s)
Blog - Curso /33/... - Relatorio
Blog - Curso /34/... - Dialog
Blog - Curso /35/... - Input
blog - Curso /36/... - Combox
Blog - Curso /37/... Combox Tabela
Blog - Curso /38/... List Box
Blog - Curso /39/... - Analise Agenda/Ligacoes
Blog - Curso /40/... - Rad - Tabela Relacionada Agenda/Ligações
Blog - Curso /41/... - Tabela Relacionada Manual
Blog - Curso /42/... - Dica Tela/Code Separado
Blog - Curso /43/... - Mapa /1..
Blog - Curso /44/... - Mapa /2.. Imprime
Blog - Curso /45/... - Fechar Programa - EndPrograma()
Blog - Curso /46/... - Camera Habilita/Desabilita
Blog - Curso /47/... - Tabela e Formulario - Configurar Cnpj
Blog - Curso /48/... - Camera - Tirar Uma Foto e Gravar Imagem
Blog - Curso /49/... - Reports e Queies - Instalacao
Blog - Curso /50/... Reports e Queies - Relatorio - Como Gerar
Blog - Curso /51/... Pedidos/Orcamento 1/... Analise
Blog - Curso /52/... Pedidos/Orcamento 2/.. Analise Windev
Blog - Curso /53/... Pedidos/Orcamento 3/... Relacionamento
Blog - Curso /54/... Pedidos Orcamento 4/... Rad
Blog - Curso /55/... Pegar Quantidade e Codigo - Separador *
Blog - Curso /56/... Pegar Retorno de Uma Tabela e colocar Campo
Blog - Curso /57/... Xml - Ler Conteudo Tags e Importar Pedido
Blog - Curso /58/... Ini - Ler e Gravar
Blog - Curso /59/... Pedidos Orcamento 5/... Inicio Digitacao Pedido
Blog - Curso /60/... Pedidos Orcamento 6/... Digitando Iten Pedido
Blog - Curso /61/... Pedidos orcamento 7/... Gravando Pedido e Itens
Blog - Curso /62/... Pedido Orcamento 8/... Consulta cliente
Blog - Curso /63/... Tabela - Ancorar Coluna
Blog - Curso /64/... Tabela - Esconder ou Mostrar Coluna
Blog - Curso /65/... RSS
Blog - Curso /66/... Pedido Orcamento 9/... Consulta Material
Blog - Curso /67/... Tabelas, Control F Pesquisa Toda Tabela /Contenha/Cor Fundo
Blog - Curso /68/... Pedidos Orcamento 10/... Planos - Condições Pagamento
Blog - Curso /69/... - Calculadora dentro do Campo Valor
Blog - Curso /70/... Mapa - Itinerario
Blog - Curso /71/... Tabela - Alterar Nome Coluna
Blog - Curso /72/... Botal Fazer Menu popup
Blog - Curso /73/... Debug - Como Usar
Blog - Curso /74/... Tabela Alinhar Coluna Lado Esquerdo
Blog - Curso /75/... Pedidos Orcamento 11/... Quantidade /Mascara/Mudar
Blog - Curso /76/... YesNo - Pergunta Se Deseja Eliminar
Blog - Curso /77/... Select - Case - Query
Blog - Curso /78/... Pedido/Orcamento 12/... - Analise Cond.Pagto
Blog - Curso /79/... Campos - Como Alterar configuracao via Codigo
Blog - Curso /80/... Pedido/Orcamento 13/... - Tabela,Gerar Condicoes/Parcelas
Blog - Curso /81/... Configuracao Trocar Exe para Wdl ou outro
Blog - Curso /82/... Utilitarios - PopUp - Aumento Precos Materiais
Blog - Curso /82/... TableEnableFilter - Digita Nome e Filtra
Blog - Curso /83/... TableEnableFilter - Digita Nome e Filtra
Blog - Curso /84/... Dica Copiar Colar Texto Ou Imagen Pdf
Blog - Curso /85/... SElect Como Usar Wizard
Blog - Curso /86/... Radio - Colocar tudo Mesma Linha
Blog - Curso /87/... Procedure - Melhoria Versao20 - Parametros
Blog - Curso /88/... Style - Tabela Como Alterar
Blog - Curso /89/... Style - Tab Como Alterar
Blog - Curso /90/... Pedido/Orcamento 14/... - Style - Mudando Botao Procura
Blog - Curso /91/... - Pedido/Orcamento 15/... - Pedido - Totalizar Colunas Tabela
Blog - Curso /92/... Backup - Hyperfile
Blog - Curso /93/... Debug - STOP
Blog - Curso /94/... Tabela - Alterar Cor da Coluna - Texto
Blog - Curso /95/... Select Max - Pegar o Numero Proxima Nota
Blog - Curso /96/... Tabela Divisao de Muitas Colunas
Blog - Curso /97/... Analise - Configurar Campo para Vir Automatico Combox
Blog - Curso /98/... Tabela - Double click - Entrar direto Alteração do Cliente
Blog - Curso /99/... Tabela MultiSeleção
Blog - Curso/100/... Tabela - TableMoveLine - Move Linha Baixou ou Cima
Blog - Curso/101/... TableAjust - Ajustar Tabela com Colunas
Blog - Curso/102/... TableSort - Ordem nas Colunas