Histórico da Página
...
Esta API tem como objetivo incluir a opção de anexar arquivos em uma ordem de compra bem como ser possível realizar ações de consulta, filtro, exclusão, download e upload.validar as regras de negócio dos arquivos de compras que serão anexados pela api de documentos hubapi/apidocuments.
Esta api recebe os parâmetros enviados pela cdp/api/v1/supplyDocuments , faz as validações necessárias nos métodos e depois envia os parâmetros necessários para a api de documentos hubapi/apidocuments. Nesta apidocuments (api do HUB), serão realizados os métodos de inclusão, exclusão, download, upload e consulta dos anexos dos documentos.
Para maiores informações sobre:
- cdp/api/v1/supplyDocuments: supplyDocuments - Anexos de Suprimentos (Compras, Contratos, entre outros)
- hubapi/apiDocuments: https://tdn.totvs.com/pages/viewpage.action?pageId=675561040
Funcionamento
A API fornece uma série de métodos que podem ser executados individualmente para apresentação de anexos na tela do documento.
...
| pi-metadata-v1 | |||||||||||||
Requisito | Nenhum. | ||||||||||||
Descrição | Repassa o parâmetro do tipo de evento recebido pela API de comunicação (cdp/api/v1/supplyDocuments) para a API de documentos (hubapi/apiDocuments) chamando o método pi-metadata-v1. Retorna o metadados com os campos e ações ativos referentes a tela de Listagem ou Edição, dependendo de qual tipo foi enviado pela requisição, para a montagem dinâmica da tabela tela com as informações vindas do backend. | ||||||||||||
Parâmetros | Tipo | Input/Output | Descrição | ||||||||||
oInput | JsonObject | INPUT | Parâmetros para a busca de metadados: pathParams: Informar: metadata. queryParams → type: Utilizando este atributo com uma das opções abaixo permite retornar as informações de:
| ||||||||||
| cEvent | Character | INPUT | Identifica qual o tipo de evento vindo do queryParams para a busca do metadado correto. | ||||||||||
| cVersion | Character | INPUT | Identifica a versão da API. | ||||||||||
| oOutput | JsonObject | OUTPUT | Retorno contendo o metadados com campos e ações conforme parâmetros recebidos:
Para verificar o que significa cada campo de listagem, conferir abaixo: Descrição dos campos:
| ||||||||||
| RowErrors | Temp-table | OUTPUT | Informações sobre os erros ocorridos durante o processo de busca dos dados. | ||||||||||
Retorno | Retorna informações do metadados ou erros ocorridos durante a busca | ||||||||||||
...
| pi-query-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) após a execução das validações de restrição, chamando o método pi-query-v1. Retorna a lista de anexos relacionados a um documento. | ||||||||||||
Parâmetros | Tipo | Input/Output | Descrição | ||||||||||
oInput | JsonObject | INPUT | Parâmetros para a busca de anexos: queryParams: → processType=: Tipo do processo vinculado ao documento, sendo "1" a Ordem de Compra, com base na include uninc/i01un403.i. → processKey=: Código da chave do processo, identifica o processo ao qual o anexo pertence. A chave pode ou não ser composta. Caso seja, será separada por pipe "|" e deve ser enviada no formato encode. No exemplo abaixo, a chave "1234%7CABC" está no formato encode e corresponde a chave composta: "1234|ABC".
A consulta também permite a pesquisa por campos. Os parâmetros são os mesmos utilizados na queryParams de busca, sendo apenas adicionando o "search" na requisição juntamente com o critério de filtro que pode ser: nome do anexo, descrição do anexo ou usuário criador. No exemplo abaixo está sendo solicitada uma consulta utilizando um filtro para mostrar apenas os documentos anexados pelo usuário "super".
| ||||||||||
| aResult | JsonArray | OUTPUT | Retorno do processo, contendo os itens da listagem de anexos conforme parâmetros enviados.
Para verificar o que significa cada campo, conferir na descrição das temp-tables , conferir no final desta documentação : ttDocumentFile: Contém os campos a serem retornados na busca dos documentos do processoa descrição dos campos da temp-table : ttDocumentFile. | ||||||||||
| lHasNext | Logical | OUTPUT | Indica se existem mais registros a serem mostrados na página. | ||||||||||
| iTotalHits | Integer | OUTPUT | Contagem do total de registros encontrados. | ||||||||||
| RowErrors | Temp-table | OUTPUT | Informações sobre os erros ocorridos durante o processo. | ||||||||||
Retorno | Retorna a lista de arquivos relacionados a um documento ou erros ocorridos durante a busca. | ||||||||||||
...
| pi-upload-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-upload-v1. Retorna informações do arquivo em que o upload está sendo efetuado. | |||||||
Parâmetros | Tipo | Input/Output | Descrição | |||||
oInput | JsonObject | INPUT | Parâmetros para o upload: pathParams: Informar: upload. queryParams → files=: Arquivo a ser efetuado o upload, sendo enviado também como parâmetro. Exemplo abaixo do formato de requisição com arquivo enviado como parâmetro:
| |||||
| oOutput | JsonObject | OUTPUT | Informações do arquivo:
Para verificar o que significa cada campo, conferir abaixo: Descrição dos campos:
| |||||
| RowErrors | Temp-table | OUTPUT | Informações sobre os erros ocorridos durante o processo de upload. | |||||
Retorno | Retorna informações do nome do arquivo e seu conteúdo em base64 ou erros ocorridos durante o processo. | |||||||
...
| pi-download-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-download-v1. Também realiza validações de restrição dos usuários em relação a menu e processos. Retorna informações do arquivo em que o download está sendo efetuado. | |||||||
Parâmetros | Tipo | Input/Output | Descrição | |||||
oInput | JsonObject | INPUT | Parâmetros para download do anexo: pathParams: Informar: download e ID do documento.
| |||||
| oOutput | JsonObject | OUTPUT | Retorno das informações do arquivo que está sendo realizado o download:
Para verificar o que significa cada campo, conferir abaixo: Descrição dos campos:
| |||||
| RowErrors | Temp-table | OUTPUT | Informações sobre os erros ocorridos durante a busca dos códigos dos anexos. | |||||
Retorno | Retorna informações de nome e conteúdo do anexo que está sendo feito download ou erros ocorridos durante o processo. | |||||||
...
| 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: ID do anexo.
Parâmetros para eliminação de anexo em lote: Payload: Informar os IDs a serem eliminados:
| |||||||||||||||
| oOutput | JsonObject | OUTPUT | 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). | |||||||||||||||
| RowErrors | Temp-table | OUTPUT | 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.
Para verificar o que significa cada campo, conferir nas temp-tables no final desta documentação:
| |||||||||||||||
| ListaIdsExcluidos | Character | OUTPUT | IDs 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. | |||||||||||||||
| Retorno | Erros ocorridos durante a exclusão individual ou em lote identificando qual o id com erro e id's dos documentos excluídos com sucesso. | |||||||||||||||||
...
| pi-create-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-create-v1. Também realiza validações de restrição dos usuários em relação a menu e processos. Retorna informações sobre o anexo criado. | |||||||
Parâmetros | Tipo | Input/Output | Descrição | |||||
oInput | JsonObject | INPUT | Parâmetros para criação: Payload:
Descrição dos campos do payload:
| |||||
| oOutput | JsonObject | OUTPUT | Informações do anexo criado:
Para verificar o que significa cada campo conferir no final desta documentação o detalhamento dos campos da temp-table : ttDocumentFile . | |||||
| RowErrors | Temp-table | OUTPUT | Informações sobre os erros ocorridos durante a criação de arquivo. | |||||
Retorno | Informações do anexo criado ou erros ocorridos durante o processo. | |||||||
...