Ir al contenido

SaveDataField

Define los valores y las observaciones de campos de datos: los campos que su empresa añade a registros como facturas de proveedor, facturas y activos, y que los usuarios rellenan en la pestaña Data del registro. Una solicitud define uno o varios campos de un registro. Para los eventos y campos de datos de las órdenes de trabajo, use en su lugar SaveSeqData.

Cómo iniciar sesión y leer la respuesta: Autenticación, Respuestas.

POST /api/v1/SaveDataField
Token: your-token
Content-Type: application/json
{
"Ref": "bill",
"RefID": 109827,
"Fields": [
{ "Code": "COSTCTR", "Value": "CC-410", "Remarks": "" },
{ "Code": "PAYDUE", "Value": "2026-10-30T00:00:00" }
]
}
Campo Obligatorio Significado
Ref Sí El tipo de registro, de la tabla siguiente. No distingue entre mayúsculas y minúsculas.
RefID Sí El identificador del registro, un número entero.
Fields Sí Los campos que se definen: una matriz de al menos una entrada.

Cada entrada de Fields:

Campo Obligatorio Significado
Code Sí El código del campo de datos, como en la página Data Field Definitions. No distingue entre mayúsculas y minúsculas.
Value Sí El nuevo valor, como texto: consulte Valores. No puede estar vacío ni ser null: este punto de conexión no borra un valor.
Remarks No; sí para un activo Las observaciones. Una cadena vacía las borra. Si se omite, las observaciones se quedan como están, salvo en un activo, en el que siempre debe enviar Remarks.

TrakIT lee estos campos por su nombre, por lo que los nombres distinguen entre mayúsculas y minúsculas: Ref, RefID, Fields, Code, Value y Remarks, exactamente como se escriben aquí.

Ref El registro, y cuándo se pueden definir sus campos Sus campos de datos
asset Un activo que esté activo. Assets, en la pestaña Asset Data
bill Una factura de proveedor no finalizada. Bills, en la pestaña Data
invoice Una factura no aprobada. Invoices, en la pestaña Data
receipt Un cobro no finalizado. Receipts, en la pestaña Data
payment Un pago no finalizado. Payments, en la pestaña Data
quotation Un presupuesto en Draft o Under Revision. Quotations, en la pestaña Data
location Una ubicación. Locations, en la pestaña Data
yardmove Un movimiento de patio aún no realizado. Yard Moves: solo los campos configurados para [ All Move Types ], en la pestaña Data

En un registro de una empresa, solo se pueden definir los campos de esa empresa. Use receipt para un cobro y payment para un pago: cada uno tiene sus propios campos.

Tipo de dato Envíe
Number Un número, con . como separador decimal. TrakIT lo redondea a la Decimal Precision del campo.
Date La fecha y la hora en UTC, como yyyy-MM-ddTHH:mm:ss, sin sufijo de zona horaria. TrakIT conserva los minutos. Consulte Fechas.
Text Cualquier texto o, para un campo con una lista de elementos, un elemento de la lista. Para varios elementos, sepárelos con saltos de línea (\n).
Hyperlink Una dirección web. TrakIT añade http:// cuando no tiene esquema.
Phone Hasta 15 caracteres: dígitos, un + inicial opcional y un prefijo entre paréntesis si hace falta.
Entity El nombre, el código o el número de registro de una entidad del Entity Type del campo. Si ninguna entidad coincide exactamente, TrakIT toma la primera entidad cuyo nombre o código lo contenga, así que envíe un valor que coincida exactamente con una entidad. TrakIT guarda el texto que envía: envíe el nombre de la entidad tal como lo muestra TrakIT.

Los campos calculados no se pueden definir: TrakIT los calcula.

TrakIT comprueba primero la solicitud y el registro:

Regla Info si no se cumple
El cuerpo es un objeto JSON. Payload is missing
Se indica Ref. Parameter Ref is missing
Se indica RefID, como número. Parameter RefID is missing, Parameter RefID must be a number
Se indica Fields, con al menos una entrada. Parameter Fields is missing, No field data found
El activo existe y está activo. No such asset, Asset not active
La factura de proveedor existe y no está finalizada. No such bill, Bill is finalised
El cobro o el pago existe y no está finalizado. No such receipt, No such payment, Transaction is finalised
La ubicación existe. No such location
La factura existe y no está aprobada. No such invoice, Invoice is approved
El presupuesto existe y está en Draft o Under Revision. No such quotation, Quotation data cannot be changed
El movimiento de patio existe y no está realizado. No such move, Move is already executed

