Materiais
O endpoint PostAddMaterial é responsável pelo cadastro de um novo material no sistema MIMS. O cadastro pode ser visualizado na tela CAD021.
Como cadastrar um material
Request HTTP Post
| Tipo da Requisição | URL Exemplo |
|---|---|
| POST | {{url_base}}/PostAddMaterial |
| Exemplo | http://seuIPePorta/datasnap/rest/RESTWebServiceMethods/"PostAddMaterial" |
Parâmetros de Entrada
| Parâmetro | Tipo | Obrigatório | Descrição |
|---|---|---|---|
| BranchNo | String(25) | Sim | Código externo da filial |
| MaterialNo | String(25) | Sim | Código externo do material |
| MaterialName | String(60) | Sim | Nome do material |
| ShortName | String(20) | Não | Nome resumido do material |
| UnitMeasurement | String(2) | Sim | Unidade de medida do material |
| MaterialTypeNo | String(25) | Sim | Código externo do tipo do material |
| CategoryNo | String(25) | Sim | Código externo da categoria do material |
| SubcategoryNo | String(25) | Sim | Código externo da subcategoria do material |
| GroupNo | String(25) | Sim | Código externo do grupo de material |
| OriginNo | String(25) | Sim | Código externo da origem do material |
| ClassificationNo | String(25) | Sim | Código externo da classificação do material |
| TreatmentNo | String(25) | Sim | Código externo do tratamento do material |
| WarehouseNo | String(25) | Sim | Código externo do almoxarifado do material |
| AnimalTypeNo | String(25) | Não | Código externo do tipo de Ave |
| GrossWeight | Float | Não | Peso bruto do material |
| NetWeight | Float | Não | Peso líquido do material |
| RegisterDate | DataHora | Sim | Data de inclusão do registro |
| UpdateDate | DataHora | Não | Data de atualização do registro |
| EAN | String(26) | Não | Código EAN do material |
| LOF | Boolean | Não | Obrigatório LOF |
| LastBuyDate | DataHora | Não | Data da última compra do material |
| ComplementaryType | String(2) | Não | Tipo complementar |
| ANVISAMedicineCode | String(13) | Não | Código de medicamento ANVISA |
| ANVISAExemptionReason | String(255) | Não | Motivo da isenção ANVISA |
| Observations | String(2000) | Não | Observações |
| MaterialLength | Float | Não | Comprimento do material |
| MaterialHeight | Float | Não | Altura do material |
| MaterialWidth | Float | Não | Largura do material |
| MovingAverageCost | Float | Não | Custo Médio Móvel |
| ValidityDays | Integer | Não | Validade em dias |
| MaximumPrice | Float | Não | Preço máximo ao consumidor |
| AveragePrice | Float | Não | Preço de reposição |
| LastPrice | Float | Não | Último preço |
| Produced | Boolean | Não | Flag que indica se o material é produzido ou não |
| Acquired | Boolean | Não | Flag que indica se o material é adquirido ou não |
| Inventory | Boolean | Não | Flag que indica se controla ou não o estoque do Material |
| ShelfLife | Boolean | Não | Flag que indica se controla ou não a validade do Material |
| Animal | Boolean | Não | Flag que indica se o Material é um Animal vivo ou não |
| WeightEntry | Boolean | Não | Flag que indica se o Material é pesado na entrada ou não |
| Active | Boolean | Não | Flag que indica se o material está Ativo ou não |
| TemporarilyBlock | Boolean | Não | Flag que indica se o Material está com bloqueio temporário |
| Traceability | Boolean | Não | Flag que indica se controla rastreabilidade de Materiais Secundários |
| TraceabilityLot | TraceabilityLotType | Não | Enumerador com os possíveis valores para o Tipo do lote de Rastreabilidade do Material: ttSupplierLot (Lote Fornecedor), ttClientLot (Lote Cliente) ou ttBothLot (Ambos) |
| OverwriteIfExists | Boolean | Não | Flag que indica que os dados devem ser sobrescritos caso o registro já exista |
Observação
- Nos parâmetros
MaterialTypeNo,CategoryNo,SubcategoryNo,GroupNo,OriginNo,ClassificationNo,TreatmentNo,WarehouseNoeAnimalTypeNo, quando a requisição for uma alteração de material e o valor informado for igual ao texto de integração padrão (definido na variável StandardIntegration do arquivo INI), o sistema não atualiza o valor desses campos. Nesses casos, o valor já existente no cadastro do material será mantido.
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 |
| MaterialCode | Integer | Sim | Código interno do Material gerado no sistema MIMS |
Exemplo de Request
curl --location 'http://seuIPePorta/datasnap/rest/RESTWebServiceMethods/"PostAddMaterial"' \
--header 'Content-Type: application/json' \
--data '{
"BranchNo": "101",
"MaterialNo": "1",
"MaterialName": "Material Exemplo",
"ShortName": "Mat Test",
"UnitMeasurement": "UN",
"MaterialTypeNo": "MATT5874",
"CategoryNo": "INT",
"SubcategoryNo": "INT",
"GroupNo": "INT",
"OriginNo": "INT",
"ClassificationNo": "INT",
"TreatmentNo": "INT",
"WarehouseNo": "INT",
"Produced": true,
"Acquired": true,
"Inventory": true,
"ShelfLife": true,
"GrossWeight": 12.5,
"NetWeight": 10.0,
"Animal": true,
"WeightEntry": true,
"Active": true,
"AnimalTypeNo": "INT",
"Traceability": true,
"TraceabilityLot": "ttSupplierLot",
"RegisterDate": "2023-11-10",
"UpdateDate": "2023-11-16",
"TemporarilyBlock": false,
"EAN": "7891234567890",
"LOF": false,
"LastBuyDate": "2023-11-10",
"ComplementaryType": "02",
"ANVISAMedicineCode": "123456789",
"ANVISAExemptionReason": "Motivo Anvisa Teste",
"Observations": "Observação Teste",
"MaterialLength": 10,
"MaterialHeight": 20,
"MaterialWidth": 30,
"MovingAverageCost": 35.50,
"ValidityDays": 40,
"MaximumPrice": 45.60,
"AveragePrice": 50.70,
"LastPrice": 60.80,
"OverwriteIfExists": true
}'
Exemplo de Response
{
"WebServiceReturn": {
"Status": "wrsSuccess",
"ErrorCode": "",
"Message": "",
"Actor": "",
"ReturnQuestion": null
},
"MaterialCode": 1023
}
🐞 Possíveis Erros
| Código | Mensagem |
|---|---|
| AMA‑001 | O "MaterialNo" informado já existe! |