Página 1 de 1
ESCOLHER ARQUIVO
Enviado: 11 Out 2011 11:00
por braz
Ola Pessoal,
Estou precisando de uma rotina que abre uma janela na tela para escolher um arquivo.
Por exemplo, faço importação do extrato do banco para meu sistema, então preciso escolher o arquivo para importar.
Desde ja obrigado. :{ :{
ESCOLHER ARQUIVO
Enviado: 11 Out 2011 11:28
por Pablo César
Tudo vai depender da forma que fará se esses nomes de arquivos estão com nome LONGOS ou CURTOS. Os nomes curtos são composto até 8 digitos e com extensão até 3 caracteres. Exemplo: ARQUIVOS.TXT (8x3). E daí você irá utilizar o DIRECTORY ou ADIR para guardar os nomes em matriz e o ACHOICE para escolher os nomes numa janela de forma selecionavel. Mas como disse se tiver nomes longos e quiser selecionar através de nomes longos, você irá precisar uma biblioteca externa LFN e criar a matriz com nomes longos.
Tente compor o seu proprio código baseado nas dicas fornecidas e se não funcionar te poderemos ajudar melhor. Eu sou muito a favor da política de ensinar a pescar mas não entregar o peixe pronto, senão o colega não aprende. Teremos prazer de ajudá-lo mas precisa haver empenho da sua parte também.
ESCOLHER ARQUIVO
Enviado: 11 Out 2011 13:34
por braz
Desculpa eu não mencionar, mas é pra nome curto mesmo, ate 8x3, como usar esses DIRETORY OU ADIR ?
Obrigado.
ESCOLHER ARQUIVO
Enviado: 11 Out 2011 14:23
por alxsts
Olá!
Você encontrará isso pronto nos exemplos que vem junto ao Clipper 5. Se você tem a estrutura de pastas da instalação padrão, irá encontrar na pasta C:\Clipper5\Source\Sample o arquivo FileMan.Prg. É só dar uma estudada. Para compilar, depende do arquivo FileMan.ch, que está na pasta C:\Clipper5\Include.
ESCOLHER ARQUIVO
Enviado: 11 Out 2011 16:47
por Pablo César
Isso aí ! E se os arquivo são do tipo 8 x 3 mais fácil fica. Eu te aconselho, utilizar um editor que permita acionar o NG (Norton Guide). É fundamental consultaras funções e comandos que o Clipper e outras bibliotecas oferecem. Veja este tópico:
https://pctoledo.org/forum/viewto ... 070#p42070
Aliás, hoje contamos com uma super-poderosa ferramenta:
Google para pesquisa.
ESCOLHER ARQUIVO
Enviado: 11 Out 2011 16:49
por braz
Pablo eu consegui fazer isso:
Código: Selecionar todos
@09,09 clear to 21,36
@09,09 to 21,36 double
private fontes[adir('*.*')]
adir('*.*',fontes)
escolha=achoice(10,10,20,35,fontes)
Mas so aparece os arquivos do diretorio onde está o .exe.
Eu gostaria que aparecesse os diretorios tambem, pois vou buscar arquivos na rede tambem.
O que devo fazer ainda?
Grato
ESCOLHER ARQUIVO
Enviado: 11 Out 2011 16:57
por Pablo César
Você utilizando a máscara "*.*" irá trazer os nomes de todos os arquivos do diretorio corrente, é claro. Mas você pode fazer "*.prn" por exemplo, ou "NF*.TXT". Tabém você pode colocar o path (caminho) assim: "\NOME_DA_PASTA\
R????.*"
Mas fazer que liste a pasta com diretório, precisar passar o segundo parametro "D" que incluirá o nomes das subpastas. Mas tudo isso irá demandar muito trabalho. Tente concentrar os arquivos num só lugar.
ESCOLHER ARQUIVO
Enviado: 11 Out 2011 17:07
por alxsts
Olá!
Utilize a FileMan() (File Manager) que sugeri.
Você pode navegar por toda a rede e selecionar um arquivo. Compile e teste. Desconsiderando a parte gráfica, é bem parecido em termos de funcionalidades, com o diálogo OpenFile do Windows.
ESCOLHER ARQUIVO
Enviado: 11 Out 2011 17:09
por braz
.......Tabém você pode colocar o path (caminho) assim: "\NOME_DA_PASTA\
R????.*"
Boa, isso ja me ajudou bastante, muito obrigado :|<
ESCOLHER ARQUIVO
Enviado: 11 Out 2011 18:41
por alxsts
Olá!
Faz muito tempo que não mexo mas, você vai navegando com a tecla TAB nas caixas de seleção. Dando um ENTER, ele abre as opções e você seleciona com ENTER. Parece o diálogo para abrir arquivo do velho EDIT do DOS. Abra o EDIT e veja.
O único inconveniente, que me lembro, é que foi desenvolvido há tempos em Clipper. Atualmente os HDs são monstruosos e se uma pasta tiver mais que 4096 arquivos ou o drive tiver mais de 4096 pastas, estoura a capacidade de arrays do Clipper.