Crear y actualizar registros desde Power Pages con la Web API
Una vez tienes la Web API activada para la tabla y el wrapper safeAjax en el Header, crear un registro es un POST y actualizarlo un PATCH, los dos contra /_api/<conjunto>:
function createRecord(entitySet, data) {
return utilities.safeAjax({
type: "POST",
url: "/_api/" + entitySet,
contentType: "application/json",
data: JSON.stringify(data),
success: function (res, status, xhr) {
console.log("Creado con id", xhr.getResponseHeader("entityid"));
},
});
}
function updateRecord(entitySet, id, data) {
return utilities.safeAjax({
type: "PATCH",
url: "/_api/" + entitySet + "(" + id + ")",
contentType: "application/json",
data: JSON.stringify(data),
});
}
createRecord("accounts", { name: "Axazure", address1_city: "Madrid" });Fíjate en que el nombre va en plural, porque es el entity set (accounts, contacts). Y el id del registro nuevo no lo vas a encontrar en el cuerpo de la respuesta, viene en la cabecera entityid.
Si justo después intentas leer lo que acabas de crear, puede que no aparezca todavía. Es la caché de Power Pages, no un fallo de tu código.