Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

Ponto de Entrada GP690FIL - Alterar filtro do cálculo de dissídio


Ponto de Entrada

Descrição:

Este ponto de entrada permite alterar filtro do cálculo de dissídio

Localização:

GPEM020

GPEM690

Eventos:

GPEM020

GPEM690

Programa Fonte:

GPEM020.PRX

GPEM690.PRX

Função:

GPEM020

GPEM690

Retorno:

cFiltro - Filtro do cálculo

 

Exemplo:

#INCLUDE "PROTHEUS.CH"
User Function GP690FIL()

Local nTipo     := Paramixb[1]
Local cFiltPad  := Paramixb[2]
Local xRet        := Nil

//Filtro SRA (em linguagel SQL)
If nTipo == 1
    xRet    := "%(RA_FILIAL BETWEEN '01' AND '99') AND RA_SITFOLH IN(' ') %"
//Filtro Cálculo (em linguagem AdvPL)
ElseIf nTipo == 2
    xRet    := "((RA_FILIAL >= '01' .AND. RA_FILIAL <= '99')) .AND. (RA_SITFOLH $ (' '))"
//Indica se irá processar o cálculo do registro ou não
ElseIf nTipo == 3
    xRet := .T.
EndIf

Return xRet


/*

No exemplo, é feito verificação da chamada do ponto de entrada:

1 - Filtro em SQL para a tabela SRA para processar os registros da filial 01 a 99 com o campo RA_SITFOLH em branco.

2 - Filtro em AdvPl para o cálculo para processar os registros da filial 01 a 99 com o campo RA_SITFOLH em branco.

3 - Retorno lógico indicando que irá processar todos os registros da SRA.


Obs.: após a compilação do ponto de entrada, é necessário que nas três execuções sejam retornado o conteúdo conforme formato explicado acima. Para manter a coerência do filtro, tanto o filtro em SQL quanto em AdvPL devem efetuar o mesmo filtro, com a particularidade de sintaxe de cada linguagem.

*/