Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

...

Esta api recebe os parâmetros das requisições enviados pela cdp/api/v1/supplyDocuments, faz as validações necessárias nos métodos e depois encaminha os parâmetros para a api de documentos hubapi/apidocuments. Na apidocuments (api do HUB), serão efetivados os métodos de inclusão, exclusão, download, upload e consulta dos anexos dos documentos.

Para maiores informações sobre:

...

:

...

...

pi-delete-v1

Requisito

Nenhum.

Descrição

Repassa os parâmetros recebidos pela API de comunicação (cdp/api/v1/supplyDocuments) para a API de documentos (hubapi/apiDocuments) chamando o método pi-delete-v1. Também realiza validações de restrição dos usuários em relação a menu e processos.

Retorna informações relacionadas a exclusão dos anexos.

Parâmetros

Tipo

Input/Output

Descrição

oInput

JsonObject

INPUT

Parâmetros para eliminação de anexo individual:

pathParams:  Informar: o documentId do anexo. 


Bloco de código
titleExemplo
{
    "pathParams": [
       "1234"
    ],
}


Parâmetros para eliminação de anexo em lote:

Payload: Informar a relação dos documentId's a serem eliminados:


Bloco de código
titleExemplo
[
   {"documentId": 552, 
   {"documentId": 553},
   {"documentId": 554}
]
oOutputJsonObjectOUTPUT

Informações da exclusão:

Não há retorno direto via Output nesse método. Em caso de sucesso na exclusão individual ou lote, será retornado vazio.

A montagem do JsonObject e seu retorno ocorrerá na API de comunicações, cdp/api/v1/supplyDocuments com base no conteúdo vindo da temp-table RowErrors. Para mais informações vide documentação : supplyDocuments - Anexos de Suprimentos (Compras, Contratos, entre outros)  Caso não haja nenhum erro na exclusão dos anexos, essa api retorna o código 204 (No Content) sem json de retorno.

RowErrorsTemp-tableOUTPUT 

Informações sobre os erros ocorridos durante o processo:

A temp-table vem populada com registros criados na API de documentos (hubapi/apiDocuments), devido a erros ocorridos durante o processo de exclusão de anexos.

Esses registros serão usados para a montagem da mensagem de erro que será retornada via OUTPUT de um JsonObject, na API de comunicação (cdp/api/v1/supplyDocuments), conforme cada caso específico:

  • Caso haja erro na tentativa de excluir um único registro inexistente, serão repassados para a API de comunicação (cdp/api/v1/supplyDocuments) valores na temp-table RowErrors para montagem e retorno do objeto Json. Exemplo do modelo da mensagem utilizando o registro 553:


Bloco de código
titleExemplo
{
  "detailedMessage": "Registro não encontrado na tabela anexo_docto - Id: 553.\n",
  "code": "57401",
  "message": "Registro não encontrado.",
  "type": "error"
}


  • Caso haja erro na tentativa exclusão de excluir todos os registros em lote, serão repassados para a API de comunicação (cdp/api/v1/supplyDocuments) valores na temp-table RowErrors para montagem e retorno do objeto Json. A api cdp/api/v1/supplyDocuments retorna o código 404 exibindo as mensagens de erros enviadas. Exemplo do modelo da mensagem utilizando os registros 552, 553 e 554:


Bloco de código
titleExemplo
{
    "detailedMessage": "Registro não encontrado na tabela anexo_docto - Id: 552.\n",
    "code": "57401",
    "details": [
        {
            "detailedMessage": "Registro não encontrado na tabela anexo_docto - Id: 553.\n",
            "code": "57401",
            "message": "Registro não encontrado.",
            "type": "error"
        },
        {
            "detailedMessage": "Registro não encontrado na tabela anexo_docto - Id: 554.\n",
            "code": "57401",
            "message": "Registro não encontrado.",
            "type": "error"
        }
    ],
    "message": "Registro não encontrado.",
    "type": "error"
}


  • Caso haja erro na eliminação de registros juntamente com sucesso na exclusão de registros em lote, serão repassados para a API de comunicação (cdp/api/v1/supplyDocuments) valores na temp-table RowErrors para montagem e retorno do objeto Json. Exemplo do modelo da mensagem utilizando os registros 637, 404 e 554:


Bloco de código
titleExemplo
{
    "_messages": [
        {
            "detailedMessage": "Registro não encontrado na tabela anexo_docto - Id: 554.\n",
            "code": 57401,
            "type": "error",
            "message": "Registro não encontrado."
        }
    ],
    "idList": "404,637"
}


Para verificar o que significa cada campo, conferir nas temp-tables no final desta documentação:

  • RowErrors: Contém os erros e informações sobre os erros ocorridos durante o processo.
  • Outros campos retornado no Json: 
    • detailedMessage: Mensagem detalhada do erro ocorrido.
    • code: Número do código do erro ocorrido.
    • message: Mensagem simplificada do erro.
    • type: Tipo da mensagem.
    • idList: Lista de IDs eliminados com sucesso em uma exclusão em lote com erros.


ListaIdsExcluidosCharacterOUTPUT relação dos documentId's que foram eliminados com sucesso. Serão apresentados na mensagem de retorno caso aconteça de ter erros e sucessos em uma mesma eliminação em lote.
RetornoErros ocorridos durante a exclusão individual ou em lote identificando qual o documentId com erro na mensagem e a lista dos documentId's dos documentos excluídos com sucesso. 

...