<?xml version="1.0" encoding="UTF-8"?><unload unload_date="2019-03-07 04:41:13">
<sys_remote_update_set action="INSERT_OR_UPDATE">
<application display_value="Global">global</application>
<application_name>Global</application_name>
<application_scope>global</application_scope>
<application_version/>
<collisions/>
<commit_date/>
<deleted/>
<description>http://updatesets.snc.guru/</description>
<inserted/>
<name>SNG-Smarter Update Sets-v1.0</name>
<origin_sys_id/>
<parent display_value=""/>
<release_date/>
<remote_base_update_set display_value=""/>
<remote_parent_id/>
<remote_sys_id>d984124b3733a70090b68cf6c3990e57</remote_sys_id>
<state>loaded</state>
<summary/>
<sys_class_name>sys_remote_update_set</sys_class_name>
<sys_created_by>admin</sys_created_by>
<sys_created_on>2019-03-07 04:41:13</sys_created_on>
<sys_id>6635a7913704770090b68cf6c3990e32</sys_id>
<sys_mod_count>0</sys_mod_count>
<sys_updated_by>admin</sys_updated_by>
<sys_updated_on>2019-03-07 04:41:13</sys_updated_on>
<update_set display_value=""/>
<update_source display_value=""/>
<updated/>
</sys_remote_update_set>
<sys_update_xml action="INSERT_OR_UPDATE">
<action>INSERT_OR_UPDATE</action>
<application display_value="Global">global</application>
<category>customer</category>
<comments/>
<name>sys_properties_category_m2m_bcc51b5537c0770090b68cf6c3990edc</name>
<payload><![CDATA[<?xml version="1.0" encoding="UTF-8"?><record_update table="sys_properties_category_m2m"><sys_properties_category_m2m action="INSERT_OR_UPDATE"><category display_value="Smarter Update Sets">4cab4515370c370090b68cf6c3990ed9</category><order>600</order><property display_value="sng.update_sets.protect_default_set" name="sng.update_sets.protect_default_set">e3355f1537c0770090b68cf6c3990ee4</property><sys_class_name>sys_properties_category_m2m</sys_class_name><sys_created_by>admin</sys_created_by><sys_created_on>2019-03-07 03:33:39</sys_created_on><sys_id>bcc51b5537c0770090b68cf6c3990edc</sys_id><sys_mod_count>1</sys_mod_count><sys_name>sng.update_sets.protect_default_set.Smarter Update Sets</sys_name><sys_package display_value="Global" source="global">global</sys_package><sys_policy/><sys_scope display_value="Global">global</sys_scope><sys_update_name>sys_properties_category_m2m_bcc51b5537c0770090b68cf6c3990edc</sys_update_name><sys_updated_by>admin</sys_updated_by><sys_updated_on>2019-03-07 03:36:56</sys_updated_on></sys_properties_category_m2m></record_update>]]></payload>
<payload_hash>242156005</payload_hash>
<remote_update_set display_value="SNG-Smarter Update Sets-v1.0">6635a7913704770090b68cf6c3990e32</remote_update_set>
<replace_on_upgrade>false</replace_on_upgrade>
<sys_created_by>admin</sys_created_by>
<sys_created_on>2019-03-07 04:41:13</sys_created_on>
<sys_id>2235a7913704770090b68cf6c3990e35</sys_id>
<sys_mod_count>0</sys_mod_count>
<sys_recorded_at>1695639b6870000001</sys_recorded_at>
<sys_updated_by>admin</sys_updated_by>
<sys_updated_on>2019-03-07 04:41:13</sys_updated_on>
<table/>
<target_name>sng.update_sets.protect_default_set.Smarter Update Sets</target_name>
<type>Category Property</type>
<update_domain>global</update_domain>
<update_guid>c9861f55b3c0770033b2e6db120602e1</update_guid>
<update_guid_history>c9861f55b3c0770033b2e6db120602e1:242156005,b0c51b5551c07700c7ab00f41f3515df:-78091062</update_guid_history>
<update_set display_value=""/>
<view/>
</sys_update_xml>
<sys_update_xml action="INSERT_OR_UPDATE">
<action>INSERT_OR_UPDATE</action>
<application display_value="Global">global</application>
<category>customer</category>
<comments/>
<name>sys_properties_category_m2m_37f16595374c370090b68cf6c3990e25</name>
<payload><![CDATA[<?xml version="1.0" encoding="UTF-8"?><record_update table="sys_properties_category_m2m"><sys_properties_category_m2m action="INSERT_OR_UPDATE"><category display_value="Smarter Update Sets">4cab4515370c370090b68cf6c3990ed9</category><order>400</order><property display_value="sng.update_sets.warn_on_duplicate_name" name="sng.update_sets.warn_on_duplicate_name">02e16155374c370090b68cf6c3990ec5</property><sys_class_name>sys_properties_category_m2m</sys_class_name><sys_created_by>admin</sys_created_by><sys_created_on>2019-03-06 19:07:52</sys_created_on><sys_id>37f16595374c370090b68cf6c3990e25</sys_id><sys_mod_count>1</sys_mod_count><sys_name>sng.update_sets.warn_on_duplicate_name.Smarter Update Sets</sys_name><sys_package display_value="Global" source="global">global</sys_package><sys_policy/><sys_scope display_value="Global">global</sys_scope><sys_update_name>sys_properties_category_m2m_37f16595374c370090b68cf6c3990e25</sys_update_name><sys_updated_by>admin</sys_updated_by><sys_updated_on>2019-03-06 23:04:39</sys_updated_on></sys_properties_category_m2m></record_update>]]></payload>
<payload_hash>-2093343550</payload_hash>
<remote_update_set display_value="SNG-Smarter Update Sets-v1.0">6635a7913704770090b68cf6c3990e32</remote_update_set>
<replace_on_upgrade>false</replace_on_upgrade>
<sys_created_by>admin</sys_created_by>
<sys_created_on>2019-03-07 04:41:13</sys_created_on>
<sys_id>2635a7913704770090b68cf6c3990e34</sys_id>
<sys_mod_count>0</sys_mod_count>
<sys_recorded_at>16955406c6a0000001</sys_recorded_at>
<sys_updated_by>admin</sys_updated_by>
<sys_updated_on>2019-03-07 04:41:13</sys_updated_on>
<table/>
<target_name>sng.update_sets.warn_on_duplicate_name.Smarter Update Sets</target_name>
<type>Category Property</type>
<update_domain>global</update_domain>
<update_guid>d0381611cb00770080eda481ae040a7e</update_guid>
<update_guid_history>d0381611cb00770080eda481ae040a7e:-2093343550,3bf16595b74c370019e5a48a9bf33027:1689080831</update_guid_history>
<update_set display_value=""/>
<view/>
</sys_update_xml>
<sys_update_xml action="INSERT_OR_UPDATE">
<action>INSERT_OR_UPDATE</action>
<application display_value="Global">global</application>
<category>customer</category>
<comments/>
<name>sys_properties_c9750e5537cc370090b68cf6c3990e38</name>
<payload><![CDATA[<?xml version="1.0" encoding="UTF-8"?><record_update table="sys_properties"><sys_properties action="INSERT_OR_UPDATE"><choices/><description>&lt;strong&gt;Prevent Closing Update Sets with Checked-out Workflows&lt;/strong&gt;&lt;br /&gt;&#13;
If true, this will prevent anyone from closing an Update Set that contains a Workflow which is currently checked out. &lt;br /&gt;&#13;
&lt;strong&gt;Default&lt;/strong&gt;: true</description><ignore_cache>false</ignore_cache><is_private>false</is_private><name>sng.update_sets.prevent_closing_active_wf_sets</name><read_roles/><suffix/><sys_class_name>sys_properties</sys_class_name><sys_created_by>admin</sys_created_by><sys_created_on>2019-03-06 21:42:47</sys_created_on><sys_id>c9750e5537cc370090b68cf6c3990e38</sys_id><sys_mod_count>1</sys_mod_count><sys_name>sng.update_sets.prevent_closing_active_wf_sets</sys_name><sys_package display_value="Global" source="global">global</sys_package><sys_policy/><sys_scope display_value="Global">global</sys_scope><sys_update_name>sys_properties_c9750e5537cc370090b68cf6c3990e38</sys_update_name><sys_updated_by>admin</sys_updated_by><sys_updated_on>2019-03-06 21:49:33</sys_updated_on><type>boolean</type><value>true</value><write_roles>admin</write_roles></sys_properties><sys_translated_text action="delete_multiple" query="documentkey=c9750e5537cc370090b68cf6c3990e38"/></record_update>]]></payload>
<payload_hash>-1916114389</payload_hash>
<remote_update_set display_value="SNG-Smarter Update Sets-v1.0">6635a7913704770090b68cf6c3990e32</remote_update_set>
<replace_on_upgrade>false</replace_on_upgrade>
<sys_created_by>admin</sys_created_by>
<sys_created_on>2019-03-07 04:41:13</sys_created_on>
<sys_id>2a35a7913704770090b68cf6c3990e33</sys_id>
<sys_mod_count>0</sys_mod_count>
<sys_recorded_at>16954fbb1360000001</sys_recorded_at>
<sys_updated_by>admin</sys_updated_by>
<sys_updated_on>2019-03-07 04:41:13</sys_updated_on>
<table/>
<target_name>sng.update_sets.prevent_closing_active_wf_sets</target_name>
<type>System Property</type>
<update_domain>global</update_domain>
<update_guid>20078e95abcc37009560813f12e3583d</update_guid>
<update_guid_history>20078e95abcc37009560813f12e3583d:-1916114389,25750e55f0cc3700595a59cf11a20d3c:-1775372438</update_guid_history>
<update_set display_value=""/>
<view/>
</sys_update_xml>
<sys_update_xml action="INSERT_OR_UPDATE">
<action>INSERT_OR_UPDATE</action>
<application display_value="Global">global</application>
<category>customer</category>
<comments/>
<name>sys_script_d1bac71d3780770090b68cf6c3990e7d</name>
<payload>&lt;?xml version="1.0" encoding="UTF-8"?&gt;&lt;record_update sys_domain="global" table="sys_script"&gt;&lt;sys_script action="INSERT_OR_UPDATE"&gt;&lt;abort_action&gt;false&lt;/abort_action&gt;&lt;access&gt;package_private&lt;/access&gt;&lt;action_delete&gt;false&lt;/action_delete&gt;&lt;action_insert&gt;true&lt;/action_insert&gt;&lt;action_query&gt;false&lt;/action_query&gt;&lt;action_update&gt;true&lt;/action_update&gt;&lt;active&gt;true&lt;/active&gt;&lt;add_message&gt;false&lt;/add_message&gt;&lt;advanced&gt;true&lt;/advanced&gt;&lt;change_fields&gt;false&lt;/change_fields&gt;&lt;client_callable&gt;false&lt;/client_callable&gt;&lt;collection&gt;sys_update_set&lt;/collection&gt;&lt;condition&gt;gs.getProperty('sng.update_sets.prevent_duplicate_name', 'true').toString() == 'true'&lt;/condition&gt;&lt;description/&gt;&lt;execute_function&gt;false&lt;/execute_function&gt;&lt;filter_condition table="sys_update_set"&gt;nameVALCHANGES^EQ&lt;item endquery="false" field="name" goto="false" newquery="false" operator="VALCHANGES" or="false" value=""/&gt;&lt;item endquery="true" field="" goto="false" newquery="false" operator="=" or="false" value=""/&gt;&lt;/filter_condition&gt;&lt;is_rest&gt;false&lt;/is_rest&gt;&lt;message/&gt;&lt;name&gt;Prevent duplicate Update Set name&lt;/name&gt;&lt;order&gt;100&lt;/order&gt;&lt;priority&gt;100&lt;/priority&gt;&lt;rest_method/&gt;&lt;rest_method_text/&gt;&lt;rest_service/&gt;&lt;rest_service_text/&gt;&lt;rest_variables/&gt;&lt;role_conditions/&gt;&lt;script&gt;&lt;![CDATA[(function executeRule(current, previous /*null when async*/) {
	
	var setID = current.getValue('sys_id');
	var setName = current.getValue('name');
	var setScope = current.getValue('sys_scope');
	
	var grUpdateSet = new GlideRecord('sys_update_set');
	
	grUpdateSet.addQuery('sys_id', '!=', setID);
	grUpdateSet.addQuery('name', setName);
	grUpdateSet.addQuery('sys_scope', setScope);
	grUpdateSet.setLimit(1);
	grUpdateSet.query();
	
	if (grUpdateSet.next()) {
		gs.addErrorMessage('There is already another Update Set with the name "' + current.getValue('name') + '". Aborting update.');
		current.setAbortAction(true);
		if (current.isNewRecord()) {
			gs.setRedirect(grUpdateSet.getLink());
		} else {
			gs.setRedirect(current.getLink());
		}
	} else {
		gs.setRedirect(current);
	}
	
})(current, previous);]]&gt;&lt;/script&gt;&lt;sys_class_name&gt;sys_script&lt;/sys_class_name&gt;&lt;sys_created_by&gt;admin&lt;/sys_created_by&gt;&lt;sys_created_on&gt;2019-03-07 02:51:13&lt;/sys_created_on&gt;&lt;sys_domain&gt;global&lt;/sys_domain&gt;&lt;sys_domain_path&gt;/&lt;/sys_domain_path&gt;&lt;sys_id&gt;d1bac71d3780770090b68cf6c3990e7d&lt;/sys_id&gt;&lt;sys_mod_count&gt;0&lt;/sys_mod_count&gt;&lt;sys_name&gt;Prevent duplicate Update Set name&lt;/sys_name&gt;&lt;sys_overrides/&gt;&lt;sys_package display_value="Global" source="global"&gt;global&lt;/sys_package&gt;&lt;sys_policy/&gt;&lt;sys_scope display_value="Global"&gt;global&lt;/sys_scope&gt;&lt;sys_update_name&gt;sys_script_d1bac71d3780770090b68cf6c3990e7d&lt;/sys_update_name&gt;&lt;sys_updated_by&gt;admin&lt;/sys_updated_by&gt;&lt;sys_updated_on&gt;2019-03-07 02:51:13&lt;/sys_updated_on&gt;&lt;template/&gt;&lt;when&gt;before&lt;/when&gt;&lt;/sys_script&gt;&lt;sys_translated_text action="delete_multiple" query="documentkey=d1bac71d3780770090b68cf6c3990e7d"/&gt;&lt;/record_update&gt;</payload>
<payload_hash>-1597123210</payload_hash>
<remote_update_set display_value="SNG-Smarter Update Sets-v1.0">6635a7913704770090b68cf6c3990e32</remote_update_set>
<replace_on_upgrade>false</replace_on_upgrade>
<sys_created_by>admin</sys_created_by>
<sys_created_on>2019-03-07 04:41:13</sys_created_on>
<sys_id>2a35a7913704770090b68cf6c3990e36</sys_id>
<sys_mod_count>0</sys_mod_count>
<sys_recorded_at>169560fdab00000001</sys_recorded_at>
<sys_updated_by>admin</sys_updated_by>
<sys_updated_on>2019-03-07 04:41:13</sys_updated_on>
<table>sys_update_set</table>
<target_name>Prevent duplicate Update Set name</target_name>
<type>Business Rule</type>
<update_domain>global</update_domain>
<update_guid>db0c4fd969807700c6ba1a21c85d2a3a</update_guid>
<update_guid_history>db0c4fd969807700c6ba1a21c85d2a3a:-1597123210</update_guid_history>
<update_set display_value=""/>
<view/>
</sys_update_xml>
<sys_update_xml action="INSERT_OR_UPDATE">
<action>INSERT_OR_UPDATE</action>
<application display_value="Global">global</application>
<category>customer</category>
<comments/>
<name>sys_properties_02e16155374c370090b68cf6c3990ec5</name>
<payload><![CDATA[<?xml version="1.0" encoding="UTF-8"?><record_update table="sys_properties"><sys_properties action="INSERT_OR_UPDATE"><choices/><description>&lt;strong&gt;Warn on duplicate Update Set name&lt;/strong&gt;&lt;br /&gt;&#13;
If set to true, then whenever an Update Set's "Name" field is updated client-side, a script will run to check whether there are any Update Sets with duplicate names in the same scope. If there are any, then it'll display a warning. &lt;br /&gt;&#13;
The warning does not prevent the user from saving the Update Set. To prevent duplicate Update Set names within the same scope, ensure that the "&lt;i&gt;sng.update_sets.prevent_duplicate_name&lt;/i&gt;" property is set to &lt;i&gt;true&lt;/i&gt;.&lt;br /&gt;&#13;
&lt;strong&gt;Default&lt;/strong&gt;: true</description><ignore_cache>false</ignore_cache><is_private>false</is_private><name>sng.update_sets.warn_on_duplicate_name</name><read_roles/><suffix/><sys_class_name>sys_properties</sys_class_name><sys_created_by>admin</sys_created_by><sys_created_on>2019-03-06 19:07:28</sys_created_on><sys_id>02e16155374c370090b68cf6c3990ec5</sys_id><sys_mod_count>3</sys_mod_count><sys_name>sng.update_sets.warn_on_duplicate_name</sys_name><sys_package display_value="Global" source="global">global</sys_package><sys_policy/><sys_scope display_value="Global">global</sys_scope><sys_update_name>sys_properties_02e16155374c370090b68cf6c3990ec5</sys_update_name><sys_updated_by>admin</sys_updated_by><sys_updated_on>2019-03-06 19:47:41</sys_updated_on><type>boolean</type><value>true</value><write_roles>admin</write_roles></sys_properties><sys_translated_text action="delete_multiple" query="documentkey=02e16155374c370090b68cf6c3990ec5"/></record_update>]]></payload>
<payload_hash>129915928</payload_hash>
<remote_update_set display_value="SNG-Smarter Update Sets-v1.0">6635a7913704770090b68cf6c3990e32</remote_update_set>
<replace_on_upgrade>false</replace_on_upgrade>
<sys_created_by>admin</sys_created_by>
<sys_created_on>2019-03-07 04:41:13</sys_created_on>
<sys_id>2e35a7913704770090b68cf6c3990e32</sys_id>
<sys_mod_count>0</sys_mod_count>
<sys_recorded_at>169548c1f990000001</sys_recorded_at>
<sys_updated_by>admin</sys_updated_by>
<sys_updated_on>2019-03-07 04:41:13</sys_updated_on>
<table/>
<target_name>sng.update_sets.warn_on_duplicate_name</target_name>
<type>System Property</type>
<update_domain>global</update_domain>
<update_guid>eb1bad5d434c3700866583f7513036de</update_guid>
<update_guid_history>eb1bad5d434c3700866583f7513036de:129915928,5d83a9d51b4c3700187f78e011202b15:-1249081372,f7126595ed4c370096b84bed5109645b:-1895142486,6ae16155594c37002601c062efee98c8:-599744903</update_guid_history>
<update_set display_value=""/>
<view/>
</sys_update_xml>
<sys_update_xml action="INSERT_OR_UPDATE">
<action>INSERT_OR_UPDATE</action>
<application display_value="Global">global</application>
<category>customer</category>
<comments/>
<name>sys_script_9f340d5d37c8370090b68cf6c3990e43</name>
<payload>&lt;?xml version="1.0" encoding="UTF-8"?&gt;&lt;record_update sys_domain="global" table="sys_script"&gt;&lt;sys_script action="INSERT_OR_UPDATE"&gt;&lt;abort_action&gt;false&lt;/abort_action&gt;&lt;access&gt;package_private&lt;/access&gt;&lt;action_delete&gt;false&lt;/action_delete&gt;&lt;action_insert&gt;false&lt;/action_insert&gt;&lt;action_query&gt;false&lt;/action_query&gt;&lt;action_update&gt;true&lt;/action_update&gt;&lt;active&gt;true&lt;/active&gt;&lt;add_message&gt;false&lt;/add_message&gt;&lt;advanced&gt;true&lt;/advanced&gt;&lt;change_fields&gt;false&lt;/change_fields&gt;&lt;client_callable&gt;false&lt;/client_callable&gt;&lt;collection&gt;sys_update_set&lt;/collection&gt;&lt;condition&gt;gs.getProperty('sng.update_sets.prevent_mixed_scope_sets', 'true').toString() == 'true'&lt;/condition&gt;&lt;description/&gt;&lt;execute_function&gt;false&lt;/execute_function&gt;&lt;filter_condition table="sys_update_set"&gt;stateCHANGESTOcomplete^EQ&lt;item endquery="false" field="state" goto="false" newquery="false" operator="CHANGESTO" or="false" value="complete"/&gt;&lt;item endquery="true" field="" goto="false" newquery="false" operator="=" or="false" value=""/&gt;&lt;/filter_condition&gt;&lt;is_rest&gt;false&lt;/is_rest&gt;&lt;message/&gt;&lt;name&gt;Prevent Mixed-scope Update Set Closure&lt;/name&gt;&lt;order&gt;100&lt;/order&gt;&lt;priority&gt;100&lt;/priority&gt;&lt;rest_method/&gt;&lt;rest_method_text/&gt;&lt;rest_service/&gt;&lt;rest_service_text/&gt;&lt;rest_variables/&gt;&lt;role_conditions/&gt;&lt;script&gt;&lt;![CDATA[(function executeRule(current, previous /*null when async*/) {
	
	var setUtil = new UpdateSetUtil(current);
	
	if (setUtil.hasMixedScope()) {
		gs.addErrorMessage('This Update Set cannot be closed, because it contains updates in multiple scopes. The state change has been reverted, but any other changes to this Update Set have been saved.');
		//If updates in a different scope from the set are found, disallow closure.
		
		//Revert state field, but do not reject other changes
		current.setValue('state', previous.getValue('state'));
	}
	
})(current, previous);]]&gt;&lt;/script&gt;&lt;sys_class_name&gt;sys_script&lt;/sys_class_name&gt;&lt;sys_created_by&gt;admin&lt;/sys_created_by&gt;&lt;sys_created_on&gt;2019-03-06 16:58:51&lt;/sys_created_on&gt;&lt;sys_domain&gt;global&lt;/sys_domain&gt;&lt;sys_domain_path&gt;/&lt;/sys_domain_path&gt;&lt;sys_id&gt;9f340d5d37c8370090b68cf6c3990e43&lt;/sys_id&gt;&lt;sys_mod_count&gt;2&lt;/sys_mod_count&gt;&lt;sys_name&gt;Prevent Mixed-scope Update Set Closure&lt;/sys_name&gt;&lt;sys_overrides/&gt;&lt;sys_package display_value="Global" source="global"&gt;global&lt;/sys_package&gt;&lt;sys_policy/&gt;&lt;sys_scope display_value="Global"&gt;global&lt;/sys_scope&gt;&lt;sys_update_name&gt;sys_script_9f340d5d37c8370090b68cf6c3990e43&lt;/sys_update_name&gt;&lt;sys_updated_by&gt;admin&lt;/sys_updated_by&gt;&lt;sys_updated_on&gt;2019-03-06 22:21:11&lt;/sys_updated_on&gt;&lt;template/&gt;&lt;when&gt;before&lt;/when&gt;&lt;/sys_script&gt;&lt;sys_translated_text action="delete_multiple" query="documentkey=9f340d5d37c8370090b68cf6c3990e43"/&gt;&lt;/record_update&gt;</payload>
<payload_hash>1514759604</payload_hash>
<remote_update_set display_value="SNG-Smarter Update Sets-v1.0">6635a7913704770090b68cf6c3990e32</remote_update_set>
<replace_on_upgrade>false</replace_on_upgrade>
<sys_created_by>admin</sys_created_by>
<sys_created_on>2019-03-07 04:41:13</sys_created_on>
<sys_id>2e35a7913704770090b68cf6c3990e35</sys_id>
<sys_mod_count>0</sys_mod_count>
<sys_recorded_at>1695518a34c0000001</sys_recorded_at>
<sys_updated_by>admin</sys_updated_by>
<sys_updated_on>2019-03-07 04:41:13</sys_updated_on>
<table>sys_update_set</table>
<target_name>Prevent Mixed-scope Update Set Closure</target_name>
<type>Business Rule</type>
<update_domain>global</update_domain>
<update_guid>f33e4e5943cc37002a3c6d44b1e61a41</update_guid>
<update_guid_history>f33e4e5943cc37002a3c6d44b1e61a41:1514759604,7a9f4d55e30c3700d07eb510138b4b2c:543745460,b174455dabc83700bef0a47c4ed0cd53:-660308468</update_guid_history>
<update_set display_value=""/>
<view/>
</sys_update_xml>
<sys_update_xml action="INSERT_OR_UPDATE">
<action>INSERT_OR_UPDATE</action>
<application display_value="Global">global</application>
<category>customer</category>
<comments/>
<name>sys_properties_category_m2m_2fbf02dd37cc370090b68cf6c3990efa</name>
<payload><![CDATA[<?xml version="1.0" encoding="UTF-8"?><record_update table="sys_properties_category_m2m"><sys_properties_category_m2m action="INSERT_OR_UPDATE"><category display_value="Smarter Update Sets">4cab4515370c370090b68cf6c3990ed9</category><order>300</order><property display_value="sng.update_sets.prevent_reopening_sets" name="sng.update_sets.prevent_reopening_sets">d25f4e1d37cc370090b68cf6c3990ea6</property><sys_class_name>sys_properties_category_m2m</sys_class_name><sys_created_by>admin</sys_created_by><sys_created_on>2019-03-06 22:27:43</sys_created_on><sys_id>2fbf02dd37cc370090b68cf6c3990efa</sys_id><sys_mod_count>2</sys_mod_count><sys_name>sng.update_sets.prevent_reopening_sets.Smarter Update Sets</sys_name><sys_package display_value="Global" source="global">global</sys_package><sys_policy/><sys_scope display_value="Global">global</sys_scope><sys_update_name>sys_properties_category_m2m_2fbf02dd37cc370090b68cf6c3990efa</sys_update_name><sys_updated_by>admin</sys_updated_by><sys_updated_on>2019-03-06 23:04:36</sys_updated_on></sys_properties_category_m2m></record_update>]]></payload>
<payload_hash>-1603475897</payload_hash>
<remote_update_set display_value="SNG-Smarter Update Sets-v1.0">6635a7913704770090b68cf6c3990e32</remote_update_set>
<replace_on_upgrade>false</replace_on_upgrade>
<sys_created_by>admin</sys_created_by>
<sys_created_on>2019-03-07 04:41:13</sys_created_on>
<sys_id>6235a7913704770090b68cf6c3990e34</sys_id>
<sys_mod_count>0</sys_mod_count>
<sys_recorded_at>169554062d40000001</sys_recorded_at>
<sys_updated_by>admin</sys_updated_by>
<sys_updated_on>2019-03-07 04:41:13</sys_updated_on>
<table/>
<target_name>sng.update_sets.prevent_reopening_sets.Smarter Update Sets</target_name>
<type>Category Property</type>
<update_domain>global</update_domain>
<update_guid>33285e55aa007700a5c26532becc0da0</update_guid>
<update_guid_history>33285e55aa007700a5c26532becc0da0:-1603475897,4e08d2118100770036dc4e83ba00cfa2:-342667770,23bf02dd63cc370017f62737fda091fd:918140357</update_guid_history>
<update_set display_value=""/>
<view/>
</sys_update_xml>
<sys_update_xml action="INSERT_OR_UPDATE">
<action>INSERT_OR_UPDATE</action>
<application display_value="Global">global</application>
<category>customer</category>
<comments/>
<name>sys_properties_a84a8991370c370090b68cf6c3990e98</name>
<payload><![CDATA[<?xml version="1.0" encoding="UTF-8"?><record_update table="sys_properties"><sys_properties action="INSERT_OR_UPDATE"><choices/><description>&lt;strong&gt;Prevent Closing Mixed-Scope Update Sets&lt;/strong&gt;&lt;br /&gt;&#13;
If true, this will prevent anyone from closing an Update Set that contains updates in multiple scopes, which could not be deployed in another environment. &lt;br /&gt;&#13;
&lt;strong&gt;Default&lt;/strong&gt;: true</description><ignore_cache>false</ignore_cache><is_private>false</is_private><name>sng.update_sets.prevent_mixed_scope_sets</name><read_roles/><suffix/><sys_class_name>sys_properties</sys_class_name><sys_created_by>admin</sys_created_by><sys_created_on>2019-03-06 17:26:37</sys_created_on><sys_id>a84a8991370c370090b68cf6c3990e98</sys_id><sys_mod_count>5</sys_mod_count><sys_name>sng.update_sets.prevent_mixed_scope_sets</sys_name><sys_package display_value="Global" source="global">global</sys_package><sys_policy/><sys_scope display_value="Global">global</sys_scope><sys_update_name>sys_properties_a84a8991370c370090b68cf6c3990e98</sys_update_name><sys_updated_by>admin</sys_updated_by><sys_updated_on>2019-03-06 19:48:33</sys_updated_on><type>boolean</type><value>true</value><write_roles>admin</write_roles></sys_properties><sys_translated_text action="delete_multiple" query="documentkey=a84a8991370c370090b68cf6c3990e98"/></record_update>]]></payload>
<payload_hash>-1380503012</payload_hash>
<remote_update_set display_value="SNG-Smarter Update Sets-v1.0">6635a7913704770090b68cf6c3990e32</remote_update_set>
<replace_on_upgrade>false</replace_on_upgrade>
<sys_created_by>admin</sys_created_by>
<sys_created_on>2019-03-07 04:41:13</sys_created_on>
<sys_id>6635a7913704770090b68cf6c3990e33</sys_id>
<sys_mod_count>0</sys_mod_count>
<sys_recorded_at>169548ceb8c0000001</sys_recorded_at>
<sys_updated_by>admin</sys_updated_by>
<sys_updated_on>2019-03-07 04:41:13</sys_updated_on>
<table/>
<target_name>sng.update_sets.prevent_mixed_scope_sets</target_name>
<type>System Property</type>
<update_domain>global</update_domain>
<update_guid>505b659d1e4c37006a23f36213d69bb3</update_guid>
<update_guid_history>505b659d1e4c37006a23f36213d69bb3:-1380503012,58a36dd52b4c370090a4d5f70137d76f:-1219993200,628b0dd1eb0c370031887dd9fcd97dcf:-1731418024,f96b81d11d0c370085e90c58dc6ed490:-2046367482,886bc9d1dd0c370080d0c52b0b8e2a18:-1018382050,c5da41d1e20c3700f83cce1dd5df7eb6:-2046367482</update_guid_history>
<update_set display_value=""/>
<view/>
</sys_update_xml>
<sys_update_xml action="INSERT_OR_UPDATE">
<action>INSERT_OR_UPDATE</action>
<application display_value="Global">global</application>
<category>customer</category>
<comments/>
<name>sys_script_client_ff3da111378c370090b68cf6c3990ef6</name>
<payload>&lt;?xml version="1.0" encoding="UTF-8"?&gt;&lt;record_update sys_domain="global" table="sys_script_client"&gt;&lt;sys_script_client action="INSERT_OR_UPDATE"&gt;&lt;active&gt;true&lt;/active&gt;&lt;applies_extended&gt;false&lt;/applies_extended&gt;&lt;condition/&gt;&lt;description&gt;Relies on "Set Scratchpad - Smarter Update Sets" display Business Rule getting value of the sng.update_sets.warn_on_duplicate_name system property.&amp;#13;
If the sng.update_sets.warn_on_duplicate_name system property is set to true, then when the name field changes, if there is another Update Set with the same name that the user has chosen, alert the user to the name collision. &amp;#13;
This also applies on load, but not if the field is blank. &lt;/description&gt;&lt;field&gt;name&lt;/field&gt;&lt;global&gt;true&lt;/global&gt;&lt;isolate_script&gt;true&lt;/isolate_script&gt;&lt;messages/&gt;&lt;name&gt;Warn on duplicate Update Set name&lt;/name&gt;&lt;order/&gt;&lt;script&gt;&lt;![CDATA[function onChange(control, oldValue, newValue, isLoading, isTemplate) {
	var warnOnDuplicateName = (g_scratchpad.update_set_properties['sng.update_sets.warn_on_duplicate_name'].toString() == 'true');
	
	//If the system property that controls this functionality is set to false or not found, stop here.
	if (!warnOnDuplicateName) {
		return;
	}
	
	//If the name field is blank, show no message and leave it alone. 
	if (newValue === '') {
		g_form.hideFieldMsg('name', true);
		return;
	}
	
	//If the name is "Default" and we're not on the new record form, show no messages and leave it alone
	if (newValue == 'Default' &amp;&amp; !g_form.isNewRecord()) {
		g_form.hideFieldMsg('name', true);
		return;
	}
	
	var setID = g_form.getUniqueValue();
	var setName = g_form.getValue('name');
	var setScope = g_form.getValue('sys_scope');
	
	var grUpdateSet = new GlideRecord('sys_update_set');
	
	grUpdateSet.addQuery('sys_id', '!=', setID); //This set is not a duplicate of itself
	grUpdateSet.addQuery('name', setName);
	grUpdateSet.addQuery('sys_scope', setScope);
	grUpdateSet.setLimit(1);
	
	grUpdateSet.query(cbCheckDuplicateSetName);
}

function cbCheckDuplicateSetName(grUpdateSet) {
	g_form.hideFieldMsg('name', true);
	
	if (!grUpdateSet.next()) {
		//No duplicate Update Set name, so halt here
		return;
	}
	
	g_form.showFieldMsg('name', 'There is already an Update Set with this name. Please choose another name.', 'error');
}]]&gt;&lt;/script&gt;&lt;sys_class_name&gt;sys_script_client&lt;/sys_class_name&gt;&lt;sys_created_by&gt;admin&lt;/sys_created_by&gt;&lt;sys_created_on&gt;2019-03-06 20:36:56&lt;/sys_created_on&gt;&lt;sys_domain&gt;global&lt;/sys_domain&gt;&lt;sys_domain_path&gt;/&lt;/sys_domain_path&gt;&lt;sys_id&gt;ff3da111378c370090b68cf6c3990ef6&lt;/sys_id&gt;&lt;sys_mod_count&gt;3&lt;/sys_mod_count&gt;&lt;sys_name&gt;Warn on duplicate Update Set name&lt;/sys_name&gt;&lt;sys_overrides/&gt;&lt;sys_package display_value="Global" source="global"&gt;global&lt;/sys_package&gt;&lt;sys_policy/&gt;&lt;sys_scope display_value="Global"&gt;global&lt;/sys_scope&gt;&lt;sys_update_name&gt;sys_script_client_ff3da111378c370090b68cf6c3990ef6&lt;/sys_update_name&gt;&lt;sys_updated_by&gt;admin&lt;/sys_updated_by&gt;&lt;sys_updated_on&gt;2019-03-06 20:49:19&lt;/sys_updated_on&gt;&lt;table&gt;sys_update_set&lt;/table&gt;&lt;type&gt;onChange&lt;/type&gt;&lt;ui_type&gt;10&lt;/ui_type&gt;&lt;view/&gt;&lt;/sys_script_client&gt;&lt;/record_update&gt;</payload>
<payload_hash>-726046227</payload_hash>
<remote_update_set display_value="SNG-Smarter Update Sets-v1.0">6635a7913704770090b68cf6c3990e32</remote_update_set>
<replace_on_upgrade>false</replace_on_upgrade>
<sys_created_by>admin</sys_created_by>
<sys_created_on>2019-03-07 04:41:13</sys_created_on>
<sys_id>6635a7913704770090b68cf6c3990e36</sys_id>
<sys_mod_count>0</sys_mod_count>
<sys_recorded_at>16954c4864a0000001</sys_recorded_at>
<sys_updated_by>admin</sys_updated_by>
<sys_updated_on>2019-03-07 04:41:13</sys_updated_on>
<table>sys_update_set</table>
<target_name>Warn on duplicate Update Set name</target_name>
<type>Client Script</type>
<update_domain>global</update_domain>
<update_guid>4a39bd595f8c3700949e93406cbb4cf5</update_guid>
<update_guid_history>4a39bd595f8c3700949e93406cbb4cf5:-726046227,2717b5d5c48c3700efb534819f66765b:-2126548167,18e6b1d5e08c370038e91fb5c08d4cb4:-211006851,ec667ddd004c3700461582b41adbbac7:1229414601</update_guid_history>
<update_set display_value=""/>
<view/>
</sys_update_xml>
<sys_update_xml action="INSERT_OR_UPDATE">
<action>INSERT_OR_UPDATE</action>
<application display_value="Global">global</application>
<category>customer</category>
<comments/>
<name>sys_app_module_5a4bc19d37c8370090b68cf6c3990ea5</name>
<payload><![CDATA[<?xml version="1.0" encoding="UTF-8"?><record_update sys_domain="global" table="sys_app_module"><sys_app_module action="INSERT_OR_UPDATE"><active>true</active><application display_value="System Update Sets">a02b3c250a0a0b50000cc3543c6e463a</application><assessment/><content_page/><device_type/><filter/><hint>Properties relating to the "Smarter Update Sets" functionality</hint><homepage/><image/><link_type>DIRECT</link_type><map_page/><mobile_title>Include in Update Set Properties</mobile_title><mobile_view_name>Mobile</mobile_view_name><name/><order>700</order><override_menu_roles>false</override_menu_roles><query>system_properties_ui.do?sysparm_title=Smarter%20Update%20Sets&amp;sysparm_category=Smarter%20Update%20Sets</query><report/><roles>admin</roles><sys_class_name>sys_app_module</sys_class_name><sys_created_by>admin</sys_created_by><sys_created_on>2019-03-06 17:28:38</sys_created_on><sys_domain>global</sys_domain><sys_domain_path>/</sys_domain_path><sys_id>5a4bc19d37c8370090b68cf6c3990ea5</sys_id><sys_mod_count>1</sys_mod_count><sys_name>Smarter Update Sets Properties</sys_name><sys_overrides/><sys_package display_value="Global" source="global">global</sys_package><sys_policy/><sys_scope display_value="Global">global</sys_scope><sys_update_name>sys_app_module_5a4bc19d37c8370090b68cf6c3990ea5</sys_update_name><sys_updated_by>admin</sys_updated_by><sys_updated_on>2019-03-06 17:45:34</sys_updated_on><timeline_page/><title>Smarter Update Sets Properties</title><uncancelable>false</uncancelable><view_name/><window_name/></sys_app_module></record_update>]]></payload>
<payload_hash>-963297172</payload_hash>
<remote_update_set display_value="SNG-Smarter Update Sets-v1.0">6635a7913704770090b68cf6c3990e32</remote_update_set>
<replace_on_upgrade>false</replace_on_upgrade>
<sys_created_by>admin</sys_created_by>
<sys_created_on>2019-03-07 04:41:13</sys_created_on>
<sys_id>6a35a7913704770090b68cf6c3990e32</sys_id>
<sys_mod_count>0</sys_mod_count>
<sys_recorded_at>169541c4d480000001</sys_recorded_at>
<sys_updated_by>admin</sys_updated_by>
<sys_updated_on>2019-03-07 04:41:13</sys_updated_on>
<table/>
<target_name>Smarter Update Sets Properties</target_name>
<type>Module</type>
<update_domain>global</update_domain>
<update_guid>962f8595e50c370020fdec002c2def85</update_guid>
<update_guid_history>962f8595e50c370020fdec002c2def85:-963297172,1a4bc19d4dc83700cc75a56a64b906a7:840623564</update_guid_history>
<update_set display_value=""/>
<view/>
</sys_update_xml>
<sys_update_xml action="INSERT_OR_UPDATE">
<action>INSERT_OR_UPDATE</action>
<application display_value="Global">global</application>
<category>customer</category>
<comments/>
<name>sys_script_05a0a155374c370090b68cf6c3990eb0</name>
<payload>&lt;?xml version="1.0" encoding="UTF-8"?&gt;&lt;record_update sys_domain="global" table="sys_script"&gt;&lt;sys_script action="INSERT_OR_UPDATE"&gt;&lt;abort_action&gt;false&lt;/abort_action&gt;&lt;access&gt;package_private&lt;/access&gt;&lt;action_delete&gt;false&lt;/action_delete&gt;&lt;action_insert&gt;false&lt;/action_insert&gt;&lt;action_query&gt;false&lt;/action_query&gt;&lt;action_update&gt;false&lt;/action_update&gt;&lt;active&gt;true&lt;/active&gt;&lt;add_message&gt;false&lt;/add_message&gt;&lt;advanced&gt;true&lt;/advanced&gt;&lt;change_fields&gt;false&lt;/change_fields&gt;&lt;client_callable&gt;false&lt;/client_callable&gt;&lt;collection&gt;sys_update_set&lt;/collection&gt;&lt;condition/&gt;&lt;description/&gt;&lt;execute_function&gt;false&lt;/execute_function&gt;&lt;filter_condition/&gt;&lt;is_rest&gt;false&lt;/is_rest&gt;&lt;message/&gt;&lt;name&gt;Set Scratchpad - Smarter Update Sets&lt;/name&gt;&lt;order&gt;100&lt;/order&gt;&lt;priority&gt;100&lt;/priority&gt;&lt;rest_method/&gt;&lt;rest_method_text/&gt;&lt;rest_service/&gt;&lt;rest_service_text/&gt;&lt;rest_variables/&gt;&lt;role_conditions/&gt;&lt;script&gt;&lt;![CDATA[(function executeRule(current, previous /*null when async*/) {
	
	var i, prop, sysProperties = [
		'sng.update_sets.warn_on_duplicate_name',
		'sng.update_sets.protect_default_set',
		'sng.update_sets.protect_default_set_fields'
	];
	g_scratchpad.update_set_properties = {};
	
	for (i = 0; i &lt; sysProperties.length; i++) {
		prop = sysProperties[i];
		g_scratchpad.update_set_properties[prop] = gs.getProperty(prop, true);
	}
	
	g_scratchpad.is_default = current.getValue('is_default') == true;
	
})(current, previous);]]&gt;&lt;/script&gt;&lt;sys_class_name&gt;sys_script&lt;/sys_class_name&gt;&lt;sys_created_by&gt;admin&lt;/sys_created_by&gt;&lt;sys_created_on&gt;2019-03-06 19:55:05&lt;/sys_created_on&gt;&lt;sys_domain&gt;global&lt;/sys_domain&gt;&lt;sys_domain_path&gt;/&lt;/sys_domain_path&gt;&lt;sys_id&gt;05a0a155374c370090b68cf6c3990eb0&lt;/sys_id&gt;&lt;sys_mod_count&gt;3&lt;/sys_mod_count&gt;&lt;sys_name&gt;Set Scratchpad - Smarter Update Sets&lt;/sys_name&gt;&lt;sys_overrides/&gt;&lt;sys_package display_value="Global" source="global"&gt;global&lt;/sys_package&gt;&lt;sys_policy/&gt;&lt;sys_scope display_value="Global"&gt;global&lt;/sys_scope&gt;&lt;sys_update_name&gt;sys_script_05a0a155374c370090b68cf6c3990eb0&lt;/sys_update_name&gt;&lt;sys_updated_by&gt;admin&lt;/sys_updated_by&gt;&lt;sys_updated_on&gt;2019-03-07 04:07:03&lt;/sys_updated_on&gt;&lt;template/&gt;&lt;when&gt;before_display&lt;/when&gt;&lt;/sys_script&gt;&lt;sys_translated_text action="delete_multiple" query="documentkey=05a0a155374c370090b68cf6c3990eb0"/&gt;&lt;/record_update&gt;</payload>
<payload_hash>1654464958</payload_hash>
<remote_update_set display_value="SNG-Smarter Update Sets-v1.0">6635a7913704770090b68cf6c3990e32</remote_update_set>
<replace_on_upgrade>false</replace_on_upgrade>
<sys_created_by>admin</sys_created_by>
<sys_created_on>2019-03-07 04:41:13</sys_created_on>
<sys_id>6a35a7913704770090b68cf6c3990e35</sys_id>
<sys_mod_count>0</sys_mod_count>
<sys_recorded_at>16956554a480000001</sys_recorded_at>
<sys_updated_by>admin</sys_updated_by>
<sys_updated_on>2019-03-07 04:41:13</sys_updated_on>
<table>sys_update_set</table>
<target_name>Set Scratchpad - Smarter Update Sets</target_name>
<type>Business Rule</type>
<update_domain>global</update_domain>
<update_guid>1e6d9b99e0c0770062dfbc3f9645efc7</update_guid>
<update_guid_history>1e6d9b99e0c0770062dfbc3f9645efc7:1654464958,20885fd528c0770034709c187f590ca0:1375108076,98d6db553ac077006505e0c432442ef9:-1386650536,efcca19d764c37005e041af65325ac07:2096512586</update_guid_history>
<update_set display_value=""/>
<view/>
</sys_update_xml>
<sys_update_xml action="INSERT_OR_UPDATE">
<action>INSERT_OR_UPDATE</action>
<application display_value="Global">global</application>
<category>customer</category>
<comments/>
<name>sys_properties_category_m2m_88e5069537cc370090b68cf6c3990ecf</name>
<payload><![CDATA[<?xml version="1.0" encoding="UTF-8"?><record_update table="sys_properties_category_m2m"><sys_properties_category_m2m action="INSERT_OR_UPDATE"><category display_value="Smarter Update Sets">4cab4515370c370090b68cf6c3990ed9</category><order>200</order><property display_value="sng.update_sets.prevent_closing_active_wf_sets" name="sng.update_sets.prevent_closing_active_wf_sets">c9750e5537cc370090b68cf6c3990e38</property><sys_class_name>sys_properties_category_m2m</sys_class_name><sys_created_by>admin</sys_created_by><sys_created_on>2019-03-06 21:44:37</sys_created_on><sys_id>88e5069537cc370090b68cf6c3990ecf</sys_id><sys_mod_count>1</sys_mod_count><sys_name>sng.update_sets.prevent_closing_active_wf_sets.Smarter Update Sets</sys_name><sys_package display_value="Global" source="global">global</sys_package><sys_policy/><sys_scope display_value="Global">global</sys_scope><sys_update_name>sys_properties_category_m2m_88e5069537cc370090b68cf6c3990ecf</sys_update_name><sys_updated_by>admin</sys_updated_by><sys_updated_on>2019-03-06 23:04:34</sys_updated_on></sys_properties_category_m2m></record_update>]]></payload>
<payload_hash>-1532968567</payload_hash>
<remote_update_set display_value="SNG-Smarter Update Sets-v1.0">6635a7913704770090b68cf6c3990e32</remote_update_set>
<replace_on_upgrade>false</replace_on_upgrade>
<sys_created_by>admin</sys_created_by>
<sys_created_on>2019-03-07 04:41:13</sys_created_on>
<sys_id>6e35a7913704770090b68cf6c3990e34</sys_id>
<sys_mod_count>0</sys_mod_count>
<sys_recorded_at>169554058360000001</sys_recorded_at>
<sys_updated_by>admin</sys_updated_by>
<sys_updated_on>2019-03-07 04:41:13</sys_updated_on>
<table/>
<target_name>sng.update_sets.prevent_closing_active_wf_sets.Smarter Update Sets</target_name>
<type>Category Property</type>
<update_domain>global</update_domain>
<update_guid>8f28d655bd00770026cd14763ffc7b61</update_guid>
<update_guid_history>8f28d655bd00770026cd14763ffc7b61:-1532968567,44e506950dcc370053568d34af0623d1:1825283144</update_guid_history>
<update_set display_value=""/>
<view/>
</sys_update_xml>
<sys_update_xml action="INSERT_OR_UPDATE">
<action>INSERT_OR_UPDATE</action>
<application display_value="Global">global</application>
<category>customer</category>
<comments/>
<name>sys_properties_2f2a2919374c370090b68cf6c3990ef5</name>
<payload><![CDATA[<?xml version="1.0" encoding="UTF-8"?><record_update table="sys_properties"><sys_properties action="INSERT_OR_UPDATE"><choices/><description>&lt;strong&gt;Prevent duplicate Update Set name&lt;/strong&gt;&lt;br /&gt;&#13;
If set to true, then whenever an Update Set's "Name" field is updated on the server, a script will run to check whether there are any Update Sets with duplicate names in the same scope. If there are any, the entire update  to the update set record will be aborted.&lt;br /&gt;&#13;
&lt;strong&gt;Default&lt;/strong&gt;: true</description><ignore_cache>false</ignore_cache><is_private>false</is_private><name>sng.update_sets.prevent_duplicate_name</name><read_roles/><suffix/><sys_class_name>sys_properties</sys_class_name><sys_created_by>admin</sys_created_by><sys_created_on>2019-03-06 19:43:37</sys_created_on><sys_id>2f2a2919374c370090b68cf6c3990ef5</sys_id><sys_mod_count>2</sys_mod_count><sys_name>sng.update_sets.prevent_duplicate_name</sys_name><sys_package display_value="Global" source="global">global</sys_package><sys_policy/><sys_scope display_value="Global">global</sys_scope><sys_update_name>sys_properties_2f2a2919374c370090b68cf6c3990ef5</sys_update_name><sys_updated_by>admin</sys_updated_by><sys_updated_on>2019-03-06 19:47:58</sys_updated_on><type>boolean</type><value>true</value><write_roles>admin</write_roles></sys_properties><sys_translated_text action="delete_multiple" query="documentkey=2f2a2919374c370090b68cf6c3990ef5"/></record_update>]]></payload>
<payload_hash>-1794644945</payload_hash>
<remote_update_set display_value="SNG-Smarter Update Sets-v1.0">6635a7913704770090b68cf6c3990e32</remote_update_set>
<replace_on_upgrade>false</replace_on_upgrade>
<sys_created_by>admin</sys_created_by>
<sys_created_on>2019-03-07 04:41:13</sys_created_on>
<sys_id>a235a7913704770090b68cf6c3990e33</sys_id>
<sys_mod_count>0</sys_mod_count>
<sys_recorded_at>169548c60210000001</sys_recorded_at>
<sys_updated_by>admin</sys_updated_by>
<sys_updated_on>2019-03-07 04:41:13</sys_updated_on>
<table/>
<target_name>sng.update_sets.prevent_duplicate_name</target_name>
<type>System Property</type>
<update_domain>global</update_domain>
<update_guid>232ba95d744c3700bf42460c93bc605b</update_guid>
<update_guid_history>232ba95d744c3700bf42460c93bc605b:-1794644945,06ca615dbd4c37006a836fc8877cca05:-1423631749,443a2919344c3700093e203a155b84f9:-293152604</update_guid_history>
<update_set display_value=""/>
<view/>
</sys_update_xml>
<sys_update_xml action="INSERT_OR_UPDATE">
<action>INSERT_OR_UPDATE</action>
<application display_value="Global">global</application>
<category>customer</category>
<comments/>
<name>sys_script_client_35e45b1537c0770090b68cf6c3990e23</name>
<payload>&lt;?xml version="1.0" encoding="UTF-8"?&gt;&lt;record_update sys_domain="global" table="sys_script_client"&gt;&lt;sys_script_client action="INSERT_OR_UPDATE"&gt;&lt;active&gt;true&lt;/active&gt;&lt;applies_extended&gt;false&lt;/applies_extended&gt;&lt;condition/&gt;&lt;description&gt;Relies on "Set Scratchpad - Smarter Update Sets" display Business Rule getting value of the "sng.update_sets.protect_default_set" and "sng.update_sets.protect_default_set_fields" system properties, and the is_default field. &amp;#13;
If the former property is set to true, then this script will set the fields indicated in the latter property to read-only on the default Update Set.&lt;/description&gt;&lt;field&gt;application&lt;/field&gt;&lt;global&gt;true&lt;/global&gt;&lt;isolate_script&gt;true&lt;/isolate_script&gt;&lt;messages/&gt;&lt;name&gt;Protect Default Update Set&lt;/name&gt;&lt;order/&gt;&lt;script&gt;&lt;![CDATA[function onLoad() {
	
	var i, field;
	var isDefault = g_scratchpad.is_default;
	var protectDefault = g_scratchpad.update_set_properties['sng.update_sets.protect_default_set'].toString() == 'true';
	var protectFields = g_scratchpad.update_set_properties['sng.update_sets.protect_default_set_fields'].toString().split(',');
	
	
	if (!isDefault || !protectDefault || !protectFields || g_form.isNewRecord()) {
		return;
	}
	
	//If the set is default, protection is on, and we have valid fields to protect...
	for (i = 0; i &lt; protectFields.length; i++) {
		field = protectFields[i];
		g_form.setDisabled(field, true);
	}
	
}]]&gt;&lt;/script&gt;&lt;sys_class_name&gt;sys_script_client&lt;/sys_class_name&gt;&lt;sys_created_by&gt;admin&lt;/sys_created_by&gt;&lt;sys_created_on&gt;2019-03-07 03:58:09&lt;/sys_created_on&gt;&lt;sys_domain&gt;global&lt;/sys_domain&gt;&lt;sys_domain_path&gt;/&lt;/sys_domain_path&gt;&lt;sys_id&gt;35e45b1537c0770090b68cf6c3990e23&lt;/sys_id&gt;&lt;sys_mod_count&gt;7&lt;/sys_mod_count&gt;&lt;sys_name&gt;Protect Default Update Set&lt;/sys_name&gt;&lt;sys_overrides/&gt;&lt;sys_package display_value="Global" source="global"&gt;global&lt;/sys_package&gt;&lt;sys_policy/&gt;&lt;sys_scope display_value="Global"&gt;global&lt;/sys_scope&gt;&lt;sys_update_name&gt;sys_script_client_35e45b1537c0770090b68cf6c3990e23&lt;/sys_update_name&gt;&lt;sys_updated_by&gt;admin&lt;/sys_updated_by&gt;&lt;sys_updated_on&gt;2019-03-07 04:08:05&lt;/sys_updated_on&gt;&lt;table&gt;sys_update_set&lt;/table&gt;&lt;type&gt;onLoad&lt;/type&gt;&lt;ui_type&gt;10&lt;/ui_type&gt;&lt;view/&gt;&lt;/sys_script_client&gt;&lt;/record_update&gt;</payload>
<payload_hash>1093809281</payload_hash>
<remote_update_set display_value="SNG-Smarter Update Sets-v1.0">6635a7913704770090b68cf6c3990e32</remote_update_set>
<replace_on_upgrade>false</replace_on_upgrade>
<sys_created_by>admin</sys_created_by>
<sys_created_on>2019-03-07 04:41:13</sys_created_on>
<sys_id>a235a7913704770090b68cf6c3990e36</sys_id>
<sys_mod_count>0</sys_mod_count>
<sys_recorded_at>16956563a510000001</sys_recorded_at>
<sys_updated_by>admin</sys_updated_by>
<sys_updated_on>2019-03-07 04:41:13</sys_updated_on>
<table>sys_update_set</table>
<target_name>Protect Default Update Set</target_name>
<type>Client Script</type>
<update_domain>global</update_domain>
<update_guid>1daddb1db6c077007fb01d667bfa4024</update_guid>
<update_guid_history>1daddb1db6c077007fb01d667bfa4024:1093809281,369d571d24c07700094457dd69c761e8:-1366436530,1d8d1b1dbcc07700a7d934a05f543c14:1093809281,e1db93d9cdc07700b29b98b744888907:1512619628,ef9b5b99fac07700275c7aaea7bc94fb:737252350,ac9b1f997bc0770076160dfabb94ddd6:-121796917,327b9399bcc0770061e3d5e5f147dda3:2068682529,3f5b5b99a8c07700a20b6530ed555187:1026891342</update_guid_history>
<update_set display_value=""/>
<view/>
</sys_update_xml>
<sys_update_xml action="INSERT_OR_UPDATE">
<action>INSERT_OR_UPDATE</action>
<application display_value="Global">global</application>
<category>customer</category>
<comments/>
<name>sys_properties_e3355f1537c0770090b68cf6c3990ee4</name>
<payload><![CDATA[<?xml version="1.0" encoding="UTF-8"?><record_update table="sys_properties"><sys_properties action="INSERT_OR_UPDATE"><choices/><description>&lt;strong&gt;Protect Default Update Set&lt;/strong&gt;&lt;br /&gt;&#13;
If set to true, then the "Default" Update Set will be protected. A list of fields to be protected can be found in the &lt;i&gt;sng.update_sets.protect_default_set_fields&lt;/i&gt; system property.&lt;br /&gt;&#13;
&lt;strong&gt;Default&lt;/strong&gt;: true</description><ignore_cache>false</ignore_cache><is_private>false</is_private><name>sng.update_sets.protect_default_set</name><read_roles/><suffix/><sys_class_name>sys_properties</sys_class_name><sys_created_by>admin</sys_created_by><sys_created_on>2019-03-07 03:31:22</sys_created_on><sys_id>e3355f1537c0770090b68cf6c3990ee4</sys_id><sys_mod_count>1</sys_mod_count><sys_name>sng.update_sets.protect_default_set</sys_name><sys_package display_value="Global" source="global">global</sys_package><sys_policy/><sys_scope display_value="Global">global</sys_scope><sys_update_name>sys_properties_e3355f1537c0770090b68cf6c3990ee4</sys_update_name><sys_updated_by>admin</sys_updated_by><sys_updated_on>2019-03-07 03:33:21</sys_updated_on><type>boolean</type><value>true</value><write_roles>admin</write_roles></sys_properties><sys_translated_text action="delete_multiple" query="documentkey=e3355f1537c0770090b68cf6c3990ee4"/></record_update>]]></payload>
<payload_hash>1129756752</payload_hash>
<remote_update_set display_value="SNG-Smarter Update Sets-v1.0">6635a7913704770090b68cf6c3990e32</remote_update_set>
<replace_on_upgrade>false</replace_on_upgrade>
<sys_created_by>admin</sys_created_by>
<sys_created_on>2019-03-07 04:41:13</sys_created_on>
<sys_id>a635a7913704770090b68cf6c3990e35</sys_id>
<sys_mod_count>0</sys_mod_count>
<sys_recorded_at>169563672660000001</sys_recorded_at>
<sys_updated_by>admin</sys_updated_by>
<sys_updated_on>2019-03-07 04:41:13</sys_updated_on>
<table/>
<target_name>sng.update_sets.protect_default_set</target_name>
<type>System Property</type>
<update_domain>global</update_domain>
<update_guid>74b59f1546c077001e164552493c3a41</update_guid>
<update_guid_history>74b59f1546c077001e164552493c3a41:1129756752,3f355f15f8c0770066d5888efe30ece7:465407277</update_guid_history>
<update_set display_value=""/>
<view/>
</sys_update_xml>
<sys_update_xml action="INSERT_OR_UPDATE">
<action>INSERT_OR_UPDATE</action>
<application display_value="Global">global</application>
<category>customer</category>
<comments/>
<name>sys_properties_category_m2m_81dae95d374c370090b68cf6c3990e35</name>
<payload><![CDATA[<?xml version="1.0" encoding="UTF-8"?><record_update table="sys_properties_category_m2m"><sys_properties_category_m2m action="INSERT_OR_UPDATE"><category display_value="Smarter Update Sets">4cab4515370c370090b68cf6c3990ed9</category><order>500</order><property display_value="sng.update_sets.prevent_duplicate_name" name="sng.update_sets.prevent_duplicate_name">2f2a2919374c370090b68cf6c3990ef5</property><sys_class_name>sys_properties_category_m2m</sys_class_name><sys_created_by>admin</sys_created_by><sys_created_on>2019-03-06 19:46:27</sys_created_on><sys_id>81dae95d374c370090b68cf6c3990e35</sys_id><sys_mod_count>1</sys_mod_count><sys_name>sng.update_sets.prevent_duplicate_name.Smarter Update Sets</sys_name><sys_package display_value="Global" source="global">global</sys_package><sys_policy/><sys_scope display_value="Global">global</sys_scope><sys_update_name>sys_properties_category_m2m_81dae95d374c370090b68cf6c3990e35</sys_update_name><sys_updated_by>admin</sys_updated_by><sys_updated_on>2019-03-06 23:04:42</sys_updated_on></sys_properties_category_m2m></record_update>]]></payload>
<payload_hash>800888701</payload_hash>
<remote_update_set display_value="SNG-Smarter Update Sets-v1.0">6635a7913704770090b68cf6c3990e32</remote_update_set>
<replace_on_upgrade>false</replace_on_upgrade>
<sys_created_by>admin</sys_created_by>
<sys_created_on>2019-03-07 04:41:13</sys_created_on>
<sys_id>aa35a7913704770090b68cf6c3990e34</sys_id>
<sys_mod_count>0</sys_mod_count>
<sys_recorded_at>169554078560000001</sys_recorded_at>
<sys_updated_by>admin</sys_updated_by>
<sys_updated_on>2019-03-07 04:41:13</sys_updated_on>
<table/>
<target_name>sng.update_sets.prevent_duplicate_name.Smarter Update Sets</target_name>
<type>Category Property</type>
<update_domain>global</update_domain>
<update_guid>c938daddc4cc3700791c65b2f49ed008</update_guid>
<update_guid_history>c938daddc4cc3700791c65b2f49ed008:800888701,85dae95d044c37002626ea5b563ff137:1549153913</update_guid_history>
<update_set display_value=""/>
<view/>
</sys_update_xml>
<sys_update_xml action="INSERT_OR_UPDATE">
<action>INSERT_OR_UPDATE</action>
<application display_value="Global">global</application>
<category>customer</category>
<comments/>
<name>sys_properties_category_m2m_0bcbc515370c370090b68cf6c3990eff</name>
<payload><![CDATA[<?xml version="1.0" encoding="UTF-8"?><record_update table="sys_properties_category_m2m"><sys_properties_category_m2m action="INSERT_OR_UPDATE"><category display_value="Smarter Update Sets">4cab4515370c370090b68cf6c3990ed9</category><order>100</order><property display_value="sng.update_sets.prevent_mixed_scope_sets" name="sng.update_sets.prevent_mixed_scope_sets">a84a8991370c370090b68cf6c3990e98</property><sys_class_name>sys_properties_category_m2m</sys_class_name><sys_created_by>admin</sys_created_by><sys_created_on>2019-03-06 17:30:52</sys_created_on><sys_id>0bcbc515370c370090b68cf6c3990eff</sys_id><sys_mod_count>2</sys_mod_count><sys_name>sng.update_sets.prevent_mixed_scope_sets.Smarter Update Sets</sys_name><sys_package display_value="Global" source="global">global</sys_package><sys_policy/><sys_scope display_value="Global">global</sys_scope><sys_update_name>sys_properties_category_m2m_0bcbc515370c370090b68cf6c3990eff</sys_update_name><sys_updated_by>admin</sys_updated_by><sys_updated_on>2019-03-06 23:03:59</sys_updated_on></sys_properties_category_m2m></record_update>]]></payload>
<payload_hash>471303801</payload_hash>
<remote_update_set display_value="SNG-Smarter Update Sets-v1.0">6635a7913704770090b68cf6c3990e32</remote_update_set>
<replace_on_upgrade>false</replace_on_upgrade>
<sys_created_by>admin</sys_created_by>
<sys_created_on>2019-03-07 04:41:13</sys_created_on>
<sys_id>ae35a7913704770090b68cf6c3990e33</sys_id>
<sys_mod_count>0</sys_mod_count>
<sys_recorded_at>169553fd1350000001</sys_recorded_at>
<sys_updated_by>admin</sys_updated_by>
<sys_updated_on>2019-03-07 04:41:13</sys_updated_on>
<table/>
<target_name>sng.update_sets.prevent_mixed_scope_sets.Smarter Update Sets</target_name>
<type>Category Property</type>
<update_domain>global</update_domain>
<update_guid>2208d655be007700877e1fb0aa20445e</update_guid>
<update_guid_history>2208d655be007700877e1fb0aa20445e:471303801,bfc7dadd65cc3700d72e1d09656ccd2b:-1848955387,03cb0915130c3700b134ad1f23061501:847144185</update_guid_history>
<update_set display_value=""/>
<view/>
</sys_update_xml>
<sys_update_xml action="INSERT_OR_UPDATE">
<action>INSERT_OR_UPDATE</action>
<application display_value="Global">global</application>
<category>customer</category>
<comments/>
<name>sys_ui_action_cc37595d370c370090b68cf6c3990ef8</name>
<payload>&lt;?xml version="1.0" encoding="UTF-8"?&gt;&lt;record_update sys_domain="global" table="sys_ui_action"&gt;&lt;sys_ui_action action="INSERT_OR_UPDATE"&gt;&lt;action_name&gt;split_into_scopes&lt;/action_name&gt;&lt;active&gt;false&lt;/active&gt;&lt;client&gt;false&lt;/client&gt;&lt;client_script_v2&gt;&lt;![CDATA[function onClick(g_form) {

}]]&gt;&lt;/client_script_v2&gt;&lt;comments/&gt;&lt;condition/&gt;&lt;form_action&gt;true&lt;/form_action&gt;&lt;form_button&gt;false&lt;/form_button&gt;&lt;form_button_v2&gt;false&lt;/form_button_v2&gt;&lt;form_context_menu&gt;false&lt;/form_context_menu&gt;&lt;form_link&gt;true&lt;/form_link&gt;&lt;form_menu_button_v2&gt;false&lt;/form_menu_button_v2&gt;&lt;form_style/&gt;&lt;hint/&gt;&lt;isolate_script&gt;false&lt;/isolate_script&gt;&lt;list_action&gt;false&lt;/list_action&gt;&lt;list_banner_button&gt;false&lt;/list_banner_button&gt;&lt;list_button&gt;false&lt;/list_button&gt;&lt;list_choice&gt;false&lt;/list_choice&gt;&lt;list_context_menu&gt;false&lt;/list_context_menu&gt;&lt;list_link&gt;false&lt;/list_link&gt;&lt;list_save_with_form_button&gt;false&lt;/list_save_with_form_button&gt;&lt;list_style/&gt;&lt;name&gt;Split into scopes&lt;/name&gt;&lt;onclick/&gt;&lt;order&gt;100&lt;/order&gt;&lt;script&gt;&lt;![CDATA[//todo: Build "split" functionality, then activate this BR.]]&gt;&lt;/script&gt;&lt;show_insert&gt;true&lt;/show_insert&gt;&lt;show_multiple_update&gt;false&lt;/show_multiple_update&gt;&lt;show_query&gt;false&lt;/show_query&gt;&lt;show_update&gt;true&lt;/show_update&gt;&lt;sys_class_name&gt;sys_ui_action&lt;/sys_class_name&gt;&lt;sys_created_by&gt;admin&lt;/sys_created_by&gt;&lt;sys_created_on&gt;2019-03-06 18:54:43&lt;/sys_created_on&gt;&lt;sys_domain&gt;global&lt;/sys_domain&gt;&lt;sys_domain_path&gt;/&lt;/sys_domain_path&gt;&lt;sys_id&gt;cc37595d370c370090b68cf6c3990ef8&lt;/sys_id&gt;&lt;sys_mod_count&gt;0&lt;/sys_mod_count&gt;&lt;sys_name&gt;Split into scopes&lt;/sys_name&gt;&lt;sys_overrides/&gt;&lt;sys_package display_value="Global" source="global"&gt;global&lt;/sys_package&gt;&lt;sys_policy/&gt;&lt;sys_scope display_value="Global"&gt;global&lt;/sys_scope&gt;&lt;sys_update_name&gt;sys_ui_action_cc37595d370c370090b68cf6c3990ef8&lt;/sys_update_name&gt;&lt;sys_updated_by&gt;admin&lt;/sys_updated_by&gt;&lt;sys_updated_on&gt;2019-03-06 18:54:43&lt;/sys_updated_on&gt;&lt;table&gt;sys_update_set&lt;/table&gt;&lt;ui11_compatible&gt;true&lt;/ui11_compatible&gt;&lt;ui16_compatible&gt;false&lt;/ui16_compatible&gt;&lt;/sys_ui_action&gt;&lt;/record_update&gt;</payload>
<payload_hash>727598646</payload_hash>
<remote_update_set display_value="SNG-Smarter Update Sets-v1.0">6635a7913704770090b68cf6c3990e32</remote_update_set>
<replace_on_upgrade>false</replace_on_upgrade>
<sys_created_by>admin</sys_created_by>
<sys_created_on>2019-03-07 04:41:13</sys_created_on>
<sys_id>ae35a7913704770090b68cf6c3990e36</sys_id>
<sys_mod_count>0</sys_mod_count>
<sys_recorded_at>169545b9a390000001</sys_recorded_at>
<sys_updated_by>admin</sys_updated_by>
<sys_updated_on>2019-03-07 04:41:13</sys_updated_on>
<table>sys_update_set</table>
<target_name>Split into scopes</target_name>
<type>UI Action</type>
<update_domain>global</update_domain>
<update_guid>93fe9519e40c370036a2f382d7c5266b</update_guid>
<update_guid_history>93fe9519e40c370036a2f382d7c5266b:727598646</update_guid_history>
<update_set display_value=""/>
<view/>
</sys_update_xml>
<sys_update_xml action="INSERT_OR_UPDATE">
<action>INSERT_OR_UPDATE</action>
<application display_value="Global">global</application>
<category>customer</category>
<comments/>
<name>sys_properties_d25f4e1d37cc370090b68cf6c3990ea6</name>
<payload><![CDATA[<?xml version="1.0" encoding="UTF-8"?><record_update table="sys_properties"><sys_properties action="INSERT_OR_UPDATE"><choices/><description>&lt;strong&gt;Prevent Reopening Closed Update Sets&lt;/strong&gt;&lt;br /&gt;&#13;
If true, this will prevent anyone from re-opening an Update Set that has previously been closed. &lt;br /&gt;&#13;
This will prevent issues with deployment and Update Set retrieval. &lt;br /&gt;&#13;
&lt;strong&gt;Default&lt;/strong&gt;: true</description><ignore_cache>false</ignore_cache><is_private>false</is_private><name>sng.update_sets.prevent_reopening_sets</name><read_roles/><suffix/><sys_class_name>sys_properties</sys_class_name><sys_created_by>admin</sys_created_by><sys_created_on>2019-03-06 22:26:00</sys_created_on><sys_id>d25f4e1d37cc370090b68cf6c3990ea6</sys_id><sys_mod_count>1</sys_mod_count><sys_name>sng.update_sets.prevent_reopening_sets</sys_name><sys_package display_value="Global" source="global">global</sys_package><sys_policy/><sys_scope display_value="Global">global</sys_scope><sys_update_name>sys_properties_d25f4e1d37cc370090b68cf6c3990ea6</sys_update_name><sys_updated_by>admin</sys_updated_by><sys_updated_on>2019-03-06 22:32:17</sys_updated_on><type>boolean</type><value>true</value><write_roles>admin</write_roles></sys_properties><sys_translated_text action="delete_multiple" query="documentkey=d25f4e1d37cc370090b68cf6c3990ea6"/></record_update>]]></payload>
<payload_hash>-1417109786</payload_hash>
<remote_update_set display_value="SNG-Smarter Update Sets-v1.0">6635a7913704770090b68cf6c3990e32</remote_update_set>
<replace_on_upgrade>false</replace_on_upgrade>
<sys_created_by>admin</sys_created_by>
<sys_created_on>2019-03-07 04:41:13</sys_created_on>
<sys_id>e235a7913704770090b68cf6c3990e35</sys_id>
<sys_mod_count>0</sys_mod_count>
<sys_recorded_at>1695522d0a30000001</sys_recorded_at>
<sys_updated_by>admin</sys_updated_by>
<sys_updated_on>2019-03-07 04:41:13</sys_updated_on>
<table/>
<target_name>sng.update_sets.prevent_reopening_sets</target_name>
<type>System Property</type>
<update_domain>global</update_domain>
<update_guid>2ac05211cc007700a6c45b3d2b94979e</update_guid>
<update_guid_history>2ac05211cc007700a6c45b3d2b94979e:-1417109786,725fca5d63cc3700558dd50d868b1acd:1191818515</update_guid_history>
<update_set display_value=""/>
<view/>
</sys_update_xml>
<sys_update_xml action="INSERT_OR_UPDATE">
<action>INSERT_OR_UPDATE</action>
<application display_value="Global">global</application>
<category>customer</category>
<comments/>
<name>sys_properties_category_m2m_5666579537c0770090b68cf6c3990e35</name>
<payload><![CDATA[<?xml version="1.0" encoding="UTF-8"?><record_update table="sys_properties_category_m2m"><sys_properties_category_m2m action="INSERT_OR_UPDATE"><category display_value="Smarter Update Sets">4cab4515370c370090b68cf6c3990ed9</category><order>700</order><property display_value="sng.update_sets.protect_default_set_fields" name="sng.update_sets.protect_default_set_fields">29e55b5537c0770090b68cf6c3990e06</property><sys_class_name>sys_properties_category_m2m</sys_class_name><sys_created_by>admin</sys_created_by><sys_created_on>2019-03-07 03:36:29</sys_created_on><sys_id>5666579537c0770090b68cf6c3990e35</sys_id><sys_mod_count>1</sys_mod_count><sys_name>sng.update_sets.protect_default_set_fields.Smarter Update Sets</sys_name><sys_package display_value="Global" source="global">global</sys_package><sys_policy/><sys_scope display_value="Global">global</sys_scope><sys_update_name>sys_properties_category_m2m_5666579537c0770090b68cf6c3990e35</sys_update_name><sys_updated_by>admin</sys_updated_by><sys_updated_on>2019-03-07 03:36:54</sys_updated_on></sys_properties_category_m2m></record_update>]]></payload>
<payload_hash>1317399422</payload_hash>
<remote_update_set display_value="SNG-Smarter Update Sets-v1.0">6635a7913704770090b68cf6c3990e32</remote_update_set>
<replace_on_upgrade>false</replace_on_upgrade>
<sys_created_by>admin</sys_created_by>
<sys_created_on>2019-03-07 04:41:13</sys_created_on>
<sys_id>e635a7913704770090b68cf6c3990e34</sys_id>
<sys_mod_count>0</sys_mod_count>
<sys_recorded_at>1695639ad030000001</sys_recorded_at>
<sys_updated_by>admin</sys_updated_by>
<sys_updated_on>2019-03-07 04:41:13</sys_updated_on>
<table/>
<target_name>sng.update_sets.protect_default_set_fields.Smarter Update Sets</target_name>
<type>Category Property</type>
<update_domain>global</update_domain>
<update_guid>9086d71555c07700611f6a2fa1e6fbff</update_guid>
<update_guid_history>9086d71555c07700611f6a2fa1e6fbff:1317399422,5a66579571c0770000be762cadab5f37:-542608648</update_guid_history>
<update_set display_value=""/>
<view/>
</sys_update_xml>
<sys_update_xml action="INSERT_OR_UPDATE">
<action>INSERT_OR_UPDATE</action>
<application display_value="Global">global</application>
<category>customer</category>
<comments/>
<name>sys_properties_category_4cab4515370c370090b68cf6c3990ed9</name>
<payload>&lt;?xml version="1.0" encoding="UTF-8"?&gt;&lt;record_update table="sys_properties_category"&gt;&lt;sys_properties_category action="INSERT_OR_UPDATE"&gt;&lt;name&gt;Smarter Update Sets&lt;/name&gt;&lt;sys_class_name&gt;sys_properties_category&lt;/sys_class_name&gt;&lt;sys_created_by&gt;admin&lt;/sys_created_by&gt;&lt;sys_created_on&gt;2019-03-06 17:30:52&lt;/sys_created_on&gt;&lt;sys_id&gt;4cab4515370c370090b68cf6c3990ed9&lt;/sys_id&gt;&lt;sys_mod_count&gt;6&lt;/sys_mod_count&gt;&lt;sys_name&gt;Smarter Update Sets&lt;/sys_name&gt;&lt;sys_package display_value="Global" source="global"&gt;global&lt;/sys_package&gt;&lt;sys_policy/&gt;&lt;sys_scope display_value="Global"&gt;global&lt;/sys_scope&gt;&lt;sys_update_name&gt;sys_properties_category_4cab4515370c370090b68cf6c3990ed9&lt;/sys_update_name&gt;&lt;sys_updated_by&gt;admin&lt;/sys_updated_by&gt;&lt;sys_updated_on&gt;2019-03-06 17:40:02&lt;/sys_updated_on&gt;&lt;title&gt;&lt;![CDATA[&lt;p&gt;&lt;span style="font-size: 14pt;"&gt;Properties for the &amp;#34;&lt;strong&gt;Smarter Update Sets&lt;/strong&gt;&amp;#34; functionality.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size: 10pt;"&gt;These properties control certain functionality for Update Sets, provided for free by &lt;a title="SN Pro Tips" href="http://snprotips.com" target="_blank" rel="noopener noreferrer nofollow"&gt;SN Pro Tips&lt;/a&gt;. More info on this functionality in &lt;a title="this article" href="http://smartsets.snc.guru/" target="_blank" rel="noopener noreferrer nofollow"&gt;this article&lt;/a&gt;. Other free tools from SN Pro Tips related to Update Sets, include the &lt;a title="Update Relocator" href="https://snprotips.com/update-relocator" target="_blank" rel="noopener noreferrer nofollow"&gt;Update Relocator&lt;/a&gt;, &lt;a title="Include in Update Set" href="https://snprotips.com/include-in-update-set-tool" target="_blank" rel="noopener noreferrer nofollow"&gt;Include in Update Set&lt;/a&gt;, and several others.&lt;/span&gt;&lt;/p&gt;
&lt;hr /&gt;]]&gt;&lt;/title&gt;&lt;/sys_properties_category&gt;&lt;sys_translated_text action="delete_multiple" query="documentkey=4cab4515370c370090b68cf6c3990ed9"/&gt;&lt;/record_update&gt;</payload>
<payload_hash>1727096545</payload_hash>
<remote_update_set display_value="SNG-Smarter Update Sets-v1.0">6635a7913704770090b68cf6c3990e32</remote_update_set>
<replace_on_upgrade>false</replace_on_upgrade>
<sys_created_by>admin</sys_created_by>
<sys_created_on>2019-03-07 04:41:13</sys_created_on>
<sys_id>ea35a7913704770090b68cf6c3990e33</sys_id>
<sys_mod_count>0</sys_mod_count>
<sys_recorded_at>16954173d120000001</sys_recorded_at>
<sys_updated_by>admin</sys_updated_by>
<sys_updated_on>2019-03-07 04:41:13</sys_updated_on>
<table/>
<target_name>Smarter Update Sets</target_name>
<type>System Property Category</type>
<update_domain>global</update_domain>
<update_guid>d1edc555890c370055146a3360f3284b</update_guid>
<update_guid_history>d1edc555890c370055146a3360f3284b:1727096545,f02d8555160c37000e6c5e3c592de507:1990384108,bcecc555900c37006a00fc5492cdf943:1175680359,5fcc8555830c3700baa86adf951be40f:1336344533,57bc45559f0c3700e18dd1703f839dfd:1606158862,6f5c45153b0c37000c0fa56296940e27:-817866322,8bcbc515470c37003ce2a48be32c81fe:-1679941372</update_guid_history>
<update_set display_value=""/>
<view/>
</sys_update_xml>
<sys_update_xml action="INSERT_OR_UPDATE">
<action>INSERT_OR_UPDATE</action>
<application display_value="Global">global</application>
<category>customer</category>
<comments/>
<name>sys_script_include_4024095d37c8370090b68cf6c3990e6f</name>
<payload>&lt;?xml version="1.0" encoding="UTF-8"?&gt;&lt;record_update table="sys_script_include"&gt;&lt;sys_script_include action="INSERT_OR_UPDATE"&gt;&lt;access&gt;public&lt;/access&gt;&lt;active&gt;true&lt;/active&gt;&lt;api_name&gt;global.UpdateSetUtils&lt;/api_name&gt;&lt;caller_access/&gt;&lt;client_callable&gt;false&lt;/client_callable&gt;&lt;description/&gt;&lt;name&gt;UpdateSetUtils&lt;/name&gt;&lt;script&gt;&lt;![CDATA[var UpdateSetUtil = Class.create();
UpdateSetUtil.prototype = {
	initialize: function(updateSet) {
		var grCurrent;
		//Get this.current
		if (typeof updateSet == 'undefined') {
			gs.logError('Update Set not provided.', 'UpdateSetUtil SI');
		} else if (typeof updateSet == 'string') {
			grCurrent = new GlideRecord('sys_update_set');
			
			if (!grCurrent.get(updateSet)) {
				this.current = grCurrent;
			} else {
				gs.logError('Invalid Update Set ID provided: ' + updateSet, 'UpdateSetUtil SI');
			}
		} else {
			this.current = updateSet;
		} //end: get this.current
	},
	
	/**
	 * Determine if the indicated Update Set has updates from mixed scopes.
	 * @returns {Boolean}
	 */
	hasMixedScope: function() {
		var scopeCondition;
		var current = this.current;
		var updateSetScope = current.getValue('application'); //either "global" or the scope sys_id
		var setIsGlobal = (updateSetScope.toLowerCase() == 'global');
		
		var grInvalidScopeUpdate = new GlideRecord('sys_update_xml');
		
		//Check for updates that are NOT in the same scope as the set itself
		grInvalidScopeUpdate.addQuery('update_set', current.getValue('sys_id'));
		scopeCondition = grInvalidScopeUpdate.addQuery('application', '!=', updateSetScope);
		
		if (setIsGlobal) {
			//If update set is global, also allow updates with no application scope
			grInvalidScopeUpdate.addQuery('application', '!=', '');
		} else {
			//if set is not global, updates without a scope count as global and will break deploy,
			// so add an 'or' condition to prevent them.
			scopeCondition.addOrCondition('application', '');
		}
		
		grInvalidScopeUpdate.setLimit(1);
		grInvalidScopeUpdate.query();
		
		//If a record is found,
		return grInvalidScopeUpdate.hasNext();
	},
	
	/**
	 * Checks if the current Update Set has checked out workflows, and returns an array of either the workflow names, or strings containing the workflow names, links, and who they're checked out by.
	 * @param {Boolean} [returnWFList=false] Whether to return the list of currently checked-out Workflows, or just a boolean indicating that checked-out workflows exist.
	 * @param {Boolean} [asHTML=false] Whether to return the list of currently checked-out WFs as HTML with links (only applies if returnWFList is true).
	 * @returns {boolean|Array}
	 */
	hasCheckedOutWorkflows: function(returnWFList, asHTML) {
		//Set up default values
		returnWFList = (typeof returnWFList == 'boolean') ? returnWFList : false;
		asHTML = (typeof asHTML == 'boolean') ? asHTML : false;
		
		//init
		var hasCheckedOutWorkflows = false;
		var workflowIDs = getWorkflowsInSet(current);
		var checkedOutWorkflows = getCheckedOutWorkflows(workflowIDs);
		
		//Get a boolean indicating if any workflows in this update set are checked out.
		hasCheckedOutWorkflows = (checkedOutWorkflows.length &gt; 0);
		
		if (hasCheckedOutWorkflows &amp;&amp; returnWFList) {
			return getReturnVal(checkedOutWorkflows, asHTML);
		} 
		
		return hasCheckedOutWorkflows;
		
		/*
			Private helper functions below
		*/
		function getWorkflowsInSet(current) {
			var updateName, workflowID;
			var workflowIDs = [];
			var grUpdate = new GlideRecord('sys_update_xml');
			
			grUpdate.addQuery('update_set', current.getValue('sys_id'));
			grUpdate.addQuery('type', 'Workflow');
			grUpdate.query();
			
			while (grUpdate.next()) {
				updateName = grUpdate.getValue('name');
				workflowID = updateName.substring(updateName.lastIndexOf('_') + 1);
				
				workflowIDs.push(workflowID);
			}
			
			return workflowIDs;
		}
		
		/**
		 * Given an array of sys_ids of workflows in the "wf_workflow" table, retrieve an array
		 *  consisting of a sub-set of those workflows which are currently checked out.
		 * If none are found, return a blank array.
		 * @param workflowIDs {Array} - An array of sys_ids of workflows in the "wf_workflow" table.
		 * @returns {CheckedOutWorkflow[]} - An array of "CheckedOutWorkflow" objects corresponding
		 *  to the workflows which are currently checked out. If none are checked out, this will
		 *  return a blank array.
		 */
		function getCheckedOutWorkflows(workflowIDs) {
			var grCheckedOutBy;
			var checkedOutWorkflows = [];
			var grWfVersion = new GlideRecord('wf_workflow_version');
			
			grWfVersion.addQuery('workflow', 'IN', workflowIDs.join(','));
			grWfVersion.addNotNullQuery('checked_out_by');
			grWfVersion.query();
			
			while (grWfVersion.next()) {
				grCheckedOutBy = grWfVersion.checked_out_by.getRefRecord();
				
				checkedOutWorkflows.push(
					new CheckedOutWorkflow(grWfVersion, grCheckedOutBy)
				);
			}
			
			return checkedOutWorkflows;
		}
		
		/**
		 * Generate error message to display to a user with information about the checked out
		 *  workflows, from an array of checked out workflows.
		 * @param checkedOutWorkflows {CheckedOutWorkflow[]} An array of objects with the
		 *  CheckedOutWorkflow prototype, corresponding to one or more workflows which are checked out.
		 *  @param asHTML {Boolean} Whether to return the value as an array of HTML string, or plain-text strings.
		 * @returns {Array} The error message to display to a user with information about the
		 *  checked out workflows.
		 */
		function getReturnVal(checkedOutWorkflows, asHTML) {
			var i, checkedOutWf;
			var msg = [];
			
			for (i = 0; i &lt; checkedOutWorkflows.length; i++) {
				checkedOutWf = checkedOutWorkflows[i];
				if (asHTML) {
					msg.push(
						'&lt;a href="' + checkedOutWf.workflow_version_link + '" target="_blank"&gt;' +
						checkedOutWf.workflow_name + '&lt;/a&gt; checked out by &lt;a href="' +
						checkedOutWf.checked_out_by_link + '" target="_blank"&gt;' +
						checkedOutWf.checked_out_by_name + '&lt;/a&gt;&lt;br /&gt;'
					);
				} else {
					msg.push(checkedOutWf.workflow_name);
				}
			}
			
			return msg;
		}
		
		/**
		 * Constructor for checked out workflow data objects.
		 * @param grWfVersion {GlideRecord} - The *checked out* Workflow version record from wf_workflow_version
		 * @param grCheckedOutBy {GlideRecord} - The User record from the sys_user table
		 * @constructor
		 */
		function CheckedOutWorkflow(grWfVersion, grCheckedOutBy) {
			this.workflow_id = grWfVersion.getValue('workflow');
			this.workflow_name = grWfVersion.getValue('name');
			this.workflow_version_link = grWfVersion.getLink(true);
			this.checked_out_by_name = grCheckedOutBy.getValue('name');
			this.checked_out_by_id = grCheckedOutBy.getValue('sys_id');
			this.checked_out_by_link = grCheckedOutBy.getLink(true);
		}
	},
	
	type: 'UpdateSetUtil'
};]]&gt;&lt;/script&gt;&lt;sys_class_name&gt;sys_script_include&lt;/sys_class_name&gt;&lt;sys_created_by&gt;admin&lt;/sys_created_by&gt;&lt;sys_created_on&gt;2019-03-06 16:57:36&lt;/sys_created_on&gt;&lt;sys_id&gt;4024095d37c8370090b68cf6c3990e6f&lt;/sys_id&gt;&lt;sys_mod_count&gt;0&lt;/sys_mod_count&gt;&lt;sys_name&gt;UpdateSetUtils&lt;/sys_name&gt;&lt;sys_package display_value="Global" source="global"&gt;global&lt;/sys_package&gt;&lt;sys_policy/&gt;&lt;sys_scope display_value="Global"&gt;global&lt;/sys_scope&gt;&lt;sys_update_name&gt;sys_script_include_4024095d37c8370090b68cf6c3990e6f&lt;/sys_update_name&gt;&lt;sys_updated_by&gt;admin&lt;/sys_updated_by&gt;&lt;sys_updated_on&gt;2019-03-06 16:57:36&lt;/sys_updated_on&gt;&lt;/sys_script_include&gt;&lt;/record_update&gt;</payload>
<payload_hash>1036220469</payload_hash>
<remote_update_set display_value="SNG-Smarter Update Sets-v1.0">6635a7913704770090b68cf6c3990e32</remote_update_set>
<replace_on_upgrade>false</replace_on_upgrade>
<sys_created_by>admin</sys_created_by>
<sys_created_on>2019-03-07 04:41:13</sys_created_on>
<sys_id>ea35a7913704770090b68cf6c3990e36</sys_id>
<sys_mod_count>0</sys_mod_count>
<sys_recorded_at>16953f061070000001</sys_recorded_at>
<sys_updated_by>admin</sys_updated_by>
<sys_updated_on>2019-03-07 04:41:13</sys_updated_on>
<table/>
<target_name>UpdateSetUtils</target_name>
<type>Script Include</type>
<update_domain>global</update_domain>
<update_guid>a724895dbbc8370044024d4aa7843be1</update_guid>
<update_guid_history>a724895dbbc8370044024d4aa7843be1:1036220469</update_guid_history>
<update_set display_value=""/>
<view/>
</sys_update_xml>
<sys_update_xml action="INSERT_OR_UPDATE">
<action>INSERT_OR_UPDATE</action>
<application display_value="Global">global</application>
<category>customer</category>
<comments/>
<name>sys_properties_29e55b5537c0770090b68cf6c3990e06</name>
<payload><![CDATA[<?xml version="1.0" encoding="UTF-8"?><record_update table="sys_properties"><sys_properties action="INSERT_OR_UPDATE"><choices/><description>&lt;strong&gt;Protect Default Update Set Fields&lt;/strong&gt;&lt;br /&gt;&#13;
Set this to a comma-delimited string containing a list of fields to be protected on the "Default" Update Set. &lt;br /&gt;&#13;
&lt;i&gt;&lt;strong&gt;Note&lt;/strong&gt;: This property only applies if "sng.update_sets.protect_default_set_fields" is set to &lt;strong&gt;true&lt;/strong&gt;&lt;/i&gt;&lt;br /&gt;&#13;
&lt;strong&gt;Default&lt;/strong&gt;: name,state,parent,release_date,completed_by</description><ignore_cache>false</ignore_cache><is_private>false</is_private><name>sng.update_sets.protect_default_set_fields</name><read_roles/><suffix/><sys_class_name>sys_properties</sys_class_name><sys_created_by>admin</sys_created_by><sys_created_on>2019-03-07 03:34:15</sys_created_on><sys_id>29e55b5537c0770090b68cf6c3990e06</sys_id><sys_mod_count>2</sys_mod_count><sys_name>sng.update_sets.protect_default_set_fields</sys_name><sys_package display_value="Global" source="global">global</sys_package><sys_policy/><sys_scope display_value="Global">global</sys_scope><sys_update_name>sys_properties_29e55b5537c0770090b68cf6c3990e06</sys_update_name><sys_updated_by>admin</sys_updated_by><sys_updated_on>2019-03-07 03:40:16</sys_updated_on><type>string</type><value>name,state,parent,release_date,completed_by</value><write_roles>admin</write_roles></sys_properties><sys_translated_text action="delete_multiple" query="documentkey=29e55b5537c0770090b68cf6c3990e06"/></record_update>]]></payload>
<payload_hash>1046007205</payload_hash>
<remote_update_set display_value="SNG-Smarter Update Sets-v1.0">6635a7913704770090b68cf6c3990e32</remote_update_set>
<replace_on_upgrade>false</replace_on_upgrade>
<sys_created_by>admin</sys_created_by>
<sys_created_on>2019-03-07 04:41:13</sys_created_on>
<sys_id>ee35a7913704770090b68cf6c3990e32</sys_id>
<sys_mod_count>0</sys_mod_count>
<sys_recorded_at>169563cc9e70000001</sys_recorded_at>
<sys_updated_by>admin</sys_updated_by>
<sys_updated_on>2019-03-07 04:41:13</sys_updated_on>
<table/>
<target_name>sng.update_sets.protect_default_set_fields</target_name>
<type>System Property</type>
<update_domain>global</update_domain>
<update_guid>524753d534c07700a2479e97fbc2cdf2</update_guid>
<update_guid_history>524753d534c07700a2479e97fbc2cdf2:1046007205,9b561b553fc0770039c625b1eae984e6:1134617003,02e55b5515c07700cca73f220462160a:-1651128932</update_guid_history>
<update_set display_value=""/>
<view/>
</sys_update_xml>
<sys_update_xml action="INSERT_OR_UPDATE">
<action>INSERT_OR_UPDATE</action>
<application display_value="Global">global</application>
<category>customer</category>
<comments/>
<name>sys_script_b927650637022f0090b68cf6c3990e72</name>
<payload>&lt;?xml version="1.0" encoding="UTF-8"?&gt;&lt;record_update sys_domain="global" table="sys_script"&gt;&lt;sys_script action="INSERT_OR_UPDATE"&gt;&lt;abort_action&gt;false&lt;/abort_action&gt;&lt;access&gt;package_private&lt;/access&gt;&lt;action_delete&gt;false&lt;/action_delete&gt;&lt;action_insert&gt;false&lt;/action_insert&gt;&lt;action_query&gt;false&lt;/action_query&gt;&lt;action_update&gt;true&lt;/action_update&gt;&lt;active&gt;true&lt;/active&gt;&lt;add_message&gt;false&lt;/add_message&gt;&lt;advanced&gt;true&lt;/advanced&gt;&lt;change_fields&gt;false&lt;/change_fields&gt;&lt;client_callable&gt;false&lt;/client_callable&gt;&lt;collection&gt;sys_update_set&lt;/collection&gt;&lt;condition&gt;gs.getProperty('sng.update_sets.prevent_closing_active_wf_sets', 'true').toString() == 'true'&lt;/condition&gt;&lt;description/&gt;&lt;execute_function&gt;false&lt;/execute_function&gt;&lt;filter_condition table="sys_update_set"&gt;stateCHANGESTOcomplete^EQ&lt;item endquery="false" field="state" goto="false" newquery="false" operator="CHANGESTO" or="false" value="complete"/&gt;&lt;item endquery="true" field="" goto="false" newquery="false" operator="=" or="false" value=""/&gt;&lt;/filter_condition&gt;&lt;is_rest&gt;false&lt;/is_rest&gt;&lt;message/&gt;&lt;name&gt;Prevent Close when WF Checked Out&lt;/name&gt;&lt;order&gt;100&lt;/order&gt;&lt;priority&gt;100&lt;/priority&gt;&lt;rest_method/&gt;&lt;rest_method_text/&gt;&lt;rest_service/&gt;&lt;rest_service_text/&gt;&lt;rest_variables/&gt;&lt;role_conditions/&gt;&lt;script&gt;&lt;![CDATA[(function executeRule(current, previous /*null when async*/) {
	
	var workflowIDs = getWorkflowsInSet(current);
	var checkedOutWorkflows = getCheckedOutWorkflows(workflowIDs);
	
	//If any workflows in this update set are currently checked out...
	if (checkedOutWorkflows.length &gt; 0) {
		/*
			Revert the state and completed_on values to whatever they were previously,
			 but don't prevent the entire update (to prevent losing anything else the
			 developer might have added/changed, such as the description).
		*/
		current.setValue('state', previous.getValue('state'));
		if (current.completed_on.changes()) {
			current.setValue('completed_on', previous.getValue('completed_on'));
		}
		if (current.completed_by.changes()) {
			current.setValue('completed_by', previous.getValue('completed_by'));
		}
		var errorMsg = getErrorMsg(checkedOutWorkflows);
		gs.addErrorMessage(errorMsg);
	} //end: if any workflows in the set are checked out
	
})(current, previous);


function getWorkflowsInSet(current) {
	var updateName, workflowID;
	var workflowIDs = [];
	var grUpdate = new GlideRecord('sys_update_xml');
	
	grUpdate.addQuery('update_set', current.getValue('sys_id'));
	grUpdate.addQuery('type', 'Workflow');
	grUpdate.query();
	
	while (grUpdate.next()) {
		updateName = grUpdate.getValue('name');
		workflowID = updateName.substring(updateName.lastIndexOf('_') + 1);
		
		workflowIDs.push(workflowID);
	}
	
	return workflowIDs;
}

/**
 * Given an array of sys_ids of workflows in the "wf_workflow" table, retrieve an array consisting of a sub-set of those workflows which are currently checked out. If none are found, return a blank array.
 * @param workflowIDs {Array} - An array of sys_ids of workflows in the "wf_workflow" table.
 * @returns {CheckedOutWorkflow[]} - An array of "CheckedOutWorkflow" objects corresponding to the workflows which are currently checked out. If none are checked out, this will return a blank array.
 */
function getCheckedOutWorkflows(workflowIDs) {
	var checkedOutWorkflows = [];
	var grWfVersion = new GlideRecord('wf_workflow_version');
	
	grWfVersion.addQuery('workflow', 'IN', workflowIDs.join(','));
	grWfVersion.addNotNullQuery('checked_out_by');
	grWfVersion.query();
	
	while (grWfVersion.next()) {
		var grCheckedOutBy = grWfVersion.checked_out_by.getRefRecord();
		
		checkedOutWorkflows.push(
			new CheckedOutWorkflow(grWfVersion, grCheckedOutBy)
		);
	}
	
	return checkedOutWorkflows;
}

/**
 * Generate error message to display to a user with information about the checked out workflows, from an array of checked out workflows.
 * @param checkedOutWorkflows {CheckedOutWorkflow[]} An array of objects with the CheckedOutWorkflow prototype, corresponding to one or more workflows which are checked out.
 * @returns {string} The error message to display to a user with information about the checked out workflows.
 */
function getErrorMsg(checkedOutWorkflows) {
	var i, checkedOutWf;
	var msg = 'Update set closure prevented because the following Workflow(s) are currently checked out:&lt;br /&gt;';
	
	for (i = 0; i &lt; checkedOutWorkflows.length; i++) {
		checkedOutWf = checkedOutWorkflows[i];
		
		msg += '- &lt;a href="' + checkedOutWf.workflow_version_link + '" target="_blank"&gt;' +
			checkedOutWf.workflow_name + '&lt;/a&gt; checked out by &lt;a href="' +
			checkedOutWf.checked_out_by_link + '" target="_blank"&gt;' +
			checkedOutWf.checked_out_by_name + '&lt;/a&gt;&lt;br /&gt;';
	}
	
	return msg;
}

/**
 * Constructor for checked out workflow data objects.
 * @param grWfVersion {GlideRecord} - The *checked out* Workflow version record from wf_workflow_version
 * @param grCheckedOutBy {GlideRecord} - The User record from the sys_user table
 * @constructor
 */
function CheckedOutWorkflow(grWfVersion, grCheckedOutBy) {
	this.workflow_id = grWfVersion.getValue('workflow');
	this.workflow_name = grWfVersion.getValue('name');
	this.workflow_version_link = grWfVersion.getLink(true);
	this.checked_out_by_name = grCheckedOutBy.getValue('name');
	this.checked_out_by_id = grCheckedOutBy.getValue('sys_id');
	this.checked_out_by_link = grCheckedOutBy.getLink(true);
}
]]&gt;&lt;/script&gt;&lt;sys_class_name&gt;sys_script&lt;/sys_class_name&gt;&lt;sys_created_by&gt;admin&lt;/sys_created_by&gt;&lt;sys_created_on&gt;2018-11-29 17:21:36&lt;/sys_created_on&gt;&lt;sys_domain&gt;global&lt;/sys_domain&gt;&lt;sys_domain_path&gt;/&lt;/sys_domain_path&gt;&lt;sys_id&gt;b927650637022f0090b68cf6c3990e72&lt;/sys_id&gt;&lt;sys_mod_count&gt;16&lt;/sys_mod_count&gt;&lt;sys_name&gt;Prevent Close when WF Checked Out&lt;/sys_name&gt;&lt;sys_overrides/&gt;&lt;sys_package display_value="Global" source="global"&gt;global&lt;/sys_package&gt;&lt;sys_policy/&gt;&lt;sys_scope display_value="Global"&gt;global&lt;/sys_scope&gt;&lt;sys_update_name&gt;sys_script_b927650637022f0090b68cf6c3990e72&lt;/sys_update_name&gt;&lt;sys_updated_by&gt;admin&lt;/sys_updated_by&gt;&lt;sys_updated_on&gt;2019-03-06 22:21:31&lt;/sys_updated_on&gt;&lt;template/&gt;&lt;when&gt;before&lt;/when&gt;&lt;/sys_script&gt;&lt;sys_translated_text action="delete_multiple" query="documentkey=b927650637022f0090b68cf6c3990e72"/&gt;&lt;/record_update&gt;</payload>
<payload_hash>-1924866066</payload_hash>
<remote_update_set display_value="SNG-Smarter Update Sets-v1.0">6635a7913704770090b68cf6c3990e32</remote_update_set>
<replace_on_upgrade>false</replace_on_upgrade>
<sys_created_by>admin</sys_created_by>
<sys_created_on>2019-03-07 04:41:13</sys_created_on>
<sys_id>ee35a7913704770090b68cf6c3990e35</sys_id>
<sys_mod_count>0</sys_mod_count>
<sys_recorded_at>1695518efbf0000001</sys_recorded_at>
<sys_updated_by>admin</sys_updated_by>
<sys_updated_on>2019-03-07 04:41:13</sys_updated_on>
<table>sys_update_set</table>
<target_name>Prevent Close when WF Checked Out</target_name>
<type>Business Rule</type>
<update_domain>global</update_domain>
<update_guid>6c5e0695a2cc37002373b938ac4863dc</update_guid>
<update_guid_history>6c5e0695a2cc37002373b938ac4863dc:-1924866066,16958e5527cc37008d670cf6c77abb86:-1809651922,20f1b6c25ec22f00fd7583f506dbc09f:1559295294,20803e4225c22f0029cea9920c99588c:-550960149,ac50be428ec22f001c95f59ca1625a40:-381898403,7fefea423cc22f00940c112b50c3de6c:779916482,1e1fa6421dc22f009af01313bc0aff2b:1052770426,240fe642ffc22f0045213803620dbd1f:491761775,20eeaa0278c22f008038d3cf8d1bb8c2:2080689572,434d2e0ee9822f003958f9b1729a96e9:406912648,6cffa58a51022f0065db1d18f1e98a35:-176794083,42cf6d4aee022f009e8aa13f8a6edb00:1086000634,a71fed4aca022f00e65978b699b267a4:1504412746,f90f6d4a13022f00f85f50a4aff603d5:1355563052,decea94a2a022f005ae557726d3d6473:-447886983,6abead0ae2022f00ebfcc7b8b3527b60:1321989261,5977e906f7022f0058b1c698cdacddc7:409078085</update_guid_history>
<update_set display_value=""/>
<view/>
</sys_update_xml>
</unload>
