Nesse vídeo demonstraremos a utilização da função PLSQuery, que serve para executar consultas SQL, e já executando internamente ChangeQuery e os TCSetField para definir campos como data.
Abaixo o código fonte desenvolvido para o exemplo em vídeo acima:
//Bibliotecas #Include "TOTVS.ch" /*/{Protheus.doc} User Function zExe388 Executa uma query, e onde houver campos do tipo data, já aplica a conversão @type Function @author Atilio @since 28/03/2023 @obs Função PLSQuery Parâmetros Query SQL Alias que será aberto Define se irá gerar um log da query (com tempo de execução) na pasta logpls dentro da Protheus Data Nome do arquivo de log caso seja para gerar Retorno Função não tem Retorno **** Apoie nosso projeto, se inscreva em https://www.youtube.com/TerminalDeInformacao **** /*/ User Function zExe388() Local aArea := FWGetArea() Local cQryAux := "" //Busca todos os produtos que não estejam bloqueados cQryAux := " SELECT " + CRLF cQryAux += " B1_COD, " + CRLF cQryAux += " B1_DESC, " + CRLF cQryAux += " B1_UCOM, " + CRLF cQryAux += " SB1.R_E_C_N_O_ AS SB1REC " + CRLF cQryAux += " FROM " + CRLF cQryAux += " " + RetSQLName("SB1") + " SB1 " + CRLF cQryAux += " WHERE " + CRLF cQryAux += " B1_FILIAL = '" + FWxFilial("SB1") + "' " + CRLF cQryAux += " AND B1_MSBLQL != '1' " + CRLF cQryAux += " AND SB1.D_E_L_E_T_ = ' ' " + CRLF PLSQuery(cQryAux, "QRY_AUX") //Se houver dados If ! QRY_AUX->(EoF()) //Percorre os dados da query While ! QRY_AUX->(EoF()) /* Suas customizações */ QRY_AUX->(DbSkip()) EndDo EndIf QRY_AUX->(DbCloseArea()) FWRestArea(aArea) Return
Bom pessoal, por hoje é só.
Abraços e até a próxima.