Estrutura Analítica
Cadastro de Estrutura Analítica
O endpoint PostAddAnalyticalStructure é responsável pelo cadastro de uma nova estrutura analítica no sistema MIMS.
Como cadastrar uma estrutura analítica
Request HTTP Post
| Tipo da Requisição | URL Exemplo |
|---|---|
| POST | {{url_base}}/PostAddAnalyticalStructure |
| Exemplo | http://seuIPePorta/datasnap/rest/RESTWebServiceMethods/"PostAddAnalyticalStructure" |
Parâmetros de Entrada
| Parâmetro | Tipo | Obrigatório | Descrição |
|---|---|---|---|
| BranchNo | String(25) | Sim | Código externo da filial |
| StructureNo | String(25) | Sim | Código externo da estrutura analítica |
| StructureName | String(20) | Sim | Descrição da estrutura analítica |
| ProductNo | String(25) | Sim | Código externo do produto |
| Standard | Boolean | Não | Flag que indica que esta é a estrutura padrão, ou seja, a versão que o produto passa a utilizar |
| SequenceByProductNo | Boolean | Não | Flag que indica se a sequência é por código do produto |
| OverwriteIfExists | Boolean | Não | Flag que indica que os dados devem ser sobrescritos caso o registro já exista |
| ItemList | AddAnalyticalStructureItemList | Sim | Lista de itens da estrutura analítica |
📝 Objeto AddAnalyticalStructureItemList
O objeto AddAnalyticalStructureItemList representa uma lista com os itens da estrutura analítica.
Parâmetros de Entrada
Parâmetro Tipo Obrigatório Descrição ItemNo String(25) Sim Código do item MaterialNo String(25) Sim Código externo do material Qty Float Sim Quantidade do material ProportionalToOneKilo Boolean Não Flag que indica se a quantidade é proporcional a um quilo ComposePrimaryTare Boolean Não Flag que indica se compõe a tara primária ApportionmentPerUnit Boolean Não Flag que indica se há rateio por unidade BatchRequired Boolean Não Flag que indica se é obrigatório lote DisplayOnly Boolean Não Flag que indica se é apenas para exibição RejectPercent Float Não Percentual de rejeito (0 a 100) WarehouseNo String(25) Não Código externo do almoxarifado MeasurementUnitERP String(3) Não Sigla da unidade de medida no ERP
Retorno
| Parâmetro | Tipo | Obrigatório | Descrição |
|---|---|---|---|
| WebServiceReturn | WebServiceReturn | Sim | Informações padrão de resposta do WebService na execução do método |
| AnalyticalStructureCode | Integer | Sim | Código interno da estrutura analítica gerado no sistema MIMS |
Exemplo de Request
curl --location 'http://seuIPePorta/datasnap/rest/RESTWebServiceMethods/"PostAddAnalyticalStructure"' \
--header 'Content-Type: application/json' \
--data '{
"StructureNo": "EST001",
"BranchNo": "FIL001",
"StructureName": "Estrutura Padrão",
"Standard": true,
"ProductNo": "PROD001",
"SequenceByProductNo": false,
"OverwriteIfExists": true,
"ItemList": [
{
"ItemNo": "1",
"MaterialNo": "MAT001",
"Qty": 0.5,
"ProportionalToOneKilo": true,
"ComposePrimaryTare": false,
"ApportionmentPerUnit": false,
"BatchRequired": false,
"DisplayOnly": false,
"RejectPercent": 0,
"WarehouseNo": "ALM001",
"MeasurementUnitERP": "KG"
}
]
}'
Exemplo de Response
{
"WebServiceReturn": {
"Status": "wrsSuccess",
"ErrorCode": "",
"Message": "",
"Actor": "",
"ReturnQuestion": null
},
"AnalyticalStructureCode": 456
}
🐞 Possíveis Erros
| Código | Mensagem |
|---|---|
| AAA‑001 | O cadastro do produto informado [parâmetro] valor [valor enviado na requisição] está incompleto, faltam informações específicas para a filial [valor enviado na requisição]. Processo abortado! |
| AAA‑002 | A Estrutura Analítica [valor enviado na requisição] já está sendo utilizada em um Registro de Produção, alterações não são permitidas! |
| AMA‑001 | O "MaterialNo" informado já existe! |
| MAT‑001 | O Material [valor enviado na requisição] no índice [posição do item na lista] não existe no banco de dados! |
Exclusão de Estrutura Analítica
O endpoint PostDeleteAnalyticalStructure é responsável por executar a exclusão de uma estrutura analítica no sistema MIMS.
Como excluir uma estrutura analítica
Request HTTP Post
| Tipo da Requisição | URL Exemplo |
|---|---|
| POST | {{url_base}}/PostDeleteAnalyticalStructure |
| Exemplo | http://seuIPePorta/datasnap/rest/RESTWebServiceMethods/"PostDeleteAnalyticalStructure" |
Parâmetros de Entrada
| Parâmetro | Tipo | Obrigatório | Descrição |
|---|---|---|---|
| ProductNo | String(25) | Sim | Código externo do produto |
| StructureNo | String(25) | Sim | Código externo da estrutura |
| BranchNo | String(25) | Sim | Código externo da filial |
Retorno
| Parâmetro | Tipo | Obrigatório | Descrição |
|---|---|---|---|
| WebServiceReturn | WebServiceReturn | Sim | Informações padrão de resposta do WebService na execução do método |
Exemplo de Request
curl --location 'http://seuIPePorta/datasnap/rest/RESTWebServiceMethods/"PostDeleteAnalyticalStructure"' \
--header 'Content-Type: application/json' \
--data '{
"ProductNo": "PROD001",
"StructureNo": "EST001",
"BranchNo": "FIL001"
}'
Exemplo de Response
{
"WebServiceReturn": {
"Status": "wrsSuccess",
"ErrorCode": "",
"Message": "",
"Actor": "",
"ReturnQuestion": null
}
}
🐞 Possíveis Erros
| Código | Mensagem |
|---|---|
| DAS‑001 | A Estrutura Analítica não existe! |
| DAS‑002 | A Estrutura Analítica é padrão e não permite exclusão! |
| DAS‑004 | A Estrutura Analítica já está sendo utilizada em um Registro de Produção ou em um Cadastro de Linha de Processamento e não permite exclusão! |
Exclusão de Item de Estrutura Analítica
O endpoint PostDeleteAnalyticalStructureItem é responsável por executar a exclusão de um item de uma estrutura analítica no sistema MIMS.
Como excluir um item de estrutura analítica
Request HTTP Post
| Tipo da Requisição | URL Exemplo |
|---|---|
| POST | {{url_base}}/PostDeleteAnalyticalStructureItem |
| Exemplo | http://seuIPePorta/datasnap/rest/RESTWebServiceMethods/"PostDeleteAnalyticalStructureItem" |
Parâmetros de Entrada
| Parâmetro | Tipo | Obrigatório | Descrição |
|---|---|---|---|
| ProductNo | String(25) | Sim | Código externo do produto |
| StructureNo | String(25) | Sim | Código externo da estrutura |
| BranchNo | String(25) | Sim | Código externo da filial |
| MaterialNo | String(25) | Sim | Código externo do material a ser excluído da estrutura |
Observação
- O método exclui um item por requisição, identificado pelo
MaterialNo. Para remover vários materiais, execute uma requisição para cada um - Excluído o último item de uma estrutura, a estrutura deixa de existir, pois ela é o conjunto dos seus itens
- Não é possível excluir o último item da estrutura padrão do produto, pois o produto ficaria com uma estrutura padrão sem nenhum material. Para excluir a estrutura padrão por completo, defina antes outra estrutura como padrão através do PostAddAnalyticalStructure, enviando
Standardigual atrue
Retorno
| Parâmetro | Tipo | Obrigatório | Descrição |
|---|---|---|---|
| WebServiceReturn | WebServiceReturn | Sim | Informações padrão de resposta do WebService na execução do método |
Exemplo de Request
curl --location 'http://seuIPePorta/datasnap/rest/RESTWebServiceMethods/"PostDeleteAnalyticalStructureItem"' \
--header 'Content-Type: application/json' \
--data '{
"ProductNo": "PROD001",
"StructureNo": "EST001",
"BranchNo": "FIL001",
"MaterialNo": "MAT001"
}'
Exemplo de Response
{
"WebServiceReturn": {
"Status": "wrsSuccess",
"ErrorCode": "",
"Message": "",
"Actor": "",
"ReturnQuestion": null
}
}
🐞 Possíveis Erros
| Código | Mensagem |
|---|---|
| DAS‑001 | A Estrutura Analítica não existe! |
| DAS‑003 | A Estrutura Analítica é fixa e não permite exclusão! |
| DAS‑004 | A Estrutura Analítica já está sendo utilizada em um Registro de Produção ou em um Cadastro de Linha de Processamento e não permite exclusão! |
| DAS‑005 | A Estrutura Analítica é padrão e não permite a exclusão do seu último item! |
| MAT‑001 | O Material [valor enviado na requisição] no índice [1] não existe no banco de dados! |
| AMA‑002 | O Material [valor enviado na requisição] não existe na Estrutura Analítica [valor enviado na requisição]! |