Página 1 de 1
Usar arquivos com nomes longos
Enviado: 08 Mar 2010 22:20
por billy1943
Implementei a função ADIRECTORY da lib LFN e com a ajuda de outras LIBs, está funcionando.
Eu tenho acesso via Achoice a um diretório, onde existem arquivos com nomes de até 60 bytes (padrão .XML) que foram objeto de saída da NF-e.
Tudo bem, mas o que eu queria com esses nomes, era abrir os arquivos correspondentes, isto é, se eu acessar um arquivo .XML, o Internet Explorer se encarregaria de abrí-lo.
Tal como fazemos com o comando START arquivo.tipo, onde o tipo vai identificar qual o programa adequado para tal função.
Tem alguma função para executar tal trabalho ?
Se tiver, poderemos usar os .XML das Nf_e em e-mails, correspondencias, etc.
Re: Usar arquivos com nomes longos
Enviado: 09 Mar 2010 00:06
por alxsts
Olá!
Não entendi a tua dúvida Billy.
Se você montou um Achoice() com os nomes de arquivo .XML(tem que ter a qualificação completa de path) e o usuário selecionou um item do Achoice(), basta emitir um Start /C mais o nome do arquivo e o mesmo será aberto pela associação ativa no Windows (caso exista). Você poderá verificar ou ajustar isto no Windows Explorer, menu Ferramentas, Opções de Pastas, Tipos de Arquivo. Por padrão, quando o Office (neste caso o 2003) está instalado, a extensão .XML abre com o XML Editor (na verdade executa o comando "C:\Arquivos de programas\Arquivos comuns\Microsoft Shared\OFFICE11\MSOXMLED.EXE" /verb open "%1", passando o nome do arquivo como parâmetro, abrindo com o Internet Explorer).
Usar arquivos com nomes longos
Enviado: 09 Mar 2010 10:06
por Pablo César
Não entendí direito a sua necessidade. Seria executar o arquivo XML ou apenas visualizar. Se for apenas visualizar arquivo XML e por se tratar de arquivo texto, eu exibiria através de TBROWSE, claro primeiramente importava o conteúdo do arquivo para um dbf com apenas um campo do tipo caracter e com o tamanho maximo para poder exbir sem quebras de paginas.
Re: Usar arquivos com nomes longos
Enviado: 09 Mar 2010 11:02
por billy1943
Obrigado aos amigos pelas respostas.
Deixe-me explicar melhor a minha idéia:
- através do Clipper eu posso filtrar melhor os arquivos que vão estar em diretório com centenas de arquivos .XML que foram saída do SEFAZ (emissão de NF-e)
- pela data eu posso entrar no Achoice com os arquivos do dia, por exemplo, e escolhido um, verifico, pelo IExplore o seu conteúdo e posso continuar a minha rotina dentro do Clipper, abrindo o arquivo pelas funções da LIB FLN e tirando informações que estão no .XML
- posso também, confirmando o conteúdo do .XML, mandá-lo por e-mail ao cliente comprador, pelo Clipper juntamente com o SMTSEND;
- resumindo, quero fazer tudo pelo Clipper sem ter de entrar no Windows Explorer, deslocar-me até à pasta onde se encontram os .XML e depois procurar por um nome que nada me informa qual o que eu preciso;
- somente para esclarecer verifiquem como que o SEFAZ nomeia os seus arquivos gerados:
135100016864174_v1.10-procNFe.xml
que é o número do protocolo de autorização de uso.
- assim, se eu conferir que determinado arquivo se refere à uma NF, posso trabalhar com seus dados normalmente e sem erros
Re: Usar arquivos com nomes longos
Enviado: 09 Mar 2010 18:07
por billy1943
Obrigado pelas dicas.
Estudei-as e utilizei a lib LFN e as seguintes funções:
LF_SUPPORT = checa que seu sistema suportará nomes longos
LF_DIRECTORY = cria a matriz dos arquivos que atenderem os requisitos (tipo, etc.)
LF_MEMOREAD = permite criar uma variável com o conteúdo do arquivo selecionado
A variável que for criada com a função acima poderá ser editada com a função MEMOEDIT normal do Clipper
Tenho agora condições de pesquisar a variável extraindo delas elementos para acessar o meu sistema e utilizar o arquivo para outras finalidades.
Consegui também abrir o arquivo .XML simulando o IE.
Resolvido.