Estructura Analítica
Registro de Estructura Analítica
El endpoint PostAddAnalyticalStructure es responsable del registro de una nueva estructura analítica en el sistema MIMS.
Cómo registrar una estructura analítica
Request HTTP Post
| Tipo de Solicitud | URL Ejemplo |
|---|---|
| POST | {{url_base}}/PostAddAnalyticalStructure |
| Ejemplo | http://seuIPePorta/datasnap/rest/RESTWebServiceMethods/"PostAddAnalyticalStructure" |
Parámetros de Entrada
| Parámetro | Tipo | Obligatorio | Descripción |
|---|---|---|---|
| BranchNo | String(25) | Sí | Código externo de la filial |
| StructureNo | String(25) | Sí | Código externo de la estructura analítica |
| StructureName | String(20) | Sí | Descripción de la estructura analítica |
| ProductNo | String(25) | Sí | Código externo del producto |
| Standard | Boolean | No | Flag que indica que esta es la estructura estándar, es decir, la versión que el producto pasa a utilizar |
| SequenceByProductNo | Boolean | No | Flag que indica si la secuencia es por código del producto |
| OverwriteIfExists | Boolean | No | Flag que indica que los datos deben ser sobrescritos si el registro ya existe |
| ItemList | AddAnalyticalStructureItemList | Sí | Lista de items de la estructura analítica |
📝 Objeto AddAnalyticalStructureItemList
El objeto AddAnalyticalStructureItemList representa una lista con los items de la estructura analítica.
Parámetros de Entrada
Parámetro Tipo Obligatorio Descripción ItemNo String(25) Sí Código del item MaterialNo String(25) Sí Código externo del material Qty Float Sí Cantidad del material ProportionalToOneKilo Boolean No Flag que indica si la cantidad es proporcional a un kilo ComposePrimaryTare Boolean No Flag que indica si compone la tara primaria ApportionmentPerUnit Boolean No Flag que indica si hay prorrateo por unidad BatchRequired Boolean No Flag que indica si es obligatorio lote DisplayOnly Boolean No Flag que indica si es solo para exhibición RejectPercent Float No Porcentaje de rechazo (0 a 100) WarehouseNo String(25) No Código externo del almacén MeasurementUnitERP String(3) No Sigla de la unidad de medida en el ERP
Retorno
| Parámetro | Tipo | Obligatorio | Descripción |
|---|---|---|---|
| WebServiceReturn | WebServiceReturn | Sí | Informaciones estándar de respuesta del WebService en la ejecución del método |
| AnalyticalStructureCode | Integer | Sí | Código interno de la estructura analítica generado en el sistema MIMS |
Ejemplo de Request
curl --location 'http://seuIPePorta/datasnap/rest/RESTWebServiceMethods/"PostAddAnalyticalStructure"' \
--header 'Content-Type: application/json' \
--data '{
"StructureNo": "EST001",
"BranchNo": "FIL001",
"StructureName": "Estructura Estándar",
"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"
}
]
}'
Ejemplo de Response
{
"WebServiceReturn": {
"Status": "wrsSuccess",
"ErrorCode": "",
"Message": "",
"Actor": "",
"ReturnQuestion": null
},
"AnalyticalStructureCode": 456
}
🐞 Posibles Errores
| Código | Mensaje |
|---|---|
| AAA‑001 | ¡El registro del producto informado [parámetro] con valor [valor enviado en la solicitud] está incompleto, faltan informaciones específicas para la sucursal [valor enviado en la solicitud]. ¡Proceso abortado! |
| AAA‑002 | ¡La Estructura Analítica [valor enviado en la solicitud] ya está siendo utilizada en un Registro de Producción, no se permiten cambios! |
| AMA‑001 | ¡El "MaterialNo" informado ya existe! |
| MAT‑001 | ¡El Material [valor enviado en la solicitud] en el índice [posición del elemento en la lista] no existe en la base de datos! |
Eliminación de Estructura Analítica
El endpoint PostDeleteAnalyticalStructure es responsable de ejecutar la eliminación de una estructura analítica en el sistema MIMS.
Cómo eliminar una estructura analítica
Request HTTP Post
| Tipo de Solicitud | URL Ejemplo |
|---|---|
| POST | {{url_base}}/PostDeleteAnalyticalStructure |
| Ejemplo | http://seuIPePorta/datasnap/rest/RESTWebServiceMethods/"PostDeleteAnalyticalStructure" |
Parámetros de Entrada
| Parámetro | Tipo | Obligatorio | Descripción |
|---|---|---|---|
| ProductNo | String(25) | Sí | Código externo del producto |
| StructureNo | String(25) | Sí | Código externo de la estructura |
| BranchNo | String(25) | Sí | Código externo de la filial |
Retorno
| Parámetro | Tipo | Obligatorio | Descripción |
|---|---|---|---|
| WebServiceReturn | WebServiceReturn | Sí | Informaciones estándar de respuesta del WebService en la ejecución del método |
Ejemplo de Request
curl --location 'http://seuIPePorta/datasnap/rest/RESTWebServiceMethods/"PostDeleteAnalyticalStructure"' \
--header 'Content-Type: application/json' \
--data '{
"ProductNo": "PROD001",
"StructureNo": "EST001",
"BranchNo": "FIL001"
}'
Ejemplo de Response
{
"WebServiceReturn": {
"Status": "wrsSuccess",
"ErrorCode": "",
"Message": "",
"Actor": "",
"ReturnQuestion": null
}
}
🐞 Posibles Errores
| Código | Mensaje |
|---|---|
| DAS‑001 | ¡La Estructura Analítica no existe! |
| DAS‑002 | ¡La Estructura Analítica es estándar y no permite eliminación! |
| DAS‑004 | ¡La Estructura Analítica ya está siendo utilizada en un Registro de Producción o en un Registro de Línea de Procesamiento y no permite eliminación! |
Eliminación de Item de Estructura Analítica
El endpoint PostDeleteAnalyticalStructureItem es responsable de ejecutar la eliminación de un item de una estructura analítica en el sistema MIMS.
Cómo eliminar un item de estructura analítica
Request HTTP Post
| Tipo de Solicitud | URL Ejemplo |
|---|---|
| POST | {{url_base}}/PostDeleteAnalyticalStructureItem |
| Ejemplo | http://seuIPePorta/datasnap/rest/RESTWebServiceMethods/"PostDeleteAnalyticalStructureItem" |
Parámetros de Entrada
| Parámetro | Tipo | Obligatorio | Descripción |
|---|---|---|---|
| ProductNo | String(25) | Sí | Código externo del producto |
| StructureNo | String(25) | Sí | Código externo de la estructura |
| BranchNo | String(25) | Sí | Código externo de la filial |
| MaterialNo | String(25) | Sí | Código externo del material a ser eliminado de la estructura |
Nota
- El método elimina un elemento por solicitud, identificado por el
MaterialNo. Para eliminar varios materiales, envíe una solicitud para cada uno - Eliminado el último elemento de una estructura, la estructura deja de existir, pues ella es el conjunto de sus elementos
- No es posible eliminar el último elemento de la estructura estándar del producto, pues el producto quedaría con una estructura estándar sin ningún material. Para eliminar la estructura estándar por completo, defina antes otra estructura como estándar a través del PostAddAnalyticalStructure, enviando
Standardigual atrue
Retorno
| Parámetro | Tipo | Obligatorio | Descripción |
|---|---|---|---|
| WebServiceReturn | WebServiceReturn | Sí | Informaciones estándar de respuesta del WebService en la ejecución del método |
Ejemplo de Request
curl --location 'http://seuIPePorta/datasnap/rest/RESTWebServiceMethods/"PostDeleteAnalyticalStructureItem"' \
--header 'Content-Type: application/json' \
--data '{
"ProductNo": "PROD001",
"StructureNo": "EST001",
"BranchNo": "FIL001",
"MaterialNo": "MAT001"
}'
Ejemplo de Response
{
"WebServiceReturn": {
"Status": "wrsSuccess",
"ErrorCode": "",
"Message": "",
"Actor": "",
"ReturnQuestion": null
}
}
🐞 Posibles Errores
| Código | Mensaje |
|---|---|
| DAS‑001 | ¡La Estructura Analítica no existe! |
| DAS‑003 | ¡La Estructura Analítica es fija y no permite eliminación! |
| DAS‑004 | ¡La Estructura Analítica ya está siendo utilizada en un Registro de Producción o en un Registro de Línea de Procesamiento y no permite eliminación! |
| DAS‑005 | ¡La Estructura Analítica es estándar y no permite la eliminación de su último elemento! |
| MAT‑001 | ¡El Material [valor enviado en la solicitud] en el índice [1] no existe en la base de datos! |
| AMA‑002 | ¡El Material [valor enviado en la solicitud] no existe en la Estructura Analítica [valor enviado en la solicitud]! |