on 07-30-2019 11:41 AM - edited on 11-20-2020 11:35 AM by TreyW
Primeiro passo é obter o link de acesso de onde você quer retirar as cotações, neste nosso exemplo acessamos o site do Banco Central do Brasil. Dentro do site do Banco Central identificamos a página onde está a cotação da moeda que queremos obter a cotação, neste exemplo estamos utilizando a cotação do Dólar e simulamos a obtenção da cotação de 1 semana.
Neste ponto da consulta após a pesquisa ser efetuada o próprio site disponibiliza o download de um arquivo csv com a cotação (em amarelo na imagem acima)
Ao passar o mouse sobre o arquivo em csv conseguimos identificar o link de download da pesquisa efetuada, é este link que iremos utilizar em nosso workflow.
https://ptax.bcb.gov.br/ptax_internet/consultaBoletim.do?method=gerarCSVFechamentoMoedaNoPeriodo&Chk...
Antes de mais nada temos que preparar o link acima para receber as datas que queremos pesquisar, em nosso exemplo estamos montando um workflow que irá nos trazer uma quantidade de dias específicos olhando sempre para a data do sistema. Este é um parâmetro que você poderá configurar conforme a sua necessidade específica.
Para isso alteramos o link acima da seguinte forma:
https://ptax.bcb.gov.br/ptax_internet/consultaBoletim.do?method=gerarCSVFechamentoMoedaNoPeriodo&Chk...'
Com esse link pronto já iniciamos a construção de nosso workflow utilizando a ferramenta 'Entrada de Texto'.
Entrada de Texto
Após essa etapa precisamos criar uma fórmula que vai contar a quantidade de dias entre a DATA INICIAL e a DATA FINAL, para que isso funcione da maneira correta vamos criar 2 novos campos com os nomes de DATA INICIAL e DATA FINAL utilizando a ferramenta 'Fórmula', e vamos utilizar 15 dias para obter os dados.
A partir deste ponto vamos precisar adaptar o formato da data de YYYY-MM-DD para o formato que o site entende DD/MM/YYYY, para isso vamos utilizar a ferramenta 'DataHora' 2 vezes para converter as 2 datas (DATA INICIAL e DATA FINAL).
Após a conversão chegou a hora de substituir os dados XX/XX/XXXX e YY/YY/YYYY do primeiro link pelas Datas Formatadas e calculadas nas ferramentas anteriores, para isso utilizamos novamente a ferramenta 'Fórmula' criando um novo campo chamado NEWLINK, ficando assim o nosso link:
https://ptax.bcb.gov.br/ptax_internet/consultaBoletim.do?method=gerarCSVFechamentoMoedaNoPeriodo&Chk...
No primeiro já temos todos os dados obtidos no site, estão todos em apenas 1 linha. No segundo temos a confirmação de que a conexão foi efetuada com sucesso (este campo é importantíssimo para saber se as configurações que fizemos está funcionando).
Vamos agora trabalhar os dados que vieram no campo DownloadData, vamos formata-los de modo a obter a cotação dia a dia, em colunas e linhas distintas (lembrem-se eles estão todos em uma única linha neste momento). Para isso vamos utilizar a ferramenta 'RegEX'.
RegEX
Após a troca pelo caracter chegou a hora de efetuarmos as quebras de linhas, para isso vamos utilizar a ferramenta Texto para Colunas (Text to Columns) configurando a mesma para quando encontrar o ‘|’ dividir em linhas (Split to Rows).
Texto para Colunas
Com a quebra de linhas efetuada fica fácil identificar a quantidade de colunas dentro de cada registro, neste caso chegamos a quantidade de 8 colunas que são separadas por ‘;’ que serão separadas utilizando mais uma vez a ferramenta "Texto para Colunas", desta vez utilizando a divisão em colunas mesmo (Split to Columns)
Nesta ferramenta vamos selecionar os campos DownloadData1, DownloadData5 e DownloadData6 que serão renomeados respectivamente para Data, Compra e Venda.
Por fim nos resta alterar o campo Data para o formato DATE, pois no momento ele é um campo V_WString, para isso vamos utilizar as ferramentas "Fórmula" e "DataHora" conforme abaixo:
Na ferramenta "Fórmula" vamos incluir a “/” entre o números da data, para isso vamos apenas atualizar o campo data aplicando a fórmula: Left([Data],2)+"/"+Right(Left([Data],4),2)+"/"+Right([Data],4)
Feito essa alteração nos resta apenas alterar o campo de V_WString para Date (padrão Alteryx) utilizando a ferramenta 'DataHora" conforme abaixo:
Agora vamos finalizar utilizando a ferramenta "Selecionar" para escolher apenas as 3 colunas que nos interessa, DateTimeOut (renomeada para DATA e alterada a ordem), Compra e Venda.
Ao final teremos o seguinte workflow:
Olá @Felipe_Holz você pode entrar contato diretamente comigo, autor do case, posso ajudar você.
Me envie e-mail em carlosteixeira@uol.com.br terei prazer em ajudá-lo.
Não esta conectado ao Alteryx Server não, todo o fluxo foi montado e utilizado apenas no Alteryx Designer.
Em qual objeto você está obtendo o erro?
Pode me dizer?
Obrigado
Carlos A Teixeira
@vroque Oi Vitor, obrigada pela mensagem! Caso tenha interesse em fazer um caso de uso entre em contato com a gente que nós te ajudamos!
Muito bom o case Carlos!
Precisei montar um case financeiro e o teu exemplo me ajudou bastante nesse processo.
@rod_ortega Obrigado Ortega, fico feliz em ter ajudado ter alguma forma.
Grande abraço
Carlos, estou com algumas dúvidas relacionadas ao seu fluxo. Te mandei um e-mail. Podemos falar sobre?
Boa tarde, gostaria que me ajudassem, pois no momento em que inseri a ferramenta de Download o fluxo processado retorna a informação "Erro ao transferir dados: Failure when receiving data from the peer". Fora do Alteryx eu consegui extrair o arquivo então não acredito que seja algum bloqueio da nossa rede. Conferi se a configuração da ferramenta está igual ao que nosso colega colocou no fluxo e me parece que está igual, pois as outras abas não sofreram alteração, somente a aba "Basico"
Alguém tem alguma idéia do que pode estar ocorrendo?
A url final que o alteryx produziu é a seguinte: "https://ptax.bcb.gov.br/ptax_internet/consultaBoletim.do?method=gerarCSVFechamentoMoedaNoPeriodo&Chk..."
Se vc jogar essa URL no seu brwoser ele retorna o arquivo ou ele dá erro?
Abraços
Excelente, isso quer dizer que a URL está sendo criada de forma certa.
Duas coisas:
1 - Da uma olhada na configuração na aba Conteúdo se está configurada como GET
2 - verifique se não há nenhum campo checado nas outras janelas.
Se precisar me encaminha uma mensagem no privado (aqui pela comunidade mesmo) que tentarei ajudar você mais detalhadamente
Abraços
@cristhiano Parece estar tudo certo mesmo.
Você pode compartilhar seu workflow aqui com a gente?
Obrigado
@cristhiano Posta um novo tópico aqui nesse link, nele você consegue anexar o workflow
https://community.alteryx.com/t5/Forum-Portugues/bd-p/discussions-pt-br
Abraços