Editar un registro

Para editar un registro, utilice un método HTTP PATCH con el punto de conexión de API records y especifique el nombre de la base de datos, la presentación y el ID de registro.

Método HTTP

PATCH

URL

/fmi/data/versión/databases/nombre-base-de-datos/layouts/nombre-presentación/records/id-registro

versión: la versión de FileMaker Data API solicitada puede utilizar v1, v2 o vLatest.

nombre-base-de-datos: el nombre de la base de datos alojada.

nombre-presentación: el nombre de la presentación que se utilizará como contexto para la edición del registro.

id-registro: el ID del registro que se va a editar.

Encabezado HTTP

Content-Type: application/json

Authorization: Bearer token-sesión, donde token-sesión es el valor exclusivo de X-FM-Data-Access-Token para la sesión de la base de datos.

Parámetros

Datos de registros en formato JSON que contienen los pares de campo y valor que se van a actualizar. Los datos pueden especificar registros relacionados o portales que se encuentran en la presentación mediante la especificación portalData. Un nombre de portal puede ser el nombre del objeto que se muestra en el Inspector de FileMaker Pro o el nombre de la tabla relacionada.

Solo se actualizarán los campos que especifique; los demás campos del registro no se modificarán. Si se especifica "{}" como valor de fieldData, no se actualiza el registro de destino.

Por ejemplo:

Copiar

  "fieldData": {
    "Nombre": "Joe",
    "deleteRelated": "Orders.3",
    "Campo de fecha": "20/1/2029"
  },
  "portalData": {
    "JobsTable": [
      {
        "recordId": "70"
        "modId": "4"
        "TablaTrabajos::Nombre": "Contratista" 
      }
    ]
  },
  "opciones": {
    "entrymode": "guión",
    "prohibitmode": "guión"
  },
  "dateformats": 2
}

Otros parámetros opcionales del cuerpo de la solicitud:

  • modId - Especifica un ID de modificación para asegurarse de que está editando la versión actual de un registro. Si el valor de ID de modificación no coincide con el valor ID de modificación actual de la base de datos, no se modificará el registro.

  • opciones - Al escribir datos, estas opciones controlan:

    • entrymode - Ignora si la opción Permitir al usuario anular durante la introducción de datos de un campo para la validación de datos está seleccionada y utiliza esta opción en su lugar. El valor "guión" ignora los requisitos de validación de datos de un campo (se llama así porque los guiones ignoran estos requisitos). El valor "usuario" (predeterminado) sigue los requisitos de validación de un campo.

    • prohibitmode - Ignora si la opción Prohibir la modificación del valor durante la introducción de datos de un campo para la introducción automática de datos está seleccionada y utiliza esta opción en su lugar. El valor "guión" ignora los requisitos de introducción automática de datos de un campo (así llamado porque los guiones ignoran estos requisitos). El valor "usuario" (predeterminado) sigue los requisitos de entrada automática de datos de un campo.

  • dateformats - Especifica el formato de los campos de fecha y de fecha y hora. El valor es 0 para los formatos de EE.  U., 1 para los formatos de la configuración regional del archivo o 2 para los formatos ISO 8601. Si no se especifica, el valor predeterminado es 0.

  • script.prerequest, script.presort, script - Ejecuta guiones de FileMaker como parte de la solicitud. Consulte Ejecutar un guión con otra petición.

Respuesta

El cuerpo de respuesta y una matriz de mensajes que muestra el código de error 0.

Por ejemplo:

Copiar
{
  "response": {
    "modId": "3"
  },
  "messages": [
    {
      "code": "0",
      "message": "OK"
    }
  ]
}

Consulte Respuestas de error.

Notas 

  • Cuando edite registros mediante FileMaker Data API, la validación de campo se aplica de forma predeterminada (a menos que la anule la opción entrymode anterior). Si la validación de campos se aplica y los datos no superan la validación, recibirá un mensaje de error y no se actualizará el registro.

  • Para eliminar un registro relacionado, utilice la sintaxis deleteRelated.

    Por ejemplo, para eliminar un único registro con el ID "3" de la tabla de "Pedidos" relacionada:

    "deleteRelated" : "Orders.3"

    Por ejemplo, para eliminar todos los registros con los ID "7" y "9" de la tabla de "Pedidos" relacionada:

    "deleteRelated" : ["Orders.7", "Orders.9"]