Árvore de páginas

Ponto de Entrada para Requisição de Itens Adicionais à produção de Pluma de Algodão

Características do Requisito

Linha de Produto:

Microsiga Protheus

Segmento:

Agroindústria

Módulo:

SIGAAGR

Rotina:

Rotina

Nome Técnico

Encerramento

AGRA620

Ponto de Entrada:

AGR620RQ

País(es):

Todos

Ponto de Entrada

Descrição:

Ponto de Entrada para manipulação dos dados de requisição dos itens adicionais na produção de pluma.

Localização:

Rotina de Requisição de Itens Adicionais.

Eventos:

O Ponto de Entrada é executado antes da chamada da rotina de requisição, desde que esteja configurada a requisição de itens adicionais para o produto designado como Pluma, no conjunto indicado no beneficiamento.

Programa Fonte:

AGRA620

Função:

AGRA620

Retorno:

Nome

Tipo

Descrição

Obrigatório

aRet

Array

Array contendo os dados que serão enviados à rotina de Requisição.

Sim



Atenção

A partir da Release P12.1.2210 o PE AGR620RQ sofreu ajustes, devido a substituição da chamada da rotina MATA240 para MATA241 para inclusão das requisições no estoque, onde no ponto de entrada será enviado um array contendo o array de cabeçalho e itens da requisição para manipulação.  E deverá retornar um array com o cabeçalho e itens respectivamente.



Exemplo Release P12.1.033 e inferiores

User Function AGR620RQ()
    Local aRet := aClone(PARAMIXB[1])
    Local cConjunto := PARAMIXB[2]
    Local nX    := 0
    Local nY    := 0

    /**faz validações e tratamentos necessarios para o registro
        Exemplo: ***/
    For nX := 1 to Len(aRet)
        
        For nY := 1 to Len(aRet[nX])
            If aRet[nX,nY,1] == "D3_LOCAL"
                aRet[nX,nY,2] := "02" //Altera local de requisição
            Endif
        Next nY

        aadd(aRet[nX] ,{"D3_CC" ,"000000001", nil})
        
    Next nX

Return aRet


Exemplo A partir da Release P12.1.2210

#INCLUDE "PROTHEUS.CH"
#INCLUDE "TBICONN.CH"

User Function AGR620RQ()
    Local aRet := aClone(PARAMIXB[1])
    Local cConjunto := PARAMIXB[2]
    Local aCab  := {}
    Local aItem :={}
    Local nX    := 0
    Local nY    := 0 

    /**faz validações e tratamentos necessarios para o cabeçalho(aCab) e item do cabeçalho(aItem)
        Exemplo: *****/
    For nX := 1 to Len(aRet)
        aCab  := aRet[nX][1]
        aItem := aRet[nX][2]

        For nY := 1 to Len(aItem)
            If aItem[nY,1] == "D3_LOCAL"
                aItem[nY,2] := "02" //Altera local de requisição
            Endif
        Next nY
    
        aadd(aItem ,{"D3_CC","000000001", Nil})
        aadd(aItem ,{"D3_OBS","TESTE PE AGR620RQ",Nil})
                  
        aRet[nX] := {aCab, aItem}

    Next nX
    

Return aRet