When we write code to update the SharePoint list item, we use the Client-side object model or Javascript object model. When we write the code we get two options for updating the list item update() and systemupdate().
update vs system update SharePoint?
update() method: When we use the update() method it updates the "Modified" and "Modified By" column and if the Versioning option is enabled then it also updates the version column.
systemupdate(): When we use systemupdate() method. this method did not update the "Modified" and "Modified By" column and Version. So when you do not want to update these columns while updating use the systemupdate() method.
Let's view the code written in Jsom to update the item using the systemupdate().
function updateItem()
{
var clientContext = new SP.ClientContext('enter your site url');
var oList = clientContext.get_web().get_lists().getByTitle('enter title of your list');
var oListItem = oList.getItemById(7);
oListItem.set_item('name','xyz');
oListItem.systemUpdate();
clientContext.executeQueryAsync(Function.createDelegate(this, this.ItemUpdate), Function.createDelegate(this, this.onQueryFailed));
}
When to use the system update?
Sometimes you need to update the list item but you do not want to trigger the attached workflow or MS flow. In such cases, you can use the systemUpdate() but if you are using REST API to update the list items, there is no such thing as system update() is available. It works when you use JSOM or CSOM.
Permission level requirements for the system update?
On permission level, to update the item using JSOM/CSOM system update require at least edit permission and if you are using the Rest API full control permission required.
update vs system update SharePoint?
update() method: When we use the update() method it updates the "Modified" and "Modified By" column and if the Versioning option is enabled then it also updates the version column.
systemupdate(): When we use systemupdate() method. this method did not update the "Modified" and "Modified By" column and Version. So when you do not want to update these columns while updating use the systemupdate() method.
Let's view the code written in Jsom to update the item using the systemupdate().
function updateItem()
{
var clientContext = new SP.ClientContext('enter your site url');
var oList = clientContext.get_web().get_lists().getByTitle('enter title of your list');
var oListItem = oList.getItemById(7);
oListItem.set_item('name','xyz');
oListItem.systemUpdate();
clientContext.executeQueryAsync(Function.createDelegate(this, this.ItemUpdate), Function.createDelegate(this, this.onQueryFailed));
}
When to use the system update?
Sometimes you need to update the list item but you do not want to trigger the attached workflow or MS flow. In such cases, you can use the systemUpdate() but if you are using REST API to update the list items, there is no such thing as system update() is available. It works when you use JSOM or CSOM.
Permission level requirements for the system update?
On permission level, to update the item using JSOM/CSOM system update require at least edit permission and if you are using the Rest API full control permission required.
This is really nice post, I love this content also visit Google Search Api. Thanks for sharing.
ReplyDelete