Olá pessoal.
Hoje vamos aprender como usar a função cGetFile através do F3 de um campo ou pergunte, isso pode ser util especialmente quando precisarmos selecionar um arquivo e não queremos digitar todo o caminho, mas sim apenas selecionar.
Abaixo o código fonte onde criamos a função que será utilizada no cadastro da consulta padrão (SXB).
#INCLUDE "TOTVS.CH" #INCLUDE "RWMAKE.CH" #INCLUDE "TOPCONN.CH" #Define ENTER Chr(13)+Chr(10) /*/{Protheus.doc} SPSF3DIA Função SPSF3DIA, para exemplificar como selecionar o diretório de um arquivo no SF3. @param Não recebe parâmetros @return Patch do arquivo selecionado @author Rafael Goncalves @owner sempreju.com.br @version Protheus 12 @since Mar|2021 /*/ User Function SPSF3DIA(cCampo) Local cRet := "" cRet := cGetFile(,"Selecione o diretorio",,"",.T.,GETF_NETWORKDRIVE+GETF_RETDIRECTORY+128) //Atualiza o campo com o caminho selecionado &(cCPO) := cRet Return (!Empty(cRet))
Agora que temos a função responsável por tratar e retornar o arquivo, vamos criar uma consulta padrão que utilizará essa função (tipo da consulta padrão será “especifica”) ao invés de uma tabela. Para isso no configurador, vamos criar o seguinte SXB.
Avançando vamos configurar a nossa função, enviando como parametro a função readvar(), e retornando o valor M->(readvar()).
Agora onde for necessário selecionar um arquivo (campo ou pergunte) através do SF3, vamos usar a nossa nova consulta, para demonstrar adicionei no campo A1_END, e o resultado foi o print abaixo
O código fonte desse e de outros exemplos podem ser encontrados em nosso git oficial.
Post interessantes:
Aprenda a instalar o Protheus no Windows aqui.
Aprenda a instalar o Protheus no Linux aqui.
configurar serviço rest aqui.
Retornar datas por extenso aqui.
Barras de progresso aqui.
Dúvidas e sugestões, entre em contato.
Obrigado e até a próxima!
0 comentário