Saltar al contenido
← Todas las píldoras

Xrm.WebApi en una chuleta: crear, leer, actualizar y borrar

Esta es la chuleta que tengo a mano para las cuatro operaciones básicas con Xrm.WebApi desde un formulario, usando async/await:

// Crear: devuelve { entityType, id }
const { id } = await Xrm.WebApi.createRecord("account", {
  name: "Axazure",
  revenue: 5000000,
  "primarycontactid@odata.bind": "/contacts(00000000-0000-0000-0000-000000000000)",
});
 
// Leer un registro
const account = await Xrm.WebApi.retrieveRecord("account", id, "?$select=name,revenue");
 
// Actualizar (ojo: el id va como segundo parámetro)
await Xrm.WebApi.updateRecord("account", id, { revenue: 6000000 });
 
// Borrar
await Xrm.WebApi.deleteRecord("account", id);

Los lookups se rellenan con campo@odata.bind y la ruta /<nombre-del-conjunto>(<guid>), en plural (/contacts(...)). Ese nombre de campo es la propiedad de navegación, que en los campos personalizados suele coincidir con el nombre de esquema, con sus mayúsculas.

Pon siempre $select al leer, porque si no te traes todas las columnas y la llamada va bastante más lenta.

El fallo que más veo es en updateRecord, cuando alguien se olvida del id y pasa los datos como segundo parámetro. Falla, y el mensaje de error no ayuda mucho a darse cuenta.

Compartir:LinkedInX

¿Te ha servido?

Si necesitas ayuda con esto en tu proyecto, escríbeme.

Más píldoras