Árvore de páginas


01. DADOS GERAIS

Produto:

TOTVS Manufatura

Linha de Produto:

Linha Protheus

Segmento:

Manufatura

Módulo:SIGAPCP - Planejamento e Controle da Produção
Função:ProductionOrderSearch
País:Brasil
Story:DMANSMARTSQUAD1-22359


02. SITUAÇÃO/REQUISITO

Criar o método ProductionOrderMaster na API ProductionOrderSearch para retornar uma lista com informações da ordens de produção e operações das ordens de produção.

03. SOLUÇÃO

Foi criado o método ProductionOrderMaster na API ProductionOrderSearch para retornar uma lista com informações da ordens de produção e operações das ordens de produção.


Parâmetros de envio: 

  • AppointmentType - Tipo do apontamento (opcional)
  • FilterSearch - Filtro de pesquisa para realizar a seleção das OPs e Operações (obrigatório)


JSON de Retorno:

[
    {
        "ItemCode": "331-PA         ",
        "StartOrderCPDate": "20211008",
        "EndOrderCPDate": "20211008", 
        "StartOrderDate": "20211008", 
        "EndOrderDate": "20211008",
        "ProductionQuantity": 10,
        "StatusOrderType": "6",
        "ProductionOrderNumber": "Y0245201001   ",
        "Quantity": 10,
        "ItemDescription": "331-PA                        ",
        "ListOfOperation": [
            {
                "Split": " ",
                "StartActivityDate": "20211008",
                "ActivityQuantity": 10,
                "ActivityCode": "10",
                "EndActivityDate": "20211008",
                "ReportQuantity": 13,
                "ActivityDescription": "OPER 10             "
            },
            {
                "Split": " ",
                "StartActivityDate": "20211008",
                "ActivityQuantity": 10,
                "ActivityCode": "20",
                "EndActivityDate": "        ",
                "ReportQuantity": 10,
                "ActivityDescription": "OPER 20             "
            }          
        ]
    }
]


Observações dos parâmetro de envio:

  • O tipo de apontamento é opcional e aceita os valores: 1 - Produção Simples; 3 - Produção Mod 2; 4 - Produção Chão de Fábrica, '  ' - Branco - Entende por Produção Simples.
  • A busca das OPs é realizada com base  no filtro de pesquisa enviado. O filtro pode ser uma Ordem de Produção e/ou Código do Produto, seguindo a regra:
  1. Ordem de Produção
    1. Primeiro é verificado se existe uma OP com o filtro enviado considerando a chave da OP (Número da OP + Item + Sequência + Item Grade). Se existir uma OP serão retornadas as informações desta OP.
    2. Caso não existir uma OP com o filtro enviado considerando a chave da OP (Número da OP + Item + Sequência + Item Grade), é verificado se existe uma OP considerando somente o número da OP. Se existir uma ou mais OPs serão retornadas as informações destas OPs.
    3. Se não existir OP com a chave completa da OP  (Número da OP + Item + Sequência + Item Grade) ou somente com o Número da OP, não é utilizado o campo Ordem de Produção para retornar as informações da OP e Operações da OP.
  2. Código do Produto
    1. Primeiro é verificado se existe uma OP com o filtro enviado considerando o código completo do produto. Se existir uma OP com este código de produto serão retornadas as informações desta OP.
    2. Caso não existir uma OP considerando o código completo do produto, será verificado se existe uma OP contendo uma parte deste código de produto. Se existir uma ou mais OPs serão retornadas as informações desta OP.
    3. Se não existir uma OP com o código do produto completo ou parte dele, não é utilizado o campo Produto para retornar as informações da OP e Operações da OP.
  3. Se existir Ordem de Produção e Produto que atenda o filtro enviado, serão retornadas as informações considerando o filtro de Ordem de Produção ou do Código do Produto. 
  4. Se não existir Ordem de Produção e Produto que atenda o filtro enviado, não é retornada nenhuma informação de Ordem de Produção.


Informações das TAGS do JSON de retorno:

