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:
- Ordem de Produção
- 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.
- 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.
- 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.
- Código do Produto
- 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.
- 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.
- 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.
- 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.
- 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:
TAG | Nome | Campo |
---|---|---|
ProductionOrderNumber | Ordem de Produção | SC2 → C2_FILIAL+C2_NUM+C2_ITEM+C2_SEQUEN+C2_ITEMGRD |
ItemCode | Código do Produto da OP | SC2 → C2_PRODUTO |
ItemDescription | Descrição do Produto da OP | SB1 → B1_DESC |
Quantity | Quantidade Prevista da OP | SC2 → C2_QUANT |
ProductionQuantity | Quantidade Produzida da OP | SC2 → C2_QUJE |
StartOrderCPDate | Data Prevista de Início da OP | SC2 → C2_DATPRI |
EndOrderCPDate | Data Prevista de Término da OP | SC2 → C2_DATPRF |
StartOrderDate | Data 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) |
EndOrderDate | Data de Término Real da OP | SC2 → C2_DATRF |
StatusOrderType | Status da OP | Mesma regra da função A650DefLeg utilizada para carregar a legenda no MATA650. |
ListOfOperation | Lista 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 - Split | Split da Operação | Tipo 3: Em branco Tipo 4: CYY → CYY_IDATQO |
ListOfOperation - ActivityCode | Código da Operação | Tipo 3: SHY → HY_OPERAC / SG2 → G2_OPERAC Tipo 4: CY9 → CY9_CDAT |
ListOfOperation - ActivityDescription | Descrição da Operação | Tipo 3: SHY → HY_DESCRI / SG2 → G2_DESCRI Tipo 4: CY9 → CY9_DSAT |
ListOfOperation - ActivityQuantity | Quantidade Prevista da Operação/Split | Tipo 3: SC2 → C2_QUANT Tipo 4: CYY → CYY_QTAT |
ListOfOperation - ReportQuantity | Quantidade Produzida da Operação/Split | Tipo 3: SH6 → SUM(H6_QTDPROD) + SUM(H6_QTDPERD) Tipo 4: CYY → CYY_QTATAP + CYY_QTATRF |
ListOfOperation - StartActivityDate | Data de Início Real da Operação/Split | Tipo 3: SH6 → MIN(H6_DTAPONT) Tipo 4: CYY → CYY_DTBGAT |
ListOfOperation - EndActivityDate | Data 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
- Minha Produção_
- Pontos de entrada
- POSFilOp - Filtrar informações da Consulta de OP pelo APP Minha Produção