Materiales
El endpoint PostAddMaterial es responsable del registro de un nuevo material en el sistema MIMS. El registro puede ser visualizado en la pantalla CAD021.
Cómo registrar un material
Request HTTP Post
| Tipo de Solicitud | URL Ejemplo |
|---|---|
| POST | {{url_base}}/PostAddMaterial |
| Ejemplo | http://seuIPePorta/datasnap/rest/RESTWebServiceMethods/"PostAddMaterial" |
Parámetros de Entrada
| Parámetro | Tipo | Obligatorio | Descripción |
|---|---|---|---|
| BranchNo | String(25) | Sí | Código externo de la filial |
| MaterialNo | String(25) | Sí | Código externo del material |
| MaterialName | String(60) | Sí | Nombre del material |
| ShortName | String(20) | No | Nombre resumido del material |
| UnitMeasurement | String(2) | Sí | Unidad de medida del material |
| MaterialTypeNo | String(25) | Sí | Código externo del tipo del material |
| CategoryNo | String(25) | Sí | Código externo de la categoría del material |
| SubcategoryNo | String(25) | Sí | Código externo de la subcategoría del material |
| GroupNo | String(25) | Sí | Código externo del grupo de material |
| OriginNo | String(25) | Sí | Código externo del origen del material |
| ClassificationNo | String(25) | Sí | Código externo de la clasificación del material |
| TreatmentNo | String(25) | Sí | Código externo del tratamiento del material |
| WarehouseNo | String(25) | Sí | Código externo del almacén del material |
| AnimalTypeNo | String(25) | No | Código externo del tipo de Ave |
| GrossWeight | Float | No | Peso bruto del material |
| NetWeight | Float | No | Peso líquido del material |
| RegisterDate | DataHora | Sí | Fecha de inclusión del registro |
| UpdateDate | DataHora | No | Fecha de actualización del registro |
| EAN | String(26) | No | Código EAN del material |
| LOF | Boolean | No | Obligatorio LOF |
| LastBuyDate | DataHora | No | Fecha de la última compra del material |
| ComplementaryType | String(2) | No | Tipo complementario |
| ANVISAMedicineCode | String(13) | No | Código de medicamento ANVISA |
| ANVISAExemptionReason | String(255) | No | Motivo de la exención ANVISA |
| Observations | String(2000) | No | Observaciones |
| MaterialLength | Float | No | Longitud del material |
| MaterialHeight | Float | No | Altura del material |
| MaterialWidth | Float | No | Ancho del material |
| MovingAverageCost | Float | No | Costo Medio Móvil |
| ValidityDays | Integer | No | Validez en días |
| MaximumPrice | Float | No | Precio máximo al consumidor |
| AveragePrice | Float | No | Precio de reposición |
| LastPrice | Float | No | Último precio |
| Produced | Boolean | No | Flag que indica si el material es producido o no |
| Acquired | Boolean | No | Flag que indica si el material es adquirido o no |
| Inventory | Boolean | No | Flag que indica si se controla o no el stock del Material |
| ShelfLife | Boolean | No | Flag que indica si se controla o no la validez del Material |
| Animal | Boolean | No | Flag que indica si el Material es un Animal vivo o no |
| WeightEntry | Boolean | No | Flag que indica si el Material es pesado en la entrada o no |
| Active | Boolean | No | Flag que indica si el material está Activo o no |
| TemporarilyBlock | Boolean | No | Flag que indica si el Material está con bloqueo temporal |
| Traceability | Boolean | No | Flag que indica si se controla rastreabilidad de Materiales Secundarios |
| TraceabilityLot | TraceabilityLotType | No | Enumerador con los posibles valores para el Tipo del lote de Rastreabilidad del Material: ttSupplierLot (Lote Proveedor), ttClientLot (Lote Cliente) o ttBothLot (Ambos) |
| OverwriteIfExists | Boolean | No | Flag que indica que los datos deben ser sobrescritos si el registro ya existe |
Nota
- En los parámetros
MaterialTypeNo,CategoryNo,SubcategoryNo,GroupNo,OriginNo,ClassificationNo,TreatmentNo,WarehouseNoyAnimalTypeNo, cuando la solicitud sea una modificación de material y el valor informado sea igual al texto de integración estándar (definido en la variable StandardIntegration del archivo INI), el sistema no actualiza el valor de estos campos. En estos casos, el valor ya existente en el registro del material será mantenido.
Retorno
| Parámetro | Tipo | Obligatorio | Descripción |
|---|---|---|---|
| WebServiceReturn | WebServiceReturn | Sí | Informaciones estándar de respuesta del WebService en la ejecución del método |
| MaterialCode | Integer | Sí | Código interno del Material generado en el sistema MIMS |
Ejemplo de Request
curl --location 'http://seuIPePorta/datasnap/rest/RESTWebServiceMethods/"PostAddMaterial"' \
--header 'Content-Type: application/json' \
--data '{
"BranchNo": "101",
"MaterialNo": "1",
"MaterialName": "Material Ejemplo",
"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 Prueba",
"Observations": "Observación Prueba",
"MaterialLength": 10,
"MaterialHeight": 20,
"MaterialWidth": 30,
"MovingAverageCost": 35.50,
"ValidityDays": 40,
"MaximumPrice": 45.60,
"AveragePrice": 50.70,
"LastPrice": 60.80,
"OverwriteIfExists": true
}'
Ejemplo de Response
{
"WebServiceReturn": {
"Status": "wrsSuccess",
"ErrorCode": "",
"Message": "",
"Actor": "",
"ReturnQuestion": null
},
"MaterialCode": 1023
}
🐞 Posibles Errores
| Código | Mensaje |
|---|---|
| AMA‑001 | ¡El "MaterialNo" informado ya existe! |