TAGNomeCampo
ProductionOrderNumberOrdem de ProduçãoSC2 → C2_FILIAL+C2_NUM+C2_ITEM+C2_SEQUEN+C2_ITEMGRD
ItemCodeCódigo do Produto da OPSC2 → C2_PRODUTO
ItemDescriptionDescrição do Produto da OPSB1 → B1_DESC
QuantityQuantidade Prevista da OPSC2 → C2_QUANT
ProductionQuantityQuantidade Produzida da OPSC2 → C2_QUJE
StartOrderCPDateData Prevista de Início da OPSC2 → C2_DATPRI
EndOrderCPDateData Prevista de Término da OPSC2 → C2_DATPRF
StartOrderDateData de Início Real da OP

Produção Simples: MIN(D3_EMISSAO)

Produção Mod 2: MIN(H6_DTAPONT)

Produção Chão de Fábrica: MIN(CYV_DTRP)

EndOrderDateData de Término Real da OPSC2 → C2_DATRF
StatusOrderTypeStatus da OPMesma regra da função A650DefLeg utilizada para carregar a legenda no MATA650.
ListOfOperationLista das Operações da OP

Será carregada a lista de operação somente para os tipos de apontamento:

3 - Produção Mod 2;

4 - Produção Chão de Fábrica;

ListOfOperation - SplitSplit da Operação

Tipo 3: Em branco

Tipo 4: CYY → CYY_IDATQO

ListOfOperation - ActivityCodeCódigo da Operação

Tipo 3: SHY → HY_OPERAC / SG2 → G2_OPERAC

Tipo 4: CY9 → CY9_CDAT

ListOfOperation - ActivityDescriptionDescrição da Operação

Tipo 3: SHY → HY_DESCRI / SG2 → G2_DESCRI

Tipo 4: CY9 → CY9_DSAT

ListOfOperation - ActivityQuantityQuantidade Prevista da Operação/Split

Tipo 3: SC2 → C2_QUANT

Tipo 4: CYY → CYY_QTAT

ListOfOperation - ReportQuantityQuantidade Produzida da Operação/Split

Tipo 3: SH6 → SUM(H6_QTDPROD) + SUM(H6_QTDPERD)

Tipo 4: CYY → CYY_QTATAP + CYY_QTATRF

ListOfOperation - StartActivityDateData de Início Real da Operação/Split

Tipo 3: SH6 → MIN(H6_DTAPONT)

Tipo 4: CYY → CYY_DTBGAT

ListOfOperation - EndActivityDateData Fim Real da Operação/Split

Tipo 3: SH6 → MAX(H6_DTAPONT)

Tipo 4: CYY → CYY_DTEDAT


Observações das TAGs do JSON de retorno:

  • O Status da OP retorna um valor caractere com os seguintes valores: 1-Prevista; 2-Em aberto; 3-Iniciada; 5-Encerrada Parcialmente; 6-Encerrada Totalmente. Não existe o Status 4-Ocioasa conforme existe na legenda do MATA650 (Ordem de Produção). Se uma OP estiver com o Status Ociosa no MATA650, na API retornará com um dos valores citados anteriormente.
  • A Lista de Operações é carregada quando o Tipo do Apontamento for 3 - Produção Mod 2 ou 4 - Produção Chão de Fábrica. Quando o tipo for 3, as informações serão carregadas das tabelas SHY (Operações x Ordem) ou SG2 (Operações), conforme parametrização:
    • MV_APS = 'TOTVS' ou MV_PCPATOR = .T. - SHY

    • MV_APS <> 'TOTVS' e MV_PCPATOR = .F. - SG2
    • Se uma OP foi criada quando o sistema estava parametrizado para usar a SG2 e após isso foi alterado para usar a SHY, não serão apresentadas as operações desta OP. 
  • Foi criado o Ponto de Entrada POSFilOp onde é possível indicar se a OP selecionada irá ou não retornar no JSON de retorno.

04. DEMAIS INFORMAÇÕES

Não se aplica.

05. ASSUNTOS RELACIONADOS