Histórico da Página
...
Ponto de entrada para manipulação da condição da consulta (Query) principal do Extrator LCDPR e / ou substituição do campo Histórico (E5_HISTOR) por outro histórico customizado, além de permitir a manipulação dos campos selecionados nessa consulta.
03. SOLUÇÃO
Ponto de entrada (PE) F820Qry criado para receber a condição padrão da consulta através de parâmetro (cCond) e manipulá-la (modificá-la ou até substituí-la) a fim de atender a uma necessidade específica de filtro das informações para o Livro Caixa Digital do Produtor Rural, além dos campos (cSelect) selecionados na consulta.
Nota: os campos recebidos e devolvidos por parâmetro precisam respeitar a ordem padrão.
Exemplo:
Compilar a função de usuário:
...
#Include "Protheus.ch"
#Include "rwmake.ch"
User Function F820Qry()
Local cCond Local cCond := ParamIXB ParamIXB[1] // Condição (cláusula WHERE da query) padrão para geração dos movimentos financeiros LCDPR.Local cSelect := ParamIXB Condição (cláusula WHERE da query) padrão para geração dos movimentos financeiros LCDPR.
Local cSelect := ParamIXB[2] // Campos da consulta
Local aRet Campos da consulta
Local aRet := {}
Local cSelUsr Local cSelUsr := " "cSelect // Padrão Padrão: SUBSTRING SUBSTRING(E5_DATA,7,2) DIA, SUBSTRING(E5_DATA, 5, 2) || SUBSTRING(E5_DATA, 1, 4) MES_ANO, E5_DATA DDATA, "
// TRFIL.COD FILCOD, FVV.FVV_PARTIC AS PERC, TRBCO.COD BANCO, E5_PREFIXO, E5_NUMERO NUMDOC, E5_HISTOR HIST, SA1.A1_CGC CNPJCLI, SA2.A2_CGC CNPJFOR, "
// E5_TIPODOC TPDOC, E5_TIPO, E5_RECPAG RECPAG, E1_VALOR, E2_VALOR, E1_SALDO SLDREC, E2_SALDO SLDPAG, E5_MOTBX, SE5.R_E_C_N_O_ REC, E5_CLIFOR CLIFOR, "
// E5_VALOR AS VALOR "
// , E5_CGC (campo disponível a partir do dicionário do leiaute 1CGC (campo disponível a partir do dicionário do leiaute 1.3)
cCond := " E5 E5_NATUREZ NATUREZ = 'NTLCDPRESP' "
aAdd(aRet, cCond cCond)
aAdd(aRet, " E5 E5_BENEF BENEF + ' - ' + E5 E5_IDORIG IDORIG ") // Parâmetro que substitui a impressão do histórico do título (campo E5 Parâmetro que substitui a impressão do histórico do título (campo E5_HISTOR).
aAdd(aRet, " cSelUsr " cSelUsr) // Parâmetro para definir tratativas na consulta principal do relatório, sempre respeitando a estrutura padrão dos campos da consulta.Return aRet Parâmetro para definir tratativas na consulta principal do relatório, sempre respeitando a estrutura padrão dos campos da consulta.
Return aRet
Onde o 'cCond' recebido por parâmetro é a cláusula Where padrão do Extrator LCDPR. e 'cSelect' contém os campos utilizados na primeira parte da consulta do Extrator. Como a consulta contém alguns UNION em sua estrutura, essa ordem padrão deve ser mantida.
04. DEMAIS INFORMAÇÕES
Retorno do PE:
cCond (posição 1ª do aRet[1]): condição escrita (em formato de consulta SQL) para filtragem nos dados da base de forma customizada; e
aRet[2]: é o campo (ou conjunto de campos) que irão substituir a informação contida no campo E5_HISTOR de cada movimento financeiro (SE5); e
cSelUsr (posição 3ª do aRet): campos selecionados na consulta padrão dos movimentos financeiros.
05. ASSUNTOS RELACIONADOS
...