July 9, 2009 | In: Projetos
fupload: script Visual Fox Pro que auxilia o upload de arquivos
fupload é um script feito em Visual Fox Pro. Criei o fupload para facilitar o upload de arquivos pdf e zip em massa, aqui no meu trabalho. Feito usando o princípio de “coçar a própria coceira”.
Como eu estava querendo aprender a usar o git e o github, resolvi organizar melhor o código e disponibilizá-lo como open source. Esse script foi feito para plataforma Windows. É necessário ter o Visual Fox Pro instalado na máquina. Para complementar o script uso um arquivo .bat que faz o envio para o servidor.
Quem utiliza outros sistemas operacionais poderá se inspirar na solução e criar outras soluções multiplataformas.
Agora fiquem com o tutorial para utilizar o fupload:
1. baixe o arquivo .zip do fupload e descompacte na sua unidade c:\. O aplicativo está no seguinte link:
http://github.com/valeriofarias/fupload/tree
Se você usa o git poderá fazer um clone do projeto com o seguinte comando:
git clone git://github.com/valeriofarias/fupload.git
Na figura abaixo você pode ver a hierarquia de pastas do utilitário fupload:
- backup -> (antes era historic) armazena uma cópia de todos os arquivos que são enviados para o servidor
- log -> armazena os arquivos de log
- script -> pasta principal do utilitário. Nela se encontra o arquivo fupload.prg que é o programa principal. Nela também se encontra o arquivo .bat.
- start -> como o nome já diz, essa pasta é onde você coloca os arquivos que serão enviados para o servidor. É o primeiro passo.
- tmp -> quando o arquivo é processado pelo script fupload, ele é renomeado e enviado para essa pasta, nessa pasta também é criado o arquivo de log que será utilizado para criar a página HTML.
O script já vem pré-configurado para ser executado na unidade c, mas você pode facilmente modificar as configurações para executá-lo em outra unidade(d:\, e:\). É só modificar a constante: DEFAULTFOLDER, para a unidade que você desejar.
Obs.: É preciso também configurar a pasta destino do servidor. No caso do script modifique as constantes: SERVERFOLDERPDF (caminho no servidor para os arquivos .pdf) e SERVERFOLDERZIP (para arquivos .zip). Na imagem abaixo você pode ver o trecho do código do arquivo fupload.prg:

configuração do fupload
É preciso também fazer a configuração do arquivo upload.winscript. Primeiro é preciso renomear esse arquivo para upload.bat. Depois abra-o no notepad, modifique o pathserver e salve o arquivo:
@ECHO OFF ECHO PAUSA DE SEGURANCA PAUSE COPY c:\fupload\tmp\*.pdf pathserver\pdf\ COPY c:\fupload\tmp\*.zip pathserver\zip\ MOVE c:\fupload\tmp\*.log c:\fupload\log\ MOVE c:\fupload\tmp\*.zip c:\fupload\backup\ MOVE c:\fupload\tmp\*.pdf c:\fupload\backup\ DEL c:\fupload\tmp\*.*
Feita a configuração, agora é só colocar os arquivos que você quer enviar para o servidor na pasta start.
No exemplo abaixo você pode ver que os arquivos tem acentos e espaços vazios entre as palavras. É aqui onde o fupload faz a mágica, eliminando os espaços vazios e os acentos:

primeiro passo: coloque os arquivos na pasta start
Agora você já pode carregar o fupload.prg no Visual Fox Pro como na imagem abaixo. Se quiser usar sem parâmetro não tem problema nenhum. O parametro é só para colocar um prenome no início do arquivo identificando sua natureza como: doc, form, etc.

Carregando o fupload.prg no Visual Fox Pro
Quando o processamento é finalizado aparece o messagebox abaixo:

Messagem indicando que o script foi finalizado
Agora já podemos acessar a pasta tmp e ver o resultado. Note que os arquivos estão todos renomeados, agora sem acento e sem espaço vazio. Foi adicionado também um prenome no início, nesse caso doc. Também foi criado o arquivo de log:

arquivos modificados pelo fupload
Vamos dar uma olhada agora no arquivo de log. O nome do arquivo segue o padrão: “logupload_ano_mes_dia__hora_minuto_segundo_[prenome (facultativo)]_n[número de arquivos].txt”. Quando você abre o arquivo de log. Já aparece o código HTML definitivo para colocar na página. Se quiser você pode alterar o texto do link para algo mais chamativo ou legível. Depois é só copiar e colocar na página HTML.

arquivo de log
Para finalizar é só executar o arquivo upload.bat (figura abaixo), na pasta script. Esse procedimento enviará os arquivos para o servidor e limpará a pasta tmp. Os arquivos .pdf e .zip serão copiados também para a pasta backup, só por segurança. O arquivo de log será movido para pasta log. Isso te dar um histórico dos últimos uploads. No momento que você quiser, poderá apagar o conteúdo da pasta backup.

