Página 1 de 1

Automação

Enviado: Ter Dez 20, 2016 4:44 pm
por Rafael Cunha
Olá à todos,

Ontem me foi atribuído um procedimento completamente manual, penso em automatizá-lo.

O processo:
Pego um xml de uma pasta remota, copio em uma pasta local, abro no excel convertendo para tabela xml, excluo todos registros da coluna UF diferente de SC, salvo com outro nome e copio em uma pasta de um ftp.

Penso:
O processo de agenda, manipulação do nome e copia no ftp faço por batch sem problemas. A minha dúvida seria na forma de formatar o xml? Li o artigo COMO EXECUTAR MACROS EM OUTRO ARQUIVO NO EXCEL e pensei que poderia fazer que o batch execute um vbscript ou excel que tenha um vba ou macro que faça a formatação e salve em outro xml.

Outra hipótese seria fazer tudo no excel, as copias, as nomenclaturas, ...

O que acham?

Agradeço muito qualquer ajuda.

Re: Automação

Enviado: Qua Dez 21, 2016 4:20 pm
por webmaster
Tudo o que pediu eh possivel. Save a estrutura do XML vai ajudar a saber o quao complicado sera na manipulacao dos registros destes.

De resto, recomendo que inicie o desenvolvimento e quebre o problema em partes para tentar resolve-los um a um. Dai entao, pode voltar para o forum com as duvidas, por partes, ok?

Re: Automação

Enviado: Sex Dez 23, 2016 4:41 pm
por Rafael Cunha
Sei que fugi um pouco da ideia inicial, mas vou postar as evoluções.
Optei por tratar o xml por powershell, consegui filtrar só elementos com SC, porém a saída ainda ta sendo em texto, não xml mas é questão de tempo, esse findi quero parar e ver isso.

batch:

Código: Selecionar todos

@echo off
set dia=%date:~3,2%-%date:~0,2%-%date:~6,10%
if exist *.xml ( del *.xml )
xcopy \\servidor\caminho\de\rede\arq1.xml C:\pasta\local /D:%dia% /Y
ren arq1.xml arq1_filtrado.xml
powershell $xml = [ xml ](Get-Content .\arq1_filtrado.xml) | $xml.rowset.row | select -ExpandProperty childnodes | where {$_.uf -like 'SC'}
ftp -s:login.txt
login.txt:

Código: Selecionar todos

open ftp.endereco.com.br
usuario
senha
delete arq1_filtrado.xml
put arq1_filtrado.xml
bye