This worked well in a JavaScript file:
Xrm.Page.data.entity.getId().replace(“{“, “”).replace(“}”, “”);
Here is a good post on how to Set and retrieve a lookup ID and value using XRM.WebAPI
https://carldesouza.com/set-retrieve-id-lookup-value-using-xrmwebapi/
This will grab the owner of accounts called Customer 1:
Xrm.WebApi.retrieveMultipleRecords("account", "?$select=_ownerid_value&$filter=name eq 'Customer 1'").then(
function success(result) {
for (var i = 0; i < result.entities.length; i++) {
alert(result.entities[i]._ownerid_value);
break; // We will grab the first one
}
},
function(error) {
alert("Error: " + error.message);
}
);
Then here is an example to set the field for example user
Xrm.WebApi.retrieveMultipleRecords("systemuser", "?$select=fullname,ownerid&amp;amp;$filter=fullname eq 'example user'").then(
function success(result) {
for (var i = 0; i < result.entities.length; i++) {
var p = result.entities[0];
if (p != null) {
var lookup = new Array();
lookup[0] = new Object;
lookup[0].id = p["_ownerid_value"];
lookup[0].name = p["fullname"];
lookup[0].entityType = p["_ownerid_value@Microsoft.Dynamics.CRM.lookuplogicalname"];
Xrm.Page.getAttribute("ownerid").setValue(lookup);
}
break; // We will grab the first one
}
},
function(error) {
alert("Error: " + error.message);
}
);/* Your code... */
Reference:
https://carldesouza.com/get-id-record-page-dynamics-365-power-apps/