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/SaveDataFieldToken: your-tokenContent-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í.
Registros
Sección titulada «Registros»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.
Valores
Sección titulada «Valores»| 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 |
Respuesta
Sección titulada «Respuesta»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 Changey no cambia nada, así que un reintento no supone ningún riesgo.

