Por acaso você já precisou baixar alguma imagem e usar em um relatório ou tela em AdvPL? Saiba como fazer isso no artigo de hoje.
Se você atende algum cliente TCloud, e sabe como é oneroso ficar baixando imagens e colocando dentro da Protheus Data, existe uma solução mais fácil para isso.
Primeiramente a imagem tem que estar hospedada em algum lugar, por exemplo, no próprio site da empresa. Supondo que a imagem seja empresa.com/logo.png.
Agora o segundo passo, é definir o caminho local da imagem, iremos colocar na pasta temporária do sistema operacional.
Por último, vamos verificar se o arquivo não existe, se não existir, iremos dar um HttpGet do link, e um MemoWrite para gravar a imagem, conforme exemplo abaixo:
//Imagem da URL cUrl := "http://empresa.com/logo.png" //Imagem no caminho local cImgLocal := GetTempPath() + "logo_empresa.png" //Se o arquivo não existir, faz o download dele If ! File(cImgLocal) MemoWrite(cImgLocal, HttpGet(cUrl)) EndIf
Após fazer o download, ai basta você usar em telas ou relatórios (como no método SayBitmap).
Bom pessoal, por hoje é só.
Abraços e até a próxima.
e se tiver um arquivo ZIP, é possível baixar?
Acho que não Rafael, devido a arquitetura da compactação de um ZIP.
Mas seria um teste interessante, se eu conseguir testar, lhe aviso.
Abraços.