Árvore de páginas

01. DADOS GERAIS

Produto:

TOTVS Agro Beneficiamento

Linha de Produto:

Linha Protheus

Segmento:

Agroindústria

Módulo:SIGAAGR - Gestão de Agronegócio 
Função:AGRA900 - Ordem de carregamento
Ticket:10841520
Requisito/Story/Issue (informe o requisito relacionado) :DAGROOGD-12989


02. SITUAÇÃO/REQUISITO

Necessário incluir um ponto de entrada para manipular o filtro que é feito para a busca de lotes (NP9) na rotina de ordem de carregamento, via consulta F4. O ponto de entrada deve receber como parâmetro o filtro que foi montado pelo rotina e retornar o filtro conforme manipulado pelo ponto de entrada.

03. SOLUÇÃO

Adicionado na rotina de Ordem de carregamento(AGRA900) o ponto de entrada AGR900P7 para manipular o filtro que é feito para a buscar de lotes (NP9)  via consulta F4.

Este ponto de entrada é executado quando pressionado a tecla F4 no campo lote.

Abaixo segue exemplo. 

Exemplo PE AGR900P7
//EXEMPLO: Retira 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


04. DEMAIS INFORMAÇÕES

Não há.

05. ASSUNTOS RELACIONADOS