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.
Funcionamento
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 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:
- 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/supplyDocuments) para a API de documentos (hubapi/apiDocuments) chamando o método pi-metadata-v1. Existem duas apis de comunicação:
Retorna o metadados com os campos e ações ativos referentes a tela de Listagem (list), Consulta (view) ou Edição (edit), 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:
Possui os mesmos campos de retorno do metadados "List", sendo que a diferença é que se trata de uma tela de Consulta apenas, então, neste caso, não estão disponíveis as ações ("actions" no json), ou seja, os botões "Novo" e "Excluir" não são carregados na tela. A requisição é igual ao do metadados List (passando no queryparams o type = list) da api supplyDocuments, apenas alterando a api de origem que é a supplyDocumentsView. No método pi-metadata da supplyDocumentsView é feito o tratamento onde, ao receber o tipo "list" ele envia o tipo "view" para a apiDocuments fazer o tratamento e omitir os campos referente as ações da tela e exibe seu respectivo título da página breadcrumb: Objeto com propriedades do breadcrumb, componente que gera uma estrutura de navegação que apresenta ao usuário a localização da URL atual, exibindo as antecessoras conforme é realizado a navegação na aplicação:items: Lista de itens do breadcrumb:. | ||||||||||||||||||||||
| 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 recebidoso parâmetro do tipo de evento recebido pela API de comunicação (cdp/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. Existem duas apis de comunicação:
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: →
Outros parâmetros que podem ser usados em conjunto com os queryParams de consulta dos anexos:
| ||||||||||
| 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 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 que 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 (cdpcdp/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/supplyDocuments) para a API de documentos (hubapi/apiDocuments) chamando o método pi-download-download-v1. Também realiza validações de restrição dos usuários em relação a menu e processosv1. Também realiza validações de restrição dos usuários em relação a menu e processos. Existem duas apis de comunicação:
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 o documentId 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 o documentId do anexo.
Parâmetros para eliminação de anexo em lote: Payload: Informar os IDs a relação dos documentId's 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) Caso não haja nenhum erro na exclusão dos anexos, essa api retorna o código 204 (No Content) sem json de retorno. | ||||||||||||||||
| 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(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 relação dos documentId's que foram eliminados com sucesso. Serão apresentado 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 eliminação via temp-table RowErrors.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. | ||||||||||||||||||
| 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 nas temp-tables no final desta documentação:
| |||||
| 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. | |||||||
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. | |||||||
| pi-valida | ||||
Requisito | Nenhum. | |||
Descrição | Realiza a verificação dos parâmetros passados no queryParams e pathParams dos métodos: pi-query-v1, pi-create-v1, pi-delete-v1 e pi-download-v1, validando se o tipo de processo é um processo válido e existente, caso contrário, a execução do método será interrompida já no começo. | |||
Parâmetros | Tipo | Input/Output | Descrição | |
| cType | Character | INPUT | Identificação do endpoint:
| |
| iDocumentId | Integer | INPUT | Id (campo num-id-docto da tabela arquivo-docto do documento a ser verificado. | |
| pi-valida | ||||
Requisito | Nenhum. | |||
Descrição | Realiza a verificação dos parâmetros passados na queryParams da pi-query-v1, para restrição de consulta, permitindo buscar apenas todos os documentos do tipo e chave de processo informados. | |||
Parâmetros | Tipo | Input/Output | Descrição | |
iProcessType | Integer | INPUT | Tipo do processo vindo da queryParams. Caso não tenha sido passado, e for o endpoint de "create" será retornado um erro. | |
| cProcessKey | Character | INPUT | Chave do processo vindo da queryParams. Caso não tenha sido passado, e for o endpoint de "create" será retornado um erro. | |
| RowErrors | Temp-table | OUTPUT | Informações sobre os erros ocorridos durante o processo. | |
Retorno | Informações sobre os erros ocorridos durante o processo.durante o processo. | |||
| pi-valida-ordem | ||||
Requisito | Nenhum. | |||
Descrição | Realiza a verificação das permissões do usuário logado em relação ao programa de ordens de compra. As validações ocorrem da seguinte forma:
| |||
| pi-valida-ordem | ||||
Requisito | Nenhum. | |||
Descrição | Realiza a verificação das permissões do usuário logado em relação ao programa de ordens de compra
| |||
Parâmetros | Tipo | Input/Output | Descrição | |
iProcessType | Integer | INPUT | Tipo do processo vindo da queryParams. | |
| cProcessKey | Character | INPUT | Chave do processo vindo da queryParams. | |
| RowErrors | Temp-table | OUTPUT | Informações sobre os erros ocorridos durante o processo. | |
Retorno | Informações sobre os erros ocorridos durante o processo. | |||
...
RowErrors | Entrada/Saída | |||
Temp-table com dados dos erros ocorridos durante o processo | Saída | |||
Atributo | Tipo | Descrição | Obrigatório | Evolução |
ErrorSequence | INTEGER | Número da sequência do erro | Sim | Não se aplica |
ErrorNumber | INTEGER | Código do erro | Sim | Não se aplica |
| ErrorDescription | CHARACTER | Descrição do erro | SimNão | Não se aplica |
| ErrorParameters | CHARACTER | Parâmetros da mensagem de erro | SimNão | Não se aplica |
| ErrorType | CHARACTER | Tipo do erro | SimNão | Não se aplica |
| ErrorHelp | CHARACTER | Texto de ajuda da mensagem de erro | SimNão | Não se aplica |
| ErrorSubType | CHARACTER | Subtipo do erro | SimNão | Não se aplica |
ttDocumentFile | Entrada/Saída | ||||
Temp-table com os campos a serem retornados na busca dos documentos do processo. | Saída | ||||
Atributo | Nome no Objeto | Tipo | Descrição | Obrigatório | Evolução |
num_id_docto | documentId | INTEGER | Número do ID do documento | Sim | Não se aplica |
cdn_tipo_processo | processType | INTEGER | Número do tipo do processo | Sim | Não se aplica |
| desc_tipo_proces | processTypeDescription | CHARACTER | Descrição do tipo do processo | Sim | Não se aplica |
| cod_chave_proces | processKey | CHARACTER | Código da chave do processo | Sim | Não se aplica |
| cod_usuar_docto | creationUser | CHARACTER | Código do usuário criador | Sim | Não se aplica |
| nom_usuar_docto | creationUserName | CHARACTER | Nome do usuário criador | Sim | Não se aplica |
| dtm_criac_docto | creationDatetime | DATETIME | Data e hora da criação | Sim | Não se aplica |
| nom_arq_docto | documentName | CHARACTER | Nome do documento | Sim | Não se aplica |
| nom_dir_docto | documentDir | CHARACTER | Caminho do diretório do documento | Sim | Não se aplica |
| ind_tam_docto | documentSize | CHARACTER | Tamanho do documento | SimNão | Não se aplica |
| des_docto | documentDescription | CHARACTER | Descrição do documento | SimNão | Não se aplica |