Esta entrada posee información técnica sobre la API especificada y está dirigido a clientes que busquen integrar Órdenes de Producción con otro sistema.
Pasos a seguir:
Antes de cada solicitud se debe obtener el token de autorización, en función de las credenciales de un usuario API creado en el maestro Usuarios.
Se utiliza para generar un token de autenticación que permite poder consumir una API de Finnegans.
2. Métodos de recuperación y envío de datos a un servidor:
GET
URL:
https://api.finneg.com/api/ordenProduccion/{codigo}?ACCESS_TOKEN={$access_token}
Parámetros:
- ACCESS_TOKEN: Requerido. Ejemplo: “a0e172d4-e070-4346-96fa-c02a97230384”.
- {codigo} Es la identificacion externa de la transacción.
Códigos de respuesta:
- 200 Ok: Se devuelve la información de la transacción Orden de Producción.
- 404 Solicitud incorrecta: { “error”: "Not Found: ", “status”: 404 }.
- 500 Error interno de servidor: { “error”: “Internal Server Error: null”,“status”: 500}.
JSON ordenProduccion
{
"IdentificacionExterna": "Orden de Produccion - 22417",
"Identificacion": "Orden de Producción - 22417",
"Nombre": "Orden de Produccion - 22417",
"EmpresaCodigo": "EMPRE01",
"Fecha": "2023-12-01",
"FechaComprobante": "2023-12-01",
"NumeroComprobante": "",
"Descripcion": "el inicio 87%",
"TransaccionTipoCodigo": "ORDENPROD",
"TransaccionSubtipoCodigo": "Orden de Produccion",
"NumeroInterno": 22417,
"EstadoCodigo": "ACTIVA",
"Anulado": false,
"ProcesoCodigo": null,
"ProductoCodigo": null,
"UnidadFormula": 0.000000,
"CantidadBatch": 16597.000000,
"UnidadBatch": 1.000000,
"PartidaFechaVto": null,
"PartidaNumero": "",
"ProduccionTeorica": [
{
"ProductoCodigo": "10210",
"Cantidad": 2157.610000,
"Unidad": "Kilos"
},
{
"ProductoCodigo": "10105",
"Cantidad": 14439.390000,
"Unidad": "Kilos"
}
],
"ConsumoTeorico": [
{
"ProductoCodigo": "10101",
"Cantidad": 16597.000000,
"ProcesoCodigo": null,
"Tipo": 0,
"Unidad": "Kilos"
}
],
"ConsumoPersonas": [],
"ConsumoMaquina": [],
"Produccion": [
{
"Fecha": "2023-12-01",
"Documento": "PARTPROD - 36635",
"Descripcion": "Generado por Orden de Produccion - 22417",
"ProductoCodigo": "10105",
"DepositoDestinoCodigo": "0200",
"OrganizacionCodigo": "Prueba S R L ",
"CantidadStock1": 7660.000000,
"UnidadStock1Nombre": "Kilos",
"CantidadStock2": 0.000000,
"UnidadStock2Nombre": null,
"PartidaNumero": null,
"PartidaFechaVto": null,
"DimensionDistribucion": [],
"TransaccionSubtipoIDItemCodigo": "PARTPROD"
},
{
"Fecha": "2023-12-01",
"Documento": "PARTPROD - 36746",
"Descripcion": "",
"ProductoCodigo": "10105",
"DepositoDestinoCodigo": "0200",
"OrganizacionCodigo": null,
"CantidadStock1": 6779.000000,
"UnidadStock1Nombre": "Kilos",
"CantidadStock2": 0.000000,
"UnidadStock2Nombre": null,
"PartidaNumero": null,
"PartidaFechaVto": null,
"DimensionDistribucion": [],
"TransaccionSubtipoIDItemCodigo": "PARTPROD"
},
{
"Fecha": "2023-12-01",
"Documento": "PARTPROD - 36635",
"Descripcion": "Generado por Orden de Produccion - 22417",
"ProductoCodigo": "10210",
"DepositoDestinoCodigo": "TANQ1",
"OrganizacionCodigo": null,
"CantidadStock1": 2157.610000,
"UnidadStock1Nombre": "Kilos",
"CantidadStock2": 0.000000,
"UnidadStock2Nombre": null,
"PartidaNumero": null,
"PartidaFechaVto": null,
"DimensionDistribucion": [],
"TransaccionSubtipoIDItemCodigo": "PARTPROD"
}
],
"Consumos": [
{
"Fecha": "2023-12-01",
"Documento": "CONSPROD - 36669",
"Descripcion": "Generado por Orden de Produccion - 22417",
"ProductoCodigo": "10101",
"DepositoOrigenCodigo": "215",
"OrganizacionCodigo": "EL INICIO S R L ",
"CantidadStock1": 16597.000000,
"UnidadStock1Nombre": "Kilos",
"CantidadStock2": 0.000000,
"UnidadStock2Nombre": null,
"PartidaNumero": "Campaña 21/22",
"PartidaFechaVto": null,
"DimensionDistribucion": [],
"TransaccionSubtipoIDItemCodigo": "CONSPROD"
}
],
"Maquinaria": [],
"Persona": [],
"Calidad": [],
"ActualizaProduccion": false,
"FormulaCodigo": "Expeller y Aceite de Soja Fason 87%"
}
POST
URL:
https://api.finneg.com/api/ordenProduccion?ACCESS_TOKEN={$access_token}
Parámetros:
- ACCESS_TOKEN: Requerido. Ejemplo: “a0e172d4-e070-4346-96fa-c02a97230384”.
Se detalla la estructura donde se desglosa cada campo del JSON, proporcionando una descripción clara de su propósito, el tipo de dato esperado y si su envío es obligatorio.
Códigos de respuesta:
- 200 Ok: Devuelve el id de la Orden de Producción con un mensaje informando que se creó correctamente y el código de estado de la respuesta. Ejemplo: {
“id”: “358e63c1cf9a0a36161aec8c49a341e3d031e34d”,
“message”: “created”,
“status”: 200
} - 404 Solicitud incorrecta: { “error”: "Not Found: ", “status”: 404 }.
- 500 Error interno de servidor: { “error”: “Internal Server Error: null”,“status”: 500}.
PUT
URL:
https://api.finneg.com/api/ordenProduccion/{codigo}?ACCESS_TOKEN={$access_token}
Parámetros:
- ACCESS_TOKEN: Requerido. Ejemplo: “a0e172d4-e070-4346-96fa-c02a97230384”.
- {codigo} Es la identificación externa de transacción. Ejemplo: “OP - 22417”.
Códigos de respuesta:
- 200 Ok: Se devuelve un mensaje informando que se actualizó correctamente y el código de estado de respuesta. Ejemplo: {
“message”: “updated”,
“status”: 200
} - 404 Solicitud incorrecta: { “error”: "Not Found: ", “status”: 404 }.
- 500 Error interno de servidor: { “error”: “Internal Server Error: null”,“status”: 500}.
DELETE
URL:
https://api-qa.finneg.com/api/ordenProduccion/{codigo}?ACCESS_TOKEN={$access_token}
Parámetros:
- ACCESS_TOKEN: Requerido. Ejemplo: “a0e172d4-e070-4346-96fa-c02a97230384”.
- {codigo} Es la identificación externa de la transacción. Ejemplo “OP - 22417”.
Códigos de respuesta:
- 200 Ok: Se devuelve un mensaje informando que se eliminó correctamente y código de estado de respuesta. Ejemplo: {
“message”: “deleted”,
“status”: 200
} - 404 Solicitud incorrecta: { “error”: "Not Found: ", “status”: 404 }.
- 500 Error interno de servidor: { “error”: “Internal Server Error: null”,“status”: 500}
Antes de empezar
Antes de utilizar esta API, se deben considerar algunas cuestiones que se detallan a continuación.
Definición de API
Antes de utilizar esta API, se deben considerar algunas cuestiones que se detallan a continuación.
- En la solapa Definición debe indicarse todos los campos que tiene el JSON indicado más arriba.
- En el campo Tipo debe estar el valor Entidad.
- En el campo Entidad debe indicarse OrdenProduccionVO.
<?xml version="1.0" encoding="UTF-8"?><root>
<entidad id="main">
<atributo nombre="IdentificacionExterna" alias="IdentificacionExterna" descripcion="Tipo: String, Obligatorio: No, Descripción: Identificación externa" requerido="false"/>
<atributo nombre="Identificacion" alias="Identificacion" descripcion="Tipo: String.Obligatorio: No, Sólo para GET" requerido="false"/>
<atributo nombre="Nombre" alias="Nombre" descripcion="Tipo: String.Obligatorio: No, Sólo para GET" requerido="false"/>
<atributo nombre="EmpresaID" alias="EmpresaCodigo" descripcion="Tipo: String, Obligatorio: Si, Consulte la API /Empresa/list"/>
<atributo nombre="Fecha" alias="Fecha" descripcion="Tipo: Date, Obligatorio: Si, Descripción: aaaa-mm-dd" requerido="true"/>
<atributo nombre="FechaComprobante" alias="FechaComprobante" descripcion="Tipo: Date, Obligatorio: Si, Descripción: aaaa-mm-dd" requerido="true"/>
<atributo nombre="NumeroDocumento" alias="NumeroComprobante" descripcion="Tipo: String, Obligatorio: No, Sólo para GET"/>
<atributo nombre="Descripcion" alias="Descripcion" descripcion="Tipo: String, Obligatorio: No" requerido="false"/>
<atributo nombre="TransaccionTipoID" alias="TransaccionTipoCodigo" descripcion="(String) Obligatorio. Valor a completar: ORDENPROD "/>
<atributo nombre="TransaccionSubtipoID" alias="TransaccionSubtipoCodigo" descripcion="Tipo: String, Obligatorio: Si, Consulte la API /reports/DETALLESUBTIPOSDOCUMENTO " requerido="true"/>
<atributo nombre="NumeroInterno" alias="NumeroInterno" descripcion="Tipo: String, Obligatorio: No, Sólo para GET" requerido="false"/>
<atributo nombre="EstadoID" alias="EstadoCodigo" descripcion="Tipo: String, Obligatorio: No, Sólo para GET" requerido="false"/>
<atributo nombre="Anulado" alias="Anulado" descripcion="Tipo: Boolean, Obligatorio: No, Sólo para GET" requerido="false"/>
<atributo nombre="BPMProcesoID" alias="ProcesoCodigo" descripcion="Tipo: String, Obligatorio: No, proceso de producción" requerido="false"/>
<atributo nombre="FichaTecnicaProductoID" alias="ProductoCodigo" descripcion="Tipo: String, Obligatorio: No, proceso de producción" requerido="false"/>
<atributo nombre="FormulaCodigo" alias="FormulaCodigo" descripcion="Tipo: String, Obligatorio: No, proceso de producción" requerido="false"/>
<atributo nombre="ActualizaProduccion" alias="ActualizaProduccion" descripcion="Tipo: Boolean, Obligatorio: No, actualiza teoricos y partes según formula" requerido="false"/>
<atributo nombre="UnidadFormula" alias="UnidadFormula" descripcion="Tipo: Decimal, Obligatorio: No, proceso de producción" requerido="false"/>
<atributo nombre="CantidadBatch" alias="CantidadBatch" descripcion="Tipo: Decimal, Obligatorio: No, proceso de producción" requerido="false"/>
<atributo nombre="UnidadBatch" alias="UnidadBatch" descripcion="Tipo: Decimal, Obligatorio: No, proceso de producción" requerido="false"/>
<atributo nombre="PartidaFechaVto" alias="PartidaFechaVto" descripcion="Tipo: Date, Obligatorio: No, producción" requerido="false"/>
<atributo nombre="PartidaNumero" alias="PartidaNumero" descripcion="Tipo: String, Obligatorio: No, producción" requerido="false"/>
<atributo nombre="ProduccionItems" alias="ProduccionTeorica" descripcion="" requerido="false"/>
<atributo nombre="InsumoItems" alias="ConsumoTeorico" descripcion="" requerido="false"/>
<atributo nombre="FuncionItems" alias="ConsumoPersonas" descripcion="" requerido="false"/>
<atributo nombre="MaquinaItems" alias="ConsumoMaquina" descripcion="" requerido="false"/>
<atributo nombre="OrdenProduccionPartesProduccion" alias="Produccion" descripcion="" requerido="false"/>
<atributo nombre="OrdenProduccionPartesConsumo" alias="Consumos" descripcion="" requerido="false"/>
<atributo nombre="OrdenProduccionParteMaquinaItems" alias="Maquinaria" descripcion="" requerido="false"/>
<atributo nombre="OrdenProduccionPartePersonaItems" alias="Persona" descripcion="" requerido="false"/>
<atributo nombre="CalidadItems" alias="Calidad" descripcion="" requerido="false"/>
</entidad>
<entidad id="ProduccionItems">
<atributo nombre="ProductoID" alias="ProductoCodigo" descripcion="Tipo: String, Obligatorio: No" requerido="false"/>
<atributo nombre="Cantidad" alias="Cantidad" descripcion="Tipo: Decimal, Obligatorio: No" requerido="false"/>
<atributo nombre="ProductoUnidadStock" alias="Unidad" descripcion="Tipo: String, Obligatorio: No, Sólo para GET" requerido="false"/>
</entidad>
<entidad id="InsumoItems">
<atributo nombre="ProductoID" alias="ProductoCodigo" descripcion="Tipo: String, Obligatorio: No" requerido="false"/>
<atributo nombre="Cantidad" alias="Cantidad" descripcion="Tipo: Decimal, Obligatorio: No" requerido="false"/>
<atributo nombre="ProductoUnidadStock" alias="Unidad" descripcion="Tipo: String, Obligatorio: No, Sólo para GET" requerido="false"/>
<atributo nombre="FormulaInsumoID" alias="ProcesoCodigo" descripcion="Tipo: String, Obligatorio: No, Diccionario FORMULA" requerido="false"/>
<atributo nombre="TipoInsumo" alias="Tipo" descripcion="Tipo: Integer, Obligatorio: No, Descripción: 0 - Insumo, 1 - Semi Elaborado" requerido="false"/>
</entidad>
<entidad id="MaquinaItems">
<atributo nombre="MaquinaID" alias="MaquinaCodigo" descripcion="Tipo: String, Obligatorio: No" requerido="false"/>
<atributo nombre="Cantidad" alias="Cantidad" descripcion="Tipo: Decimal, Obligatorio: No" requerido="false"/>
</entidad>
<entidad id="FuncionItems">
<atributo nombre="FuncionID" alias="FuncionCodigo" descripcion="Tipo: String, Obligatorio: No" requerido="false"/>
<atributo nombre="Cantidad" alias="Cantidad" descripcion="Tipo: Decimal, Obligatorio: No" requerido="false"/>
</entidad>
<entidad id="OrdenProduccionPartesProduccion">
<atributo nombre="FechaTransaccion" alias="Fecha" descripcion="Tipo: Date, Obligatorio: Si, Descripción: aaaa-mm-dd" requerido="true"/>
<atributo nombre="Nombre" alias="Documento" descripcion="Tipo: String, Obligatorio: No, Sólo para GET" requerido="false"/>
<atributo nombre="TransaccionSubtipoIDItemCodigo" alias="TransaccionSubtipoIDItemCodigo" descripcion="Tipo: String, Obligatorio: Si, Descripción: PP-CI" requerido="true"/>
<atributo nombre="Descripcion" alias="Descripcion" descripcion="" requerido="false"/>
<atributo nombre="ProductoID" alias="ProductoCodigo" descripcion="" requerido="true"/>
<atributo nombre="DepositoIDDestino" alias="DepositoDestinoCodigo" descripcion="Tipo: String, Obligatorio: No" requerido="false"/>
<atributo nombre="OrganizacionID" alias="OrganizacionCodigo" descripcion="Tipo: String, Obligatorio: No" requerido="false"/>
<atributo nombre="CantidadStock1" alias="CantidadStock1" descripcion="Tipo: Decimal, Obligatorio: No" requerido="false"/>
<atributo nombre="UnidadStock1Nombre" alias="UnidadStock1Nombre" descripcion="Tipo: String, Obligatorio: No, Sólo para GET" requerido="false"/>
<atributo nombre="CantidadStock2" alias="CantidadStock2" descripcion="Tipo: Decimal, Obligatorio: No" requerido="false"/>
<atributo nombre="UnidadStock2Nombre" alias="UnidadStock2Nombre" descripcion="Tipo: String, Obligatorio: No, Sólo para GET" requerido="false"/>
<atributo nombre="PartidaNumero" alias="PartidaNumero" descripcion="Tipo: String, Obligatorio: No, Descripcion: En caso de no necesitar, borre el atributo"/>
<atributo nombre="PartidaFechaVto" alias="PartidaFechaVto" descripcion="Tipo: Date, Obligatorio: No, Descripcion: Fecha en formato aaaa-mm-dd. En caso de no necesitar, borre el atributo"/>
<atributo nombre="DimensionDistribucion" alias="DimensionDistribucion" descripcion=""/>
</entidad>
<entidad id="OrdenProduccionPartesConsumo">
<atributo nombre="FechaTransaccion" alias="Fecha" descripcion="Tipo: Date, Obligatorio: Si, Descripción: aaaa-mm-dd" requerido="true"/>
<atributo nombre="Nombre" alias="Documento" descripcion="Tipo: String, Obligatorio: No, Sólo para GET" requerido="false"/>
<atributo nombre="TransaccionSubtipoIDItemCodigo" alias="TransaccionSubtipoIDItemCodigo" descripcion="Tipo: String, Obligatorio: Si, Descripción: CP-CI" requerido="true"/>
<atributo nombre="Descripcion" alias="Descripcion" descripcion="" requerido="false"/>
<atributo nombre="ProductoID" alias="ProductoCodigo" descripcion="" requerido="true"/>
<atributo nombre="DepositoIDOrigen" alias="DepositoOrigenCodigo" descripcion="Tipo: String, Obligatorio: No" requerido="false"/>
<atributo nombre="OrganizacionID" alias="OrganizacionCodigo" descripcion="Tipo: String, Obligatorio: No" requerido="false"/>
<atributo nombre="CantidadStock1" alias="CantidadStock1" descripcion="Tipo: Decimal, Obligatorio: No" requerido="false"/>
<atributo nombre="UnidadStock1Nombre" alias="UnidadStock1Nombre" descripcion="Tipo: String, Obligatorio: No, Sólo para GET" requerido="false"/>
<atributo nombre="CantidadStock2" alias="CantidadStock2" descripcion="Tipo: Decimal, Obligatorio: No" requerido="false"/>
<atributo nombre="UnidadStock2Nombre" alias="UnidadStock2Nombre" descripcion="Tipo: String, Obligatorio: No, Sólo para GET" requerido="false"/>
<atributo nombre="PartidaNumero" alias="PartidaNumero" descripcion="Tipo: String, Obligatorio: No, Descripcion: En caso de no necesitar, borre el atributo"/>
<atributo nombre="PartidaFechaVto" alias="PartidaFechaVto" descripcion="Tipo: Date, Obligatorio: No, Descripcion: Fecha en formato aaaa-mm-dd. En caso de no necesitar, borre el atributo"/>
<atributo nombre="DimensionDistribucion" alias="DimensionDistribucion" descripcion=""/>
</entidad>
<entidad id="OrdenProduccionParteMaquinaItems">
<atributo nombre="IdentificacionExterna" alias="IdentificacionExterna" descripcion="(String) ID externo. Obligatorio "/>
<atributo nombre="MaquinaID" alias="MaquinaCodigo" descripcion="Tipo: String, Obligatorio: No" requerido="false"/>
<atributo nombre="Descripcion" alias="Descripcion" descripcion="Tipo: String, Obligatorio: No" requerido="false"/>
<atributo nombre="Unidad" alias="Unidad" descripcion="Tipo: Integer, Obligatorio: No, Descripcion: 0 - Horas, 1 - Minutos, 2 - Segundos" requerido="false"/>
<atributo nombre="CantidadHorasNormales" alias="Cantidad" descripcion="Tipo: Decimal, Obligatorio: No" requerido="false"/>
<atributo nombre="HorometroInicio" alias="ContadorInicio" descripcion="Tipo: Decimal, Obligatorio: No" requerido="false"/>
<atributo nombre="HorometroFin" alias="ContadorFin" descripcion="Tipo: Decimal, Obligatorio: No" requerido="false"/>
<atributo nombre="CausaParoID" alias="CausaParoCode" descripcion="Tipo: String, Obligatorio: No" requerido="false"/>
<atributo nombre="HorasParo" alias="TiempoParo" descripcion="Tipo: Decimal, Obligatorio: No" requerido="false"/>
</entidad>
<entidad id="OrdenProduccionPartePersonaItems">
<atributo nombre="IdentificacionExterna" alias="IdentificacionExterna" descripcion="(String) ID externo. Obligatorio "/>
<atributo nombre="FuncionID" alias="FuncionCodigo" descripcion="Tipo: String, Obligatorio: No" requerido="false"/>
<atributo nombre="PersonaID" alias="PersonaCodigo" descripcion="Tipo: String, Obligatorio: No" requerido="false"/>
<atributo nombre="Descripcion" alias="Descripcion" descripcion="Tipo: String, Obligatorio: No" requerido="false"/>
<atributo nombre="Unidad" alias="Unidad" descripcion="Tipo: Integer, Obligatorio: No, Descripcion: 0 - Horas, 1 - Minutos, 2 - Segundos" requerido="false"/>
<atributo nombre="CantidadHorasNormales" alias="CantidadHorasNormales" descripcion="Tipo: Decimal, Obligatorio: No" requerido="false"/>
<atributo nombre="CantidadHoras50" alias="CantidadHoras50" descripcion="Tipo: Decimal, Obligatorio: No" requerido="false"/>
<atributo nombre="CantidadHoras100" alias="CantidadHoras100" descripcion="Tipo: Decimal, Obligatorio: No" requerido="false"/>
<atributo nombre="CantidadHorasAdicional" alias="CantidadHorasAdicional" descripcion="Tipo: Decimal, Obligatorio: No" requerido="false"/>
</entidad>
<entidad id="CalidadItems">
<atributo nombre="TipoControlCalidadID" alias="TipoControlCalidadCodigo" descripcion="Tipo: String, Obligatorio: No" requerido="false"/>
<atributo nombre="Descripcion" alias="Descripcion" descripcion="Tipo: String, Obligatorio: No" requerido="false"/>
<atributo nombre="Referencia" alias="Referencia" descripcion="Tipo: String, Obligatorio: No" requerido="false"/>
<atributo nombre="ControlCalidadValor" alias="Valor" descripcion="Tipo: Decimal, Obligatorio: No" requerido="false"/>
<atributo nombre="ControlCalidadMinimo" alias="Minimo" descripcion="Tipo: Decimal, Obligatorio: No" requerido="false"/>
<atributo nombre="ControlCalidadMaximo" alias="Maximo" descripcion="Tipo: Decimal, Obligatorio: No" requerido="false"/>
<atributo nombre="ControlCalidadUnidadID" alias="UnidadCodigo" descripcion="Tipo: String, Obligatorio: No" requerido="false"/>
<atributo nombre="Resultado" alias="Resultado" descripcion="Tipo: String, Obligatorio: No" requerido="false"/>
</entidad>
</root>