Con cualquier otro Ref, todos los campos vuelven con Code not found.

Después, TrakIT comprueba y guarda cada campo por separado, en el orden de envío. Un campo que falla no detiene a los demás. Su Result en la respuesta es uno de estos:

Regla Result del campo si no se cumple
La entrada tiene un Code y un Value. Code is missing (el Code del resultado es entonces -), Value Field is missing
El registro tiene un campo de datos con este código. Code not found
El campo está activo. Field is not Active; para un activo, Code/Field is not Active
El valor no es null y, para un activo, no está vacío. Invalid Value
El campo no es calculado. Field is a computed field; para un activo, Update to Computed Fields is not allowed
Una fecha es una fecha. Invalid Date; para un activo, Invalid Date/Time
Un campo con una lista de elementos recibe elementos de la lista, no más de los que admite el campo. Value does not belong to the list of items, Value not from list, Value '...' not from list, Max ... items only
Un número es numérico, de 18 caracteres como máximo. Value must be numeric, Value too big; para un activo, Invalid value, Value too big!
Un importe es numérico. Value must be numeric.
Se encuentra la entidad. Entity ID missing
Un hipervínculo es una dirección web válida. Data specified is not a valid URL
Un número de teléfono tiene como máximo 15 caracteres, con la forma indicada antes. Phone number is too long, Not a phone number
Cualquier otro texto no empieza por =, + ni @, y no contiene < seguido de una letra. Value has possible html tags or disallowed text
El valor coincide con el patrón del campo, si el soporte de TrakIT ha definido uno. Validation: ..., con la descripción del patrón
El valor supera la comprobación del campo, si el soporte de TrakIT ha definido una. No para los activos. El mensaje propio de la comprobación, o SQL Validation Error. Please contact Support.
El valor de un campo Unique no se utiliza en otro registro. No para los activos. Value already exists
Las observaciones tienen como máximo 5000 caracteres (2000 para un activo), y no empiezan por =, + ni @ ni contienen < seguido de una letra. Remarks cannot exceed 5000 characters., Remarks has possible html tags Or disallowed text; para un activo, Remarks cannot exceed 2000 characters., Remarks has possible html tags or disallowed text
Se superan las validaciones personalizadas que el soporte de TrakIT puede definir para Data Fields > Update. No para los activos. Consulte Validaciones y acciones. El mensaje propio de la validación
El valor o las observaciones difieren de lo guardado. No Change

Cuando el registro supera sus comprobaciones, Code es 1, pase lo que pase con cada campo. RetInfo contiene un resultado por cada entrada de Fields, en el orden de envío. Para los registros que no son activos, RowsAffected es el número de campos guardados; para un activo siempre es 0, así que cuente en su lugar los resultados Success. Identity y Scalar no se utilizan.

{
"Code": 1,
"Info": "",
"RetInfo": [
{ "Code": "COSTCTR", "Result": "Success" },
{ "Code": "PAYDUE", "Result": "No Change" }
],
"RowsAffected": 1,
"Scalar": null,
"Identity": 0
}
Campo Significado
Code El código del campo.
Result Success si el campo se ha guardado, No Change si el valor y las observaciones ya estaban guardados, o el motivo por el que no se ha guardado, según las reglas.
  • Después de guardar los campos, TrakIT vuelve a calcular los campos de datos calculados del registro.
  • Para los registros que no son activos, las acciones personalizadas que el soporte de TrakIT puede definir para Data Fields > Update se ejecutan después de guardar cada campo.
  • Los valores guardados aquí no se copian en las órdenes de trabajo, ni siquiera en los campos de activo y de movimiento de patio configurados para copiarlos.
  • Volver a enviar los mismos campos devuelve No Change y no cambia nada, así que un reintento no supone ningún riesgo.