01. VISÃO GERAL
O ponto de entrada AGR900P7() esta disponível na rotina de ordem de carregamento(AGRA900). Este ponto de entrada é ativado ao pressionar a tela F4 sobre o campo Lote na grid "Itens da Ordem de Carregamento", permitindo manipular o filtro da query que gera os dados na tela de consulta de lotes de semente.
É passado para o ponto de entrada um array com uma string contendo o filtro da query usada na consulta de lotes de semente, o qual via o ponto de entrada poderá ser manipulado, e o retorno do ponto de entrada deverá ser uma string contendo o filtro da query.
Localização: | AGR900P7() | ||||||||
Programa Fonte: | AGRA900 - Ordem de Carregamento | ||||||||
Função: | Ponto de Entrada para a manipulação do filtro da query que gera os dados da tela de consulta de lotes de semente(NP9). | ||||||||
Retorno: |
|
02. EXEMPLO DE UTILIZAÇÃO
Neste exemplo é retirado da consulta o filtro da safra
User Function AGR900P7() Local cQuery := ALLTRIM(PARAMIXB[1]) //PARAMIXB[1] == String com os filtros da query usada na consulta Local nX := 0 Local aRet := {} if !EMPTY(cQuery) //quebra a string cQuery em array ao encontrar a string "AND" aRet := StrTokArr2( UPPER(cQuery), "AND" ) endIf If Len(aRet) > 0 cQuery := "" For nx := 1 To Len(aRet) //Caso não encontre a string "NP9_CODSAF" mantem valor do array no filtro para consulta if !Empty(aRet[nx] ) .and. AT("NP9_CODSAF",aRet[nx]) == 0 cQuery += " AND " + ALLTRIM( aRet[nx] ) EndIf Next nx EndIf Return cQuery