O processo de integração do módulo Inspeção de Processos (SIGAQIP) do ERP TOTVS Protheus com o App Mobile Minha Produção se dá através do uso de API's REST. A TOTVS disponibiliza o uso destas API's para clientes que desejaram realizar diretamente a integração com o processo de inspeção. Portanto, o cliente deve seguir as instruções apresentadas neste tutorial. Informações |
---|
title | Pré-Requisitos Uso de API's |
---|
| - Configuração do servidor REST no ambiente, seguir instruções da documentação oficial: 1. Configuração do REST do Protheus;
- Atualização do RPO com versão da expedição contínua igual ou superior a: DMANQUALI-4478;
- Utilização dos métodos GET e POST conforme especificação padrão "TOTVS - RESTFul API" e exemplos a seguir;
|
Deck of Cards |
---|
history | false |
---|
id | Detalhamento_APIs |
---|
effectType | fade |
---|
| Card |
---|
id | Lista_APIs |
---|
label | Lista de API's e Endpoints Disponíveis |
---|
title | Lista de API's e Endpoints Disponíveis |
---|
| Deck of Cards |
---|
history | false |
---|
id | Principais_Campos |
---|
effectType | fade |
---|
| Card |
---|
id | API_1 |
---|
label | Inspeções de Processos por Operação |
---|
title | Inspeções de Processos por Operação |
---|
| - TOTVS - RESTFul API:
- Métodos:
- GET: Retorna Lista Inspeções de Processos Pendentes:
- Endpoint: processinspections/api/qip/v1/pendinglist/{Login}/{Order}/{OrderType}/{Page}/{PageSize}
- Objetivo: permitir a consulta das inspeções de processos pendentes a nível de ordem de produção + operação;
- PathParam:
- Login: referência de login do usuário do configurador Protheus em QAA_LOGIN (obrigatório). Ex: ADMINISTRADOR;
- Order: referência de campos para ordenação dos resultados. Ex: "productionOrderID,operationID,lot";
- OrderType: referência de ordenação dos resultados, Ex 1: vazio ou "ASC" para crescente. Ex 2: "DESC" para decrescente.
- Page: número de página atual da paginação de resultados; Ex: 1.
- PageSize: tamanho da página considerado na paginação de resultados; Ex: 5;
- QueryParam:
- Fields: referência de "Código API" para os campos que devem ser retornados. Default: vazio = todos;
- GET: Pesquisa Inspeção:
- Endpoint: processinspectionsapi/qip/v1/search/{Login}/{Text}/{Order}/{OrderType}/{Page}/{PageSize}
- Objetivo: permitir a pesquisa por Produto ou OP das inspeções de processos a nível de ordem de produção + operação;
- PathParam:
- Text: texto para pesquisa por OP ou produto;
- Demais conforme anterior;
- QueryParam:
- Fields: referência de "Código API" para os campos que devem ser retornados. Default: todos;
- GET: Existe Usuário:
- Endpoint: processinspectionsapiapi/qip/v1/userExist/{Login}
- Objetivo: permitir identificar se o usuário possui cadastro no módulo inspeção de processos;
- PathParam:
- Login: referência de login do usuário do configurador Protheus em QAA_LOGIN (obrigatório). Ex: ADMINISTRADOR;
Mapa de Campos Padrões: Descrição | Código API | Referência Protheus | Tipo |
---|
Código do Produto | productID | QPK_PRODUT | C | Descrição do Produto | product | B1_DESC | C | Ordem de Produção | productionOrderID | QPK_OP | C | Código da Operação | operationID | QQK_OPERAC | C | Descrição da Operação | operation | QQK_DESCRI | C | Recurso | resource | H1_DESCRI | C | Quantidade | lotSize | QPK_TAMLOT | N | Código Unidade Medida | lotUnitID | QPK_UM | C | Unidade de Medida | lotUnit | AH_DESCPO | C | Lote | lot | QPK_LOTE | C | Número de Série | serialNumber | QPK_NUMSER | C | Data de Emissão | date | QPK_EMISSA | D | Cliente e Loja | customer | A1_COD + A1_LOJA + A1_NOME | C | Versão da Especificação | specificationVersion | QPK_REVI | C | Data da Produção | productionDate | QPK_DTPROD | D | Usuário Permitido | allowedUser | Referência existente de cLogin = QAA_LOGIN → true | L | Status: N = Não Iniciado I = Iniciado A = Aprovado R = Rejeitado U = Liberação Urgente C = Liberação Condicional | status | Regra de Negócio Interna | C | Recno Inspeção | recno | QQK.R_E_C_N_O_ | N |
|
Card |
---|
id | API_2 |
---|
label | Ensaios |
---|
title | Ensaios |
---|
| - TOTVS - RESTFul API:
- Métodos:
- GET: Retorna Lista de Ensaios das Inspeções de Processos:
- Endpoint: processinspectiontestapi/qip/v1/list/{Recno}/{Order}/{OrderType}/{Page}/{PageSize}
- Objetivo: permitir a consulta dos ensaios das inspeções de processos;
- PathParam:
- Recno: recno da inspeção - QPK.R_E_C_N_O_;
- Order: referência de campos para ordenação dos resultados. Ex: "title,laboratory";
- OrderType: referência de ordenação dos resultados, Ex 1: vazio ou "ASC" para crescente. Ex 2: "DESC" para decrescente.
- Page: número de página atual da paginação de resultados; Ex: 1.
- PageSize: tamanho da página considerado na paginação de resultados; Ex: 5;
- QueryParam:
- Fields: referência de "Código API" para os campos que devem ser retornados. Default: vazio = todos;
Mapa de Campos Padrões:
Descrição | Código API | Referência Protheus | Tipo |
---|
RECNO Inspeção | recnoInspection | QPK.R_E_C_N_O_ | N | RECNO Ensaio | recnoTest | QP7.R_E_C_N_O_ ou QP8.R_E_C_N_O_ | N | Código do Ensaio | testID | QP7_ENSAIO ou QP8_ENSAIO | C | Sequência do Laboratório | sequence | QP7_SEQLAB ou QP8_SEQLAB | N | Título do Ensaio | title | QP1_DESCPO | C | Quantidade de Medições | numberOfMensurements | QP1_QTDE* | N | Laboratório | laboratory | X5_DESCRI para X5_TABELA = 'Q2' | C | Especificação Resumida | summarySpecification | QP7_NOMINA QP7_LIE / QP7_LSE Ou QP8_TEXTO | C | Código Unidade de Medida | lotUnitID | QP7_UNIMED | C | Tipo de Controle | controlType | QP7_MINMAX | C | Limite Inferior Engenharia | lowerDeviation | QP7_LIE | C | Limite Superior Engenharia | upperDeviation | QP7_LSE | C | Tipo do Ensaio | testType | QP7 → N → Numérico QP8 → T → Texto | C | Status: A = Aprovado R = Reprovado P = Pendente N = Não Obrigatório | status | Regra de Negócio Interna | C |
|
Card |
---|
id | API_3 |
---|
label | Resultados das Inspeções |
---|
title | Resultados das Inspeções |
---|
| - TOTVS - RESTFul API:
- Métodos:
- GET: Retorna Resultado(s) da Inspeção de Processos:
- Endpoint: processinspectiontestresultsapi/api/qip/v1/result/{RecnoQPK}/{RecnosQPR}/{Order}/{Page}/{PageSize}
- Objetivo: permitir a consulta de uma relação específica de resultados de inspeção com base no RECNO da inspeção (RecnoQPK) e em lista de RECNOS das amostras (RecnosQPR);
- PathParam:
- RecnoQPK: recno da inspeção - QPK.R_E_C_N_O_ (obrigatório);
- RecnosQPR: recnos das amostras separados por ponto e virgula - QPR.R_E_C_N_O_;
- Order: referência de campos para ordenação dos resultados. Ex: "productionOrderID,operationID";
- OrderType: referência de ordenação dos resultados, Ex 1: vazio ou "ASC" para crescente. Ex 2: "DESC" para decrescente.
- Page: número de página atual da paginação de resultados; Ex: 1.
- PageSize: tamanho da página considerado na paginação de resultados; Ex: 5;
- QueryParam:
- Fields: referência de "Código API" para os campos que devem ser retornados. Default: vazio = todos;
- GET: Retorna Histórico de Resultados por Ensaio:
- Endpoint: processinspectiontestresultsapi/api/qip/v1/testhistory/{RecnoQPK}/{IDTest}/{Order}/{Page}/{PageSize}
- Objetivo: permitir a consulta do histórico de resultados de um ensaio específico com base no RECNO de uma inspeção (RecnoQPK) e no ID de um ensaio (IDTest, QP7_ENSAIO ou QP8_ENSAIO);
- PathParam:
- RecnoQPK: recno da inspeção - QPK.R_E_C_N_O_ (obrigatório);
- IDTest: código do ensaio relacionado QP7_ENSAIO ou QP8_ENSAIO (obrigatório);
- Demais conforme anterior;
- QueryParam:
- Fields: referência de "Código API" para os campos que devem ser retornados. Default: vazio = todos;
- GET: Retorna Histórico de Resultados da Inspeção de Processos:
- Endpoint: processinspectiontestresultsapi/api/qip/v1/history/{RecnoQPK}/{Order}/{Page}/{PageSize}
- Objetivo: permitir a consulta do histórico de resultados completo da inspeção de processos com base no RECNO de uma inspeção (RecnoQPK);
- PathParam:
- RecnoQPK: recno da inspeção - QPK.R_E_C_N_O_ (obrigatório);
- Demais conforme anterior;
- QueryParam:
- Fields: referência de "Código API" para os campos que devem ser retornados. Default: vazio = todos;
- POST: Salva Resultado(s):
- Endpoint: processinspectiontestresultsapi/api/qip/v1/save
- Objetivo: permitir salvar resultados de inspeção;
- QueryParam:
- items: array com relação de objetos json com os campos padrões a seguir:
- recnoInspection: RECNO da inspeção QPK.R_E_C_N_O_ (Obrigatório);
- recnoTest: RECNO do ensaio relacionado - QP7.R_E_C_N_O_ ou QP8.R_E_C_N_O_ (Obrigatório);
- measurementDate: data da amostra (facultativo);
- Ao não enviar o sistema considerará a data do recebimento da mensagem;
- measurementTime: hora da amostra (facultativo);
- Ao não enviar o sistema considerará a data do recebimento da mensagem;
- testType: tipo do resultado de ensaio (Obrigatório):
- QP7 → N → Numérico;
- QP8 → T → Texto;
- measurements: array com string de medições da amostra (Obrigatório quando testType = N);
- textStatus: status da amostra (Obrigatório):
- A = Aprovado;
- R = Reprovado;
- textDetail: justificativa de medições do tipo texto reprovadas(Obrigatório quando testType = N e textStatus = R);
- protheusLogin: login do usuário do Protheus (Obrigatório);
- recno: RECNO da amostra - QPR.R_E_C_N_O_ (facultativo)
- 0 → incluirá nova amostra;
- informado → editará uma amostra existente;
Mapa de Campos Padrões: Descrição | Código API | Referência Protheus | Tipo |
---|
RECNO Inspeção | recnoInspection | QPK.R_E_C_N_O_ | N | RECNO Ensaio | recnoTest | QP7.R_E_C_N_O_ ou QP8.R_E_C_N_O_ | N | Data da Amostra | measurementDate | QPR_DTMEDI | D | Hora da Amostra | measurementTime | QPR_HRMEDI | H | Código do Ensaiador | rehearserID | QPR_ENSR | C | Ensaiador | rehearser | QAA_NOME | C | Tipo do Ensaio | testType | QP7 → N → Numérico QP8 → T → Texto | C | Array de Medições | measurements | String com array de medições: QPS_MEDICA | C | Status da Amostra: A = Aprovado R = Reprovado | textStatus | QPR_RESULT | C | Justificativa Reprovação | textDetail | QPQ_MEDICA | C | Usuário Protheus | protheusLogin | QAA_LOGIN | C | RECNO Amostra | recno | QPR.R_E_C_N_O_ | N |
|
|
|
Card |
---|
id | Demonstrações via Postman |
---|
label | Demonstrações via Postman |
---|
title | Demonstrações via Postman |
---|
| - Build, RPO e LIB atualizados para versão mais recente no release 12.1.33;
- Servidor REST habilitado no AppServer do ambiente;
- Contrato TOTVS I ou Mobile*** (revisar);
- Host configurado no Mingle;
- Versão mais recente do APP Minha Produção instalada no dispositivo;
|
Card |
---|
id | Exemplos de Código: REST Client em ADVPL |
---|
label | Exemplos de Código: REST Client em ADVPL |
---|
title | Exemplos de Código: REST Client em ADVPL |
---|
| - Build, RPO e LIB atualizados para versão mais recente no release 12.1.33;
- Servidor REST habilitado no AppServer do ambiente;
- Contrato TOTVS I ou Mobile*** (revisar);
- Host configurado no Mingle;
- Versão mais recente do APP Minha Produção instalada no dispositivo;
|
|
|