...
O ponto de entrada receberá por parâmetro a query que será executada, então no ponto de entrada o usuário poderá acrescentar condições na clausula Where, como por exemplo, filtro por um campo de usuário criado na tabela CT2-Lançamentos Contábeis.
O retorno da query será sempre o primeiro registro de um lote e sublote agrupado, portanto a condição adicionada ao ponto de entrada ainda respeitará os parâmetros da rotina, não sendo determinante na efetivação ou não de um registro.
Neste exemplo utilizaremos acrescentar um filtro por um campo de usuário Caractere 1 posição com título "Filtro Usr." (campo: CT2_CPOUSR C 1) cujo conteúdo esteja "1".
...
Informações |
---|
|
CT350QRY – Manipular a query recebida como parâmetro e retornar a mesma alterada conforme necessidade do usuário.
Características do Requisito Descrição: | O ponto de entrada CT350QRY permite manipular a query recebida como parâmetro e retornar a mesma alterada, conforme necessidade do usuário na rotina CTBA350-Efetivação de Pré-Lançamento. | Eventos: | ExistBlock("CT350QRY") | Programa Fonte: | CTBA350.PRW | Função (PE) : | CT350QRY() – Recebe e permite manipular a query para filtro da rotina CTBA350-Efetivação de Pré-lançamento e retorna a query já alterada. | Parâmetros: | Nome | Tipo | Descrição | Obrigatório | cQuery | Caractere | String com query original a ser executada como filtro na rotina de efetivação de Pré-Lançamento.[1] = Estrutura do Campo 1 | SIM |
| Retorno: | Nome | Tipo | Descrição | Obrigatório | cQuery | Caractere | String com query já alterada e acrescentado condições na clausula Where que será executada como filtro na rotina de efetivação de Pré-Lançamento. | SIM |
|
Bloco de código |
---|
language | cpp |
---|
theme | RDark |
---|
title | Exemplo de PE |
---|
linenumbers | true |
---|
collapse | true |
---|
| // Altera clausula where da query de filtro da rotina ctba350 - Efetivação de pré-lançamento
#Include "Protheus.ch"
User Function CT350QRY()
Local aArea := GetArea()
Local cQueryAux:= PARAMIXB[1]
Alert("Evidencia do Ponto de Entrada : CT350QRY")
cQueryAux:= StrTran(cQueryAux, " AND D_E_L_E_T_ = ' ' ", " AND CT2_CPOUSR = '1' AND D_E_L_E_T_ = ' ' ")
RestArea(aArea)
Return cQueryAux
|
|
...