Árvore de páginas

POSGetOP- Manipular informações na pesquisa de ordens de produção no APP Minha Produção

Linha de Produto:

Protheus

Segmento:

Manufatura

Módulo:

SIGAPCP - Planejamento e Controle da Produção

Parâmetro(s):

NomeTipoDescrição
PARAMIXB[1]Array Objects

Array  de objetos com as ordens de produção que serão retornadas na pesquisa de ordens de produção dos formulários de apontamento de produção.

Cada posição do array contém um json object com as informações da ordem de produção, além de campos reservados para mostrar contéudo customizado no card da ordem de produção na pesquisa.

PARAMIXB[2]StringCódigo do formulário.

Idiomas:

Todos

País(es):

Todos

Banco(s) de Dados:

Todos

Sistema(s) Operacional(is):

Todos

Ponto de Entrada

Descrição:

O ponto de entrada POSGetOP é executado na requisição de consulta das ordens de produção após informar os parâmetros de pesquisa.
Com este ponto de entrada, é possível adicionar e remover ordens de produção da pesquisa, além de poder adicionar de forma não obrigatória até duas informações por ordem de produção para mostrar no card da pesquisa.

As duas informações customizadas que poderão ser adicionadas a um card na pesquisa terão três atributos cada uma.

O primeiro é "CustomLabel", que é referente a um rótulo ou descrição do valor que será adicionado. 

O segundo é "CustomValue", que é referente ao valor vinculado ao rótulo criado. Ex.: oJson["CustomLabel"] := "Máquina", oJson["CustomValue"] := "Injetora".

O terceiro é "CustomLink", que é referente ao link que será aberto no navegador quando o usuário clicar no campo de valor.

Obs.:

Para mostrar a informação customizada no card de pesquisa, o único atributo de preenchimento obrigatório é o "CustomValue".

Se o atributo "CustomLink" for informado, o atributo "CustomValue" será um link que será aberto no navegador, caso contrário, será apenas um campo texto.

Localização:

API ProductionOrdersSearch, método GET productionordermaster - Responsável por devolver as ordens de produção que se encaixam nos parâmetros da pesquisa.

Eventos:

Não se aplica.

Programa Fonte:ProductionOrdersSearch.PRW

Sintaxe:

POSGetOP( ) --> aItemsObj

Retorno:
NomeTipoDescriçãoObrigatório
aItemsObjArray Objects

Array de objetos que será retornado pela api para apresentar a consulta de ordens de produção no aplicativo Minha Produção. Neste array é possível adicionar e remover ordens de produção da pesquisa, além de adicionar até duas informações por ordem de produção para mostrar no card da pesquisa.
Mesmo que o array não seja alterado, ele deve ser retornado no mesmo formato para que possa apresentar a consulta corretamente.

Sim
Observações:

Não é permitida a utilização de qualquer componente de interface gráfica nesse ponto de entrada, visto que a função será executada durante uma requisição REST.

Exemplo
#INCLUDE "TOTVS.CH"
  
User Function POSGetOP()
    Local aItemsOP  := PARAMIXB[1]
    Local cForm     := PARAMIXB[2]
    Local nIndItem  := 0
    Local nLenArr   := Len(aItemsOP)

    For nIndItem := 1 To nLenArr
        If cForm == "0000000002"
            SH8->(dbSetOrder(1))
            If SH8->(dbSeek(xFilial("SH8")+aItemsOP[nIndItem]["ProductionOrderNumber"]+aItemsOP[nIndItem]["ActivityCode"]))
                aItemsOP[nIndItem]["CustomLabel1"] := "Recurso"
                aItemsOP[nIndItem]["CustomValue1"] := SH8->H8_RECURSO + " " + POSICIONE("SH1",1,xFilial("SH1")+SH8->H8_RECURSO,"H1_DESCRI")
                aItemsOP[nIndItem]["CustomLink1"]  := ""
                aItemsOP[nIndItem]["CustomLabel2"] := "Início Carga"
                aItemsOP[nIndItem]["CustomValue2"] := dToC(SH8->H8_DTINI) + " " + SH8->H8_HRINI
                aItemsOP[nIndItem]["CustomLink2"]  := ""
            EndIf
        EndIf

        If AllTrim(cForm) == "030101"
           aItemsOP[nIndItem]["CustomLabel1"] := ""
           aItemsOP[nIndItem]["CustomValue1"] := "Pesquisa produto no Google"
           aItemsOP[nIndItem]["CustomLink1"]  := "http://www.google.com.br/search?q=" + AllTrim(aItemsOP[nIndItem]["ItemCode"])
        EndIf
    Next nIndItem
Return aItemsOP