<?xml version="1.0" encoding="UTF-8"?><unload unload_date="2026-04-15 18:07:41">
<sys_remote_update_set action="INSERT_OR_UPDATE">
<application display_value="Strategic Planning">a38ac49ccbf511104abddcbcf7076dec</application>
<application_name>Strategic Planning</application_name>
<application_scope>sn_apw_advanced</application_scope>
<application_version>4.10.5-546</application_version>
<collisions/>
<commit_date/>
<deleted/>
<description/>
<inserted/>
<name>EAP To ADO Integration- Strategic Planning</name>
<origin_sys_id/>
<parent display_value=""/>
<release_date/>
<remote_base_update_set display_value=""/>
<remote_parent_id/>
<remote_sys_id>79868078fb988310aeddf1a315efdcb6</remote_sys_id>
<state>loaded</state>
<summary/>
<sys_class_name>sys_remote_update_set</sys_class_name>
<sys_created_by>nagendrababu.mavuri@snc</sys_created_by>
<sys_created_on>2026-04-15 18:07:37</sys_created_on>
<sys_id>4a0d1f85fbd44710aeddf1a315efdcbc</sys_id>
<sys_mod_count>0</sys_mod_count>
<sys_updated_by>nagendrababu.mavuri@snc</sys_updated_by>
<sys_updated_on>2026-04-15 18:07:37</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="Strategic Planning">a38ac49ccbf511104abddcbcf7076dec</application>
<category>customer</category>
<comments/>
<name>sys_dictionary_sn_apw_advanced_eap_iteration_u_program_increment</name>
<payload>&lt;?xml version="1.0" encoding="UTF-8"?&gt;&lt;record_update&gt;&lt;sys_dictionary action="INSERT_OR_UPDATE" element="u_program_increment" table="sn_apw_advanced_eap_iteration"&gt;&lt;active&gt;true&lt;/active&gt;&lt;array&gt;false&lt;/array&gt;&lt;attributes/&gt;&lt;audit&gt;false&lt;/audit&gt;&lt;calculation&gt;&lt;![CDATA[(function calculatedFieldValue(current) {

	// Add your code here
	return '';  // return the calculated value

})(current);]]&gt;&lt;/calculation&gt;&lt;choice/&gt;&lt;choice_field/&gt;&lt;choice_table/&gt;&lt;column_label&gt;Program Increment&lt;/column_label&gt;&lt;comments/&gt;&lt;create_roles/&gt;&lt;default_value/&gt;&lt;defaultsort/&gt;&lt;delete_roles/&gt;&lt;dependent/&gt;&lt;dependent_on_field/&gt;&lt;display&gt;false&lt;/display&gt;&lt;dynamic_creation&gt;false&lt;/dynamic_creation&gt;&lt;dynamic_creation_script/&gt;&lt;dynamic_default_value/&gt;&lt;dynamic_ref_qual/&gt;&lt;element&gt;u_program_increment&lt;/element&gt;&lt;element_reference&gt;false&lt;/element_reference&gt;&lt;foreign_database/&gt;&lt;formula/&gt;&lt;function_definition/&gt;&lt;function_field&gt;false&lt;/function_field&gt;&lt;internal_type display_value="Reference"&gt;reference&lt;/internal_type&gt;&lt;mandatory&gt;false&lt;/mandatory&gt;&lt;max_length&gt;32&lt;/max_length&gt;&lt;name&gt;sn_apw_advanced_eap_iteration&lt;/name&gt;&lt;next_element/&gt;&lt;primary&gt;false&lt;/primary&gt;&lt;read_only&gt;false&lt;/read_only&gt;&lt;read_roles/&gt;&lt;reference display_value="" name="sn_safe_program_increment"&gt;sn_safe_program_increment&lt;/reference&gt;&lt;reference_cascade_rule/&gt;&lt;reference_floats&gt;false&lt;/reference_floats&gt;&lt;reference_key/&gt;&lt;reference_qual/&gt;&lt;reference_qual_condition/&gt;&lt;reference_type/&gt;&lt;spell_check&gt;false&lt;/spell_check&gt;&lt;staged&gt;false&lt;/staged&gt;&lt;sys_class_name&gt;sys_dictionary&lt;/sys_class_name&gt;&lt;sys_created_by&gt;nagendrababu.mavuri@snc&lt;/sys_created_by&gt;&lt;sys_created_on&gt;2026-04-07 16:31:55&lt;/sys_created_on&gt;&lt;sys_id&gt;da3af5eefb4c47d0aeddf1a315efdc93&lt;/sys_id&gt;&lt;sys_name&gt;Program Increment&lt;/sys_name&gt;&lt;sys_package display_value="Strategic Planning" source="sn_apw_advanced"&gt;a38ac49ccbf511104abddcbcf7076dec&lt;/sys_package&gt;&lt;sys_policy/&gt;&lt;sys_scope display_value="Strategic Planning"&gt;a38ac49ccbf511104abddcbcf7076dec&lt;/sys_scope&gt;&lt;sys_update_name&gt;sys_dictionary_sn_apw_advanced_eap_iteration_u_program_increment&lt;/sys_update_name&gt;&lt;sys_updated_by&gt;nagendrababu.mavuri@snc&lt;/sys_updated_by&gt;&lt;sys_updated_on&gt;2026-04-07 16:31:55&lt;/sys_updated_on&gt;&lt;table_reference&gt;false&lt;/table_reference&gt;&lt;text_index&gt;false&lt;/text_index&gt;&lt;unique&gt;false&lt;/unique&gt;&lt;use_dependent_field&gt;false&lt;/use_dependent_field&gt;&lt;use_dynamic_default&gt;false&lt;/use_dynamic_default&gt;&lt;use_reference_qualifier&gt;simple&lt;/use_reference_qualifier&gt;&lt;virtual&gt;false&lt;/virtual&gt;&lt;virtual_type&gt;script&lt;/virtual_type&gt;&lt;widget/&gt;&lt;write_roles/&gt;&lt;xml_view&gt;false&lt;/xml_view&gt;&lt;/sys_dictionary&gt;&lt;/record_update&gt;</payload>
<payload_hash>-367939320</payload_hash>
<remote_update_set display_value="EAP To ADO Integration- Strategic Planning">4a0d1f85fbd44710aeddf1a315efdcbc</remote_update_set>
<replace_on_upgrade>false</replace_on_upgrade>
<sys_created_by>nagendrababu.mavuri@snc</sys_created_by>
<sys_created_on>2026-04-15 18:07:37</sys_created_on>
<sys_id>020d1f85fbd44710aeddf1a315efdcbe</sys_id>
<sys_mod_count>0</sys_mod_count>
<sys_recorded_at>19d68c961020000001</sys_recorded_at>
<sys_updated_by>nagendrababu.mavuri@snc</sys_updated_by>
<sys_updated_on>2026-04-15 18:07:37</sys_updated_on>
<table>sn_apw_advanced_eap_iteration</table>
<target_name>Enterprise agile iteration.Program Increment</target_name>
<type>Dictionary</type>
<update_domain>global</update_domain>
<update_guid>7b6a7dee4b4c47d092e95c0c22a62a96</update_guid>
<update_guid_history>7b6a7dee4b4c47d092e95c0c22a62a96:-367939320</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="Strategic Planning">a38ac49ccbf511104abddcbcf7076dec</application>
<category>customer</category>
<comments/>
<name>sys_documentation_sn_apw_advanced_eap_iteration_u_safe_sprint_en</name>
<payload><![CDATA[<?xml version="1.0" encoding="UTF-8"?><record_update><sys_documentation element="u_safe_sprint" label="SAFe Sprint" language="en" table="sn_apw_advanced_eap_iteration"><sys_documentation action="INSERT_OR_UPDATE"><element>u_safe_sprint</element><help/><hint/><label>SAFe Sprint</label><language>en</language><name>sn_apw_advanced_eap_iteration</name><plural>SAFe Sprints</plural><sys_class_name>sys_documentation</sys_class_name><sys_created_by>nagendrababu.mavuri@snc</sys_created_by><sys_created_on>2026-04-09 05:51:09</sys_created_on><sys_id>a3eab9c393cc83104587f0cfb903d63c</sys_id><sys_mod_count>0</sys_mod_count><sys_name>SAFe Sprint</sys_name><sys_package display_value="Strategic Planning" source="sn_apw_advanced">a38ac49ccbf511104abddcbcf7076dec</sys_package><sys_policy/><sys_scope display_value="Strategic Planning">a38ac49ccbf511104abddcbcf7076dec</sys_scope><sys_update_name>sys_documentation_sn_apw_advanced_eap_iteration_u_safe_sprint_en</sys_update_name><sys_updated_by>nagendrababu.mavuri@snc</sys_updated_by><sys_updated_on>2026-04-09 05:51:09</sys_updated_on><url/><url_target/></sys_documentation></sys_documentation></record_update>]]></payload>
<payload_hash>-628537712</payload_hash>
<remote_update_set display_value="EAP To ADO Integration- Strategic Planning">4a0d1f85fbd44710aeddf1a315efdcbc</remote_update_set>
<replace_on_upgrade>false</replace_on_upgrade>
<sys_created_by>nagendrababu.mavuri@snc</sys_created_by>
<sys_created_on>2026-04-15 18:07:37</sys_created_on>
<sys_id>060d9f85fbd44710aeddf1a315efdc4d</sys_id>
<sys_mod_count>0</sys_mod_count>
<sys_recorded_at>19d70cb73000000001</sys_recorded_at>
<sys_updated_by>nagendrababu.mavuri@snc</sys_updated_by>
<sys_updated_on>2026-04-15 18:07:37</sys_updated_on>
<table>sn_apw_advanced_eap_iteration</table>
<target_name>Enterprise agile iteration.SAFe Sprint</target_name>
<type>Field Label</type>
<update_domain>global</update_domain>
<update_guid>f4faf9c3e1cc8310f970e6a3d766c410</update_guid>
<update_guid_history>f4faf9c3e1cc8310f970e6a3d766c410:-628537712</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="Strategic Planning">a38ac49ccbf511104abddcbcf7076dec</application>
<category>customer</category>
<comments/>
<name>sys_dictionary_sn_apw_advanced_eap_iteration_u_safe_sprint</name>
<payload>&lt;?xml version="1.0" encoding="UTF-8"?&gt;&lt;record_update&gt;&lt;sys_dictionary action="INSERT_OR_UPDATE" element="u_safe_sprint" table="sn_apw_advanced_eap_iteration"&gt;&lt;active&gt;true&lt;/active&gt;&lt;array&gt;false&lt;/array&gt;&lt;attributes/&gt;&lt;audit&gt;false&lt;/audit&gt;&lt;calculation&gt;&lt;![CDATA[(function calculatedFieldValue(current) {

	// Add your code here
	return '';  // return the calculated value

})(current);]]&gt;&lt;/calculation&gt;&lt;choice/&gt;&lt;choice_field/&gt;&lt;choice_table/&gt;&lt;column_label&gt;SAFe Sprint&lt;/column_label&gt;&lt;comments/&gt;&lt;create_roles/&gt;&lt;default_value/&gt;&lt;defaultsort/&gt;&lt;delete_roles/&gt;&lt;dependent/&gt;&lt;dependent_on_field/&gt;&lt;display&gt;false&lt;/display&gt;&lt;dynamic_creation&gt;false&lt;/dynamic_creation&gt;&lt;dynamic_creation_script/&gt;&lt;dynamic_default_value/&gt;&lt;dynamic_ref_qual/&gt;&lt;element&gt;u_safe_sprint&lt;/element&gt;&lt;element_reference&gt;false&lt;/element_reference&gt;&lt;foreign_database/&gt;&lt;formula/&gt;&lt;function_definition/&gt;&lt;function_field&gt;false&lt;/function_field&gt;&lt;internal_type display_value="Reference"&gt;reference&lt;/internal_type&gt;&lt;mandatory&gt;false&lt;/mandatory&gt;&lt;max_length&gt;32&lt;/max_length&gt;&lt;name&gt;sn_apw_advanced_eap_iteration&lt;/name&gt;&lt;next_element/&gt;&lt;primary&gt;false&lt;/primary&gt;&lt;read_only&gt;false&lt;/read_only&gt;&lt;read_roles/&gt;&lt;reference display_value="" name="sn_safe_sprint"&gt;sn_safe_sprint&lt;/reference&gt;&lt;reference_cascade_rule/&gt;&lt;reference_floats&gt;false&lt;/reference_floats&gt;&lt;reference_key/&gt;&lt;reference_qual/&gt;&lt;reference_qual_condition/&gt;&lt;reference_type/&gt;&lt;spell_check&gt;false&lt;/spell_check&gt;&lt;staged&gt;false&lt;/staged&gt;&lt;sys_class_name&gt;sys_dictionary&lt;/sys_class_name&gt;&lt;sys_created_by&gt;nagendrababu.mavuri@snc&lt;/sys_created_by&gt;&lt;sys_created_on&gt;2026-04-09 05:51:06&lt;/sys_created_on&gt;&lt;sys_id&gt;29cab5c393cc83104587f0cfb903d682&lt;/sys_id&gt;&lt;sys_name&gt;SAFe Sprint&lt;/sys_name&gt;&lt;sys_package display_value="Strategic Planning" source="sn_apw_advanced"&gt;a38ac49ccbf511104abddcbcf7076dec&lt;/sys_package&gt;&lt;sys_policy/&gt;&lt;sys_scope display_value="Strategic Planning"&gt;a38ac49ccbf511104abddcbcf7076dec&lt;/sys_scope&gt;&lt;sys_update_name&gt;sys_dictionary_sn_apw_advanced_eap_iteration_u_safe_sprint&lt;/sys_update_name&gt;&lt;sys_updated_by&gt;nagendrababu.mavuri@snc&lt;/sys_updated_by&gt;&lt;sys_updated_on&gt;2026-04-09 05:51:06&lt;/sys_updated_on&gt;&lt;table_reference&gt;false&lt;/table_reference&gt;&lt;text_index&gt;false&lt;/text_index&gt;&lt;unique&gt;false&lt;/unique&gt;&lt;use_dependent_field&gt;false&lt;/use_dependent_field&gt;&lt;use_dynamic_default&gt;false&lt;/use_dynamic_default&gt;&lt;use_reference_qualifier&gt;simple&lt;/use_reference_qualifier&gt;&lt;virtual&gt;false&lt;/virtual&gt;&lt;virtual_type&gt;script&lt;/virtual_type&gt;&lt;widget/&gt;&lt;write_roles/&gt;&lt;xml_view&gt;false&lt;/xml_view&gt;&lt;/sys_dictionary&gt;&lt;/record_update&gt;</payload>
<payload_hash>149006324</payload_hash>
<remote_update_set display_value="EAP To ADO Integration- Strategic Planning">4a0d1f85fbd44710aeddf1a315efdcbc</remote_update_set>
<replace_on_upgrade>false</replace_on_upgrade>
<sys_created_by>nagendrababu.mavuri@snc</sys_created_by>
<sys_created_on>2026-04-15 18:07:37</sys_created_on>
<sys_id>460d1f85fbd44710aeddf1a315efdcbe</sys_id>
<sys_mod_count>0</sys_mod_count>
<sys_recorded_at>19d70cb72190000001</sys_recorded_at>
<sys_updated_by>nagendrababu.mavuri@snc</sys_updated_by>
<sys_updated_on>2026-04-15 18:07:37</sys_updated_on>
<table>sn_apw_advanced_eap_iteration</table>
<target_name>Enterprise agile iteration.SAFe Sprint</target_name>
<type>Dictionary</type>
<update_domain>global</update_domain>
<update_guid>bcfaf9c3a4cc8310efd3230c41b59f0c</update_guid>
<update_guid_history>bcfaf9c3a4cc8310efd3230c41b59f0c:149006324</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="Strategic Planning">a38ac49ccbf511104abddcbcf7076dec</application>
<category>customer</category>
<comments/>
<name>sys_script_9816774dfb8c4f90aeddf1a315efdcf8</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;sn_apw_advanced_eap_iteration&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;EAP to SAFe Iteration Sync&lt;/name&gt;&lt;order&gt;4200&lt;/order&gt;&lt;priority&gt;200&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*/) {

    // ── Get iteration type ─────────────────────────────────
    var iterType = new sn_apw_advanced.AgileIntegrationServiceImpl()
        .getIterationType(current);

    if (gs.nil(iterType)) {
        gs.warn('EAPSAFeSync: Cannot determine iteration type for: ' +
            current.getUniqueValue());
        return;
    }

    // ── State mapping helper ───────────────────────────────
    function mapEAPStateToSAFe(eapState) {
        var stateMap = {
            'draft'    : '-6',
            'planning' : '1',
            'current'  : '2',
            'complete' : '3',
            'cancelled': '4'
        };
        return stateMap[eapState] || '-6';
    }

    // ══════════════════════════════════════════════════════════
    // INSERT
    // ══════════════════════════════════════════════════════════
    if (current.operation() === 'insert') {

        // ── PLANNING INTERVAL INSERT ───────────────────────
        if (iterType === 'planning_interval') {

            // Check 1 — u_safe_art must be set on EAP ART
            var safeARTId = current.eap_team.u_safe_art.toString();
            if (gs.nil(safeARTId)) {
                gs.warn('EAPSAFeSync PI: u_safe_art not set on EAP ART: ' +
                    current.eap_team.toString());
                return;
            }

            // Guard: already linked
            var existingPI = new GlideRecord('sn_safe_program_increment');
            existingPI.addQuery('u_eap_iteration', current.getUniqueValue());
            existingPI.setLimit(1);
            existingPI.query();
            if (existingPI.next()) {
                gs.warn('EAPSAFeSync PI: Already linked, skipping: ' +
                    current.getUniqueValue());
                return;
            }

            // Get PI calendar span dates
            var piCalSpan = current.eap_calendar_span.getRefRecord();
            if (!piCalSpan.isValidRecord()) {
                gs.warn('EAPSAFeSync PI: No calendar span for: ' +
                    current.getUniqueValue());
                return;
            }
            var piStartDate = piCalSpan.getValue('start_date');
            var piEndDate = piCalSpan.getValue('end_date');

            // Get Sprint calendar (child of PI calendar)
            var piCalendar = piCalSpan.calendar.getRefRecord();
            var sprintCalendar = new GlideRecord('sn_apw_advanced_eap_calendar');
            sprintCalendar.addQuery('parent', piCalendar.getUniqueValue());
            sprintCalendar.setLimit(1);
            sprintCalendar.query();
            if (!sprintCalendar.next()) {
                gs.warn('EAPSAFeSync PI: No sprint calendar under: ' +
                    piCalendar.getUniqueValue());
                return;
            }

            // Count sprint spans within PI date range
            var sprintSpans = new GlideRecord('sn_apw_advanced_eap_calendar_span');
            sprintSpans.addQuery('calendar', sprintCalendar.getUniqueValue());
            sprintSpans.addQuery('start_date', '&gt;=', piStartDate);
            sprintSpans.addQuery('end_date', '&lt;=', piEndDate);
            sprintSpans.orderBy('start_date');
            sprintSpans.query();

            var sprintCount = 0;
            var firstSprintStart = null;
            var firstSprintEnd = null;

            while (sprintSpans.next()) {
                sprintCount++;
                if (sprintCount === 1) {
                    firstSprintStart = sprintSpans.getValue('start_date');
                    firstSprintEnd = sprintSpans.getValue('end_date');
                }
            }

            if (sprintCount === 0) {
                gs.warn('EAPSAFeSync PI: No sprint spans in PI date range: ' +
                    current.getUniqueValue());
                return;
            }

            // Calculate sprint length
            var sprintLengthDays = 14;
            if (!gs.nil(firstSprintStart) &amp;&amp; !gs.nil(firstSprintEnd)) {
                var startDt = new GlideDate();
                startDt.setValue(firstSprintStart);
                var endDt = new GlideDate();
                endDt.setValue(firstSprintEnd);
                var diff = GlideDate.subtract(startDt, endDt);
                var calculatedDays = Math.abs(diff.getDayPart()) + 1;
                sprintLengthDays = calculatedDays &lt;= 17 ? 14 : 21;
            }

            // Create sn_safe_program_increment
            var newPI = new GlideRecord('sn_safe_program_increment');
            newPI.initialize();
            newPI.setValue('short_description', current.getValue('name'));
            newPI.setValue('state', mapEAPStateToSAFe(current.getValue('state')));
            newPI.setValue('sn_safe_program', safeARTId);
            newPI.setValue('u_eap_iteration', current.getUniqueValue());
            newPI.setValue('number_of_sprints', sprintCount);
            newPI.setValue('sprint_length', sprintLengthDays);

            var startGdt = new GlideDateTime();
            startGdt.setDisplayValue(piStartDate);
            newPI.setValue('start_date', startGdt);

            var endGdt = new GlideDateTime();
            endGdt.setDisplayValue(piEndDate);
            newPI.setValue('end_date', endGdt);

            var newPIId = newPI.insert();

            if (gs.nil(newPIId)) {
                gs.error('EAPSAFeSync PI: Failed to create SAFe PI for: ' +
                    current.getUniqueValue());
                return;
            }

            gs.info('EAPSAFeSync PI: Created SAFe PI: ' + newPIId +
                ' sprints: ' + sprintCount +
                ' length: ' + sprintLengthDays +
                ' EAP PI: ' + current.getUniqueValue());

            // Set u_program_increment on EAP PI
            var eapPI = new GlideRecord('sn_apw_advanced_eap_iteration');
            if (eapPI.get(current.getUniqueValue())) {
                eapPI.setValue('u_program_increment', newPIId);
                eapPI.setWorkflow(false);
                eapPI.autoSysFields(false);
                eapPI.update();
            }

            // Link program sprints to EAP spans by position
            var eapSpans = new GlideRecord('sn_apw_advanced_eap_calendar_span');
            eapSpans.addQuery('calendar', sprintCalendar.getUniqueValue());
            eapSpans.addQuery('start_date', '&gt;=', piStartDate);
            eapSpans.addQuery('end_date', '&lt;=', piEndDate);
            eapSpans.orderBy('start_date');
            eapSpans.query();

            var safeProgramSprints = new GlideRecord('sn_safe_program_sprint');
            safeProgramSprints.addQuery('sn_safe_program_increment', newPIId);
            safeProgramSprints.orderBy('start_date');
            safeProgramSprints.query();

            var linkedSprintCount = 0;
            while (eapSpans.next() &amp;&amp; safeProgramSprints.next()) {
                safeProgramSprints.setValue('u_eap_iteration',
                    eapSpans.getUniqueValue());
                safeProgramSprints.update();
                linkedSprintCount++;
            }

            gs.info('EAPSAFeSync PI: Linked ' + linkedSprintCount +
                ' program sprints to EAP spans');
        }

        // ── SPRINT INSERT ──────────────────────────────────
        else if (iterType === 'sprint') {

            // Check 1 — Parent PI must have linked SAFe PI
            var parentPIId = current.getValue('parent');
            if (gs.nil(parentPIId)) {
                gs.warn('EAPSAFeSync Sprint: No parent PI for: ' +
                    current.getUniqueValue());
                return;
            }

            var linkedSafePI = new GlideRecord('sn_safe_program_increment');
            linkedSafePI.addQuery('u_eap_iteration', parentPIId);
            linkedSafePI.setLimit(1);
            linkedSafePI.query();
            if (!linkedSafePI.next()) {
                gs.warn('EAPSAFeSync Sprint: No linked SAFe PI for parent: ' +
                    parentPIId);
                return;
            }
            var safePIId = linkedSafePI.getUniqueValue();

            // Check 2 — Agile team must have import settings
            var agileTeam = current.eap_team.getRefRecord();
            if (!agileTeam.isValidRecord()) {
                gs.warn('EAPSAFeSync Sprint: No agile team for: ' +
                    current.getUniqueValue());
                return;
            }
            var safeTeamId = agileTeam.getValue('user_group');
            if (gs.nil(safeTeamId)) {
                gs.warn('EAPSAFeSync Sprint: No user_group on agile team: ' +
                    agileTeam.getUniqueValue());
                return;
            }
            var importSettings = new GlideRecord('sn_agile_ado_int_import_settings');
            if (!importSettings.isValid() ||
                !importSettings.get('assignment_group', safeTeamId)) {
                gs.warn('EAPSAFeSync Sprint: No import settings for team: ' +
                    safeTeamId);
                return;
            }

            // Find position of this sprint among siblings
            var siblingPos = 0;
            var currentPos = 0;
            var siblings = new GlideRecord('sn_apw_advanced_eap_iteration');
            siblings.addQuery('parent', parentPIId);
            siblings.addQuery('eap_team', current.getValue('eap_team'));
            siblings.orderBy('eap_calendar_span.start_date');
            siblings.query();
            while (siblings.next()) {
                siblingPos++;
                if (siblings.getUniqueValue() === current.getUniqueValue()) {
                    currentPos = siblingPos;
                    break;
                }
            }

            if (currentPos === 0) {
                gs.warn('EAPSAFeSync Sprint: Could not determine position for: ' +
                    current.getUniqueValue());
                return;
            }

            // Find Nth program sprint by position
            var programSprints = new GlideRecord('sn_safe_program_sprint');
            programSprints.addQuery('sn_safe_program_increment', safePIId);
            programSprints.orderBy('start_date');
            programSprints.query();

            var psCount = 0;
            var matchedPSId = null;
            while (programSprints.next()) {
                psCount++;
                if (psCount === currentPos) {
                    matchedPSId = programSprints.getUniqueValue();
                    programSprints.setValue('u_eap_iteration',
                        current.getUniqueValue());
                    // ── Sync EAP sprint name → sn_safe_program_sprint ──
                    // This name flows to ADO as iteration path name
                    // Commented out — enable if ADO iteration path name
                    // sync from EAP sprint name is needed
                    // programSprints.setValue('short_description',
                    //     current.getValue('name'));
                    programSprints.update();
                    break;
                }
            }

            if (gs.nil(matchedPSId)) {
                gs.warn('EAPSAFeSync Sprint: No program sprint at position: ' +
                    currentPos + ' under SAFe PI: ' + safePIId);
                return;
            }

            // Confirm sn_safe_sprint exists for this team
            var matchedSprint = new GlideRecord('sn_safe_sprint');
            matchedSprint.addQuery('sn_safe_program_sprint', matchedPSId);
            matchedSprint.addQuery('assignment_group', safeTeamId);
            matchedSprint.setLimit(1);
            matchedSprint.query();

            if (matchedSprint.next()) {
                var safeSprintId = matchedSprint.getUniqueValue();

                // Set u_safe_sprint on EAP Sprint
                var eapSprint = new GlideRecord('sn_apw_advanced_eap_iteration');
                if (eapSprint.get(current.getUniqueValue())) {
                    eapSprint.setValue('u_safe_sprint', safeSprintId);
                    eapSprint.setWorkflow(false);
                    eapSprint.autoSysFields(false);
                    eapSprint.update();
                }

                gs.info('EAPSAFeSync Sprint: Linked position: ' + currentPos +
                    ' EAP sprint: ' + current.getUniqueValue() +
                    ' → SAFe sprint: ' + safeSprintId);

            } else {
                gs.warn('EAPSAFeSync Sprint: No sn_safe_sprint found' +
                    ' team: ' + safeTeamId +
                    ' program sprint: ' + matchedPSId);
            }
        }
    }

    // ══════════════════════════════════════════════════════════
    // UPDATE
    // ══════════════════════════════════════════════════════════
    else if (current.operation() === 'update') {

        // ── PLANNING INTERVAL UPDATE ───────────────────────
        if (iterType === 'planning_interval') {

            if (!current.name.changes() &amp;&amp; !current.state.changes()) {
                return;
            }

            var safePIUpd = new GlideRecord('sn_safe_program_increment');
            safePIUpd.addQuery('u_eap_iteration', current.getUniqueValue());
            safePIUpd.setLimit(1);
            safePIUpd.query();
            if (!safePIUpd.next()) {
                gs.warn('EAPSAFeSync PI UPDATE: No linked SAFe PI for: ' +
                    current.getUniqueValue());
                return;
            }

            var piUpdated = false;

            if (current.name.changes()) {
                safePIUpd.setValue('short_description',
                    current.getValue('name'));
                piUpdated = true;
            }

            if (current.state.changes()) {
                var safePIState = mapEAPStateToSAFe(current.getValue('state'));
                safePIUpd.setValue('state', safePIState);
                piUpdated = true;
            }

            if (piUpdated) {
                safePIUpd.update();
                gs.info('EAPSAFeSync PI UPDATE: Updated SAFe PI: ' +
                    safePIUpd.getUniqueValue() +
                    ' for EAP PI: ' + current.getUniqueValue());
            }
        }

        // ── SPRINT UPDATE ──────────────────────────────────
        else if (iterType === 'sprint') {

            if (!current.name.changes() &amp;&amp; !current.state.changes()) {
                return;
            }

            // Find linked sn_safe_program_sprint
            var safePSUpd = new GlideRecord('sn_safe_program_sprint');
            safePSUpd.addQuery('u_eap_iteration', current.getUniqueValue());
            safePSUpd.setLimit(1);
            safePSUpd.query();
            if (!safePSUpd.next()) {
                gs.warn('EAPSAFeSync Sprint UPDATE: No linked program sprint for: ' +
                    current.getUniqueValue());
                return;
            }

            var sprintUpdated = false;
            var safeSprintState = null;

            // Sync name → sn_safe_program_sprint (flows to ADO)
            // Commented out — enable if ADO iteration path name
            // sync from EAP sprint name is needed
            // if (current.name.changes()) {
            //     safePSUpd.setValue('short_description',
            //         current.getValue('name'));
            //     sprintUpdated = true;
            // }

            // Sync state → sn_safe_program_sprint
            if (current.state.changes()) {
                safeSprintState = mapEAPStateToSAFe(current.getValue('state'));
                safePSUpd.setValue('state', safeSprintState);
                sprintUpdated = true;
            }

            if (sprintUpdated) {
                safePSUpd.update();
                gs.info('EAPSAFeSync Sprint UPDATE: Updated program sprint: ' +
                    safePSUpd.getUniqueValue() +
                    ' for EAP sprint: ' + current.getUniqueValue());

                // Cascade state only to sn_safe_sprint
                // Name not cascaded — sn_safe_sprint does not sync to ADO
                if (!gs.nil(safeSprintState)) {
                    var teamSprints = new GlideRecord('sn_safe_sprint');
                    teamSprints.addQuery('sn_safe_program_sprint',
                        safePSUpd.getUniqueValue());
                    teamSprints.query();
                    var cascadeCount = 0;
                    while (teamSprints.next()) {
                        teamSprints.setValue('state', safeSprintState);
                        teamSprints.update();
                        cascadeCount++;
                    }
                    gs.info('EAPSAFeSync Sprint UPDATE: Cascaded state to ' +
                        cascadeCount + ' team sprints');
                }
            }
        }
    }

})(current, previous);]]&gt;&lt;/script&gt;&lt;sys_class_name&gt;sys_script&lt;/sys_class_name&gt;&lt;sys_created_by&gt;nagendrababu.mavuri@snc&lt;/sys_created_by&gt;&lt;sys_created_on&gt;2026-04-03 09:48:33&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;9816774dfb8c4f90aeddf1a315efdcf8&lt;/sys_id&gt;&lt;sys_mod_count&gt;27&lt;/sys_mod_count&gt;&lt;sys_name&gt;EAP to SAFe Iteration Sync&lt;/sys_name&gt;&lt;sys_overrides/&gt;&lt;sys_package display_value="Strategic Planning" source="sn_apw_advanced"&gt;a38ac49ccbf511104abddcbcf7076dec&lt;/sys_package&gt;&lt;sys_policy/&gt;&lt;sys_scope display_value="Strategic Planning"&gt;a38ac49ccbf511104abddcbcf7076dec&lt;/sys_scope&gt;&lt;sys_update_name&gt;sys_script_9816774dfb8c4f90aeddf1a315efdcf8&lt;/sys_update_name&gt;&lt;sys_updated_by&gt;nagendrababu.mavuri@snc&lt;/sys_updated_by&gt;&lt;sys_updated_on&gt;2026-04-15 17:56:51&lt;/sys_updated_on&gt;&lt;template/&gt;&lt;when&gt;after&lt;/when&gt;&lt;/sys_script&gt;&lt;sys_translated_text action="delete_multiple" query="documentkey=9816774dfb8c4f90aeddf1a315efdcf8"/&gt;&lt;/record_update&gt;</payload>
<payload_hash>1741899035</payload_hash>
<remote_update_set display_value="EAP To ADO Integration- Strategic Planning">4a0d1f85fbd44710aeddf1a315efdcbc</remote_update_set>
<replace_on_upgrade>false</replace_on_upgrade>
<sys_created_by>nagendrababu.mavuri@snc</sys_created_by>
<sys_created_on>2026-04-15 18:07:37</sys_created_on>
<sys_id>4a0d9f85fbd44710aeddf1a315efdc4d</sys_id>
<sys_mod_count>0</sys_mod_count>
<sys_recorded_at>19d9249ee310000001</sys_recorded_at>
<sys_updated_by>nagendrababu.mavuri@snc</sys_updated_by>
<sys_updated_on>2026-04-15 18:07:37</sys_updated_on>
<table>sn_apw_advanced_eap_iteration</table>
<target_name>EAP to SAFe Iteration Sync</target_name>
<type>Business Rule</type>
<update_domain>global</update_domain>
<update_guid>9c9a1b81acd447101c78c8924fb4cd75</update_guid>
<update_guid_history>9c9a1b81acd447101c78c8924fb4cd75:1741899035,f4c0f24d899047105d79fc9bb53f4aaa:1135520424,8bfeae498b904710324ddf8981d761ea:-1916586359,ee61e2053e50471044dc48ea9609f0a9:162715708,2341eec13b5047106e6b86cd73148383:888841176,a8a06e819050471023fb0d911f6d7b53:-386747516,2065d2344b984f10bac22ddba2fbd183:585656783,4dbb4ef439d4c310a767bcec08f3cb26:64804165,ee440a3cf894c3103c613a05b3df74c0:2018812994,8459fdf8c654c310e2429dd148e45612:1759711113,96f9ad742a14c31000291c970828cf94:-1214727443,c983f43401dc83102ecfdc7e58d9bf13:1759711113,2c4edcfc861c8310a53bc698728a352d:-1388162819,74937768bc1883103fce5f5198acf14f:-417717441,0f8c7d47ddcc8310871762a41c9fbaeb:-502821551,efbc75e26b8c47d00b992fb145afee4d:-1496180910,2672b4eac380c7d08f846244f77864f0:716622491,a3e134ea8c80c7d0d0167820fcc30eac:1538241770,a589e06e4540c7d038a874f61ffc0b0a:-1324288981,81a6a42ab640c7d0751eadbd87b5af41:2113495398,fd4468260540c7d0d8528057e4c7a3a8:2028734446,fade8ceef78c87d081c775529be71495:1180674306,94db04aa148c87d007e4491a5f0c626a:-695088370,673b80aae58c87d0b561aaeb2006f8cb:-2143619537,a46a4c2afb8c87d007b44b1f724f4ab3:-1614657011,3feb734943cc4f9030341041be25df47:1273063073,dfe83f8185cc4f90e0e12c2c239de569:-647201303,f2b733018ecc4f90f7be79cc67b5b71b:1609078801</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="Strategic Planning">a38ac49ccbf511104abddcbcf7076dec</application>
<category>customer</category>
<comments/>
<name>sys_dictionary_sn_apw_advanced_agile_release_train_u_safe_art</name>
<payload>&lt;?xml version="1.0" encoding="UTF-8"?&gt;&lt;record_update&gt;&lt;sys_dictionary action="INSERT_OR_UPDATE" element="u_safe_art" table="sn_apw_advanced_agile_release_train"&gt;&lt;active&gt;true&lt;/active&gt;&lt;array&gt;false&lt;/array&gt;&lt;attributes/&gt;&lt;audit&gt;false&lt;/audit&gt;&lt;calculation&gt;&lt;![CDATA[(function calculatedFieldValue(current) {

	// Add your code here
	return '';  // return the calculated value

})(current);]]&gt;&lt;/calculation&gt;&lt;choice/&gt;&lt;choice_field/&gt;&lt;choice_table/&gt;&lt;column_label&gt;SAFe ART&lt;/column_label&gt;&lt;comments/&gt;&lt;create_roles/&gt;&lt;default_value/&gt;&lt;defaultsort/&gt;&lt;delete_roles/&gt;&lt;dependent/&gt;&lt;dependent_on_field/&gt;&lt;display&gt;false&lt;/display&gt;&lt;dynamic_creation&gt;false&lt;/dynamic_creation&gt;&lt;dynamic_creation_script/&gt;&lt;dynamic_default_value/&gt;&lt;dynamic_ref_qual/&gt;&lt;element&gt;u_safe_art&lt;/element&gt;&lt;element_reference&gt;false&lt;/element_reference&gt;&lt;foreign_database/&gt;&lt;formula/&gt;&lt;function_definition/&gt;&lt;function_field&gt;false&lt;/function_field&gt;&lt;internal_type display_value="Reference"&gt;reference&lt;/internal_type&gt;&lt;mandatory&gt;false&lt;/mandatory&gt;&lt;max_length&gt;32&lt;/max_length&gt;&lt;name&gt;sn_apw_advanced_agile_release_train&lt;/name&gt;&lt;next_element/&gt;&lt;primary&gt;false&lt;/primary&gt;&lt;read_only&gt;false&lt;/read_only&gt;&lt;read_roles/&gt;&lt;reference display_value="" name="sn_safe_program"&gt;sn_safe_program&lt;/reference&gt;&lt;reference_cascade_rule/&gt;&lt;reference_floats&gt;false&lt;/reference_floats&gt;&lt;reference_key/&gt;&lt;reference_qual/&gt;&lt;reference_qual_condition/&gt;&lt;reference_type/&gt;&lt;spell_check&gt;false&lt;/spell_check&gt;&lt;staged&gt;false&lt;/staged&gt;&lt;sys_class_name&gt;sys_dictionary&lt;/sys_class_name&gt;&lt;sys_created_by&gt;nagendrababu.mavuri@snc&lt;/sys_created_by&gt;&lt;sys_created_on&gt;2026-04-03 08:36:39&lt;/sys_created_on&gt;&lt;sys_id&gt;7f17eb05fb4c4f90aeddf1a315efdcf8&lt;/sys_id&gt;&lt;sys_name&gt;SAFe ART&lt;/sys_name&gt;&lt;sys_package display_value="Strategic Planning" source="sn_apw_advanced"&gt;a38ac49ccbf511104abddcbcf7076dec&lt;/sys_package&gt;&lt;sys_policy/&gt;&lt;sys_scope display_value="Strategic Planning"&gt;a38ac49ccbf511104abddcbcf7076dec&lt;/sys_scope&gt;&lt;sys_update_name&gt;sys_dictionary_sn_apw_advanced_agile_release_train_u_safe_art&lt;/sys_update_name&gt;&lt;sys_updated_by&gt;nagendrababu.mavuri@snc&lt;/sys_updated_by&gt;&lt;sys_updated_on&gt;2026-04-03 08:36:39&lt;/sys_updated_on&gt;&lt;table_reference&gt;false&lt;/table_reference&gt;&lt;text_index&gt;false&lt;/text_index&gt;&lt;unique&gt;false&lt;/unique&gt;&lt;use_dependent_field&gt;false&lt;/use_dependent_field&gt;&lt;use_dynamic_default&gt;false&lt;/use_dynamic_default&gt;&lt;use_reference_qualifier&gt;simple&lt;/use_reference_qualifier&gt;&lt;virtual&gt;false&lt;/virtual&gt;&lt;virtual_type&gt;script&lt;/virtual_type&gt;&lt;widget/&gt;&lt;write_roles/&gt;&lt;xml_view&gt;false&lt;/xml_view&gt;&lt;/sys_dictionary&gt;&lt;/record_update&gt;</payload>
<payload_hash>2013084826</payload_hash>
<remote_update_set display_value="EAP To ADO Integration- Strategic Planning">4a0d1f85fbd44710aeddf1a315efdcbc</remote_update_set>
<replace_on_upgrade>false</replace_on_upgrade>
<sys_created_by>nagendrababu.mavuri@snc</sys_created_by>
<sys_created_on>2026-04-15 18:07:37</sys_created_on>
<sys_id>820d1f85fbd44710aeddf1a315efdcbd</sys_id>
<sys_mod_count>0</sys_mod_count>
<sys_recorded_at>19d527ccbcb0000001</sys_recorded_at>
<sys_updated_by>nagendrababu.mavuri@snc</sys_updated_by>
<sys_updated_on>2026-04-15 18:07:37</sys_updated_on>
<table>sn_apw_advanced_agile_release_train</table>
<target_name>Agile Release Train.SAFe ART</target_name>
<type>Dictionary</type>
<update_domain>global</update_domain>
<update_guid>de476345c04c4f9094e14158e3884e1a</update_guid>
<update_guid_history>de476345c04c4f9094e14158e3884e1a:2013084826</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="Strategic Planning">a38ac49ccbf511104abddcbcf7076dec</application>
<category>customer</category>
<comments/>
<name>sys_documentation_sn_apw_advanced_agile_release_train_u_safe_art_en</name>
<payload><![CDATA[<?xml version="1.0" encoding="UTF-8"?><record_update><sys_documentation element="u_safe_art" label="SAFe ART" language="en" table="sn_apw_advanced_agile_release_train"><sys_documentation action="INSERT_OR_UPDATE"><element>u_safe_art</element><help/><hint/><label>SAFe ART</label><language>en</language><name>sn_apw_advanced_agile_release_train</name><plural>SAFe ARTs</plural><sys_class_name>sys_documentation</sys_class_name><sys_created_by>nagendrababu.mavuri@snc</sys_created_by><sys_created_on>2026-04-03 08:36:40</sys_created_on><sys_id>3d472345fb4c4f90aeddf1a315efdcaf</sys_id><sys_mod_count>0</sys_mod_count><sys_name>SAFe ART</sys_name><sys_package display_value="Strategic Planning" source="sn_apw_advanced">a38ac49ccbf511104abddcbcf7076dec</sys_package><sys_policy/><sys_scope display_value="Strategic Planning">a38ac49ccbf511104abddcbcf7076dec</sys_scope><sys_update_name>sys_documentation_sn_apw_advanced_agile_release_train_u_safe_art_en</sys_update_name><sys_updated_by>nagendrababu.mavuri@snc</sys_updated_by><sys_updated_on>2026-04-03 08:36:40</sys_updated_on><url/><url_target/></sys_documentation></sys_documentation></record_update>]]></payload>
<payload_hash>1624494180</payload_hash>
<remote_update_set display_value="EAP To ADO Integration- Strategic Planning">4a0d1f85fbd44710aeddf1a315efdcbc</remote_update_set>
<replace_on_upgrade>false</replace_on_upgrade>
<sys_created_by>nagendrababu.mavuri@snc</sys_created_by>
<sys_created_on>2026-04-15 18:07:37</sys_created_on>
<sys_id>8a0d1f85fbd44710aeddf1a315efdcbe</sys_id>
<sys_mod_count>0</sys_mod_count>
<sys_recorded_at>19d527cccb90000001</sys_recorded_at>
<sys_updated_by>nagendrababu.mavuri@snc</sys_updated_by>
<sys_updated_on>2026-04-15 18:07:37</sys_updated_on>
<table>sn_apw_advanced_agile_release_train</table>
<target_name>Agile Release Train.SAFe ART</target_name>
<type>Field Label</type>
<update_domain>global</update_domain>
<update_guid>96476345424c4f90060116f3f2550d1e</update_guid>
<update_guid_history>96476345424c4f90060116f3f2550d1e:1624494180</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="Strategic Planning">a38ac49ccbf511104abddcbcf7076dec</application>
<category>customer</category>
<comments/>
<name>sys_script_include_2876c6a143877510dc0b85d41ab8f26e</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;package_private&lt;/access&gt;&lt;active&gt;true&lt;/active&gt;&lt;api_name&gt;sn_apw_advanced.EAPWorkItemCopyAPIImpl&lt;/api_name&gt;&lt;caller_access/&gt;&lt;client_callable&gt;false&lt;/client_callable&gt;&lt;description/&gt;&lt;mobile_callable&gt;false&lt;/mobile_callable&gt;&lt;name&gt;EAPWorkItemCopyAPIImpl&lt;/name&gt;&lt;sandbox_callable&gt;false&lt;/sandbox_callable&gt;&lt;script&gt;&lt;![CDATA[let EAPWorkItemCopyAPIImpl = Class.create();
EAPWorkItemCopyAPIImpl.prototype = {
    initialize: function() {},

    copyPlanningItemEAP: function(copyItemPayload) {
        const {
            workType,
            workItemId,
            nameField,
            selectedWorkTypeRankConfig,
            ownerField
        } = copyItemPayload;
        let copiedItemId = this._copyItemEAP(workType, workItemId, nameField, ownerField);
        if (copiedItemId) {
            const rankUpdationEventPayload = {
                afterSysId: workItemId,
                beforeSysId: ''
            };
            rankUpdationEventPayload.movedSysIds = [copiedItemId];
            let rankProcessor = new sn_align_core.AlignmentPlanningRankProcessor(selectedWorkTypeRankConfig.table, selectedWorkTypeRankConfig.column);
            rankProcessor.updateGlobalRank(rankUpdationEventPayload);
        }
        let errorMessage = copiedItemId ? '' : gr.getLastErrorMessage();
        if (errorMessage !== '')
            throw gs.getMessage('Work item could not be copied');
    },

    _copyItemEAP: function(workType, workItemId, nameField, ownerField) {
        let copyPrefix = gs.getMessage('Copy of ');

        let gr = new GlideRecordSecure(workType);
        if (!gr.get(workItemId)) {
            return;
        }

        let copiedGr = new GlideRecordSecure(gr.getValue('sys_class_name') || workType);
        copiedGr.initialize();
        if (workType !== 'rm_story') {
            let setDefaultColumnList = this.getplanningItemFieldsToSkipCopy();
            for (let key in gr) {
                if (key === nameField) {
                    copiedGr.setValue(key, copyPrefix + gr.getValue(nameField));
                } else if (key === ownerField) {
                    copiedGr.setValue(key, gs.getUserID());
                } else if (setDefaultColumnList.indexOf(key) &gt; -1 || key.includes('sys_')) {
                    continue;
                } else {
                    copiedGr.setValue(key, gr.getValue(key));
                    if (key == 'methodology' &amp;&amp; workType == 'sn_align_core_scrum_epic') {
                        const methodology = gr.getValue('methodology');
                        if (methodology == "safe")
                            copiedGr.setValue('state', 'funnel');
                    }
                }
            }
        } else {
            let setDefaultColumnListStory = this.getStoryFieldsToSkipCopy();
            for (let keyStory in gr) {
                if (keyStory === nameField) {
                    copiedGr.setValue(keyStory, copyPrefix + gr.getValue(nameField));
                } else if (setDefaultColumnListStory.indexOf(keyStory) &gt; -1 || keyStory.includes('sys_')) {
                    continue;
                } else
                    copiedGr.setValue(keyStory, gr.getValue(keyStory));
            }
        }
        return copiedGr.insert();
    },

    getplanningItemFieldsToSkipCopy: function() {
        return ['planning_state', 'state', 'number', 'percent_complete', 'execution_entity_item', 'execution_entity_table', 'execution_system', 'execution_url', 'percent_complete_by_estimate', 'percent_complete_by_count', 'completed_count', 'total_count', 'total_estimate', 'completed_estimate', 'missing_estimate'];
    },

    getStoryFieldsToSkipCopy: function() {
        return ['number', 'active', 'story_points', 'state', 'priority', 'activity_due', 'work_cost', 'work_duration', 'work_effort', 'work_start', 'work_end', 'additional_assignee_list', 'assigned_to', 'blocked', 'blocked_reason', 'business_duration', 'budget_cost', 'calculation_type', 'close_notes', 'closed_at', 'closed_by', 'sys_created_on', 'sys_created_by', 'calendar_duration', 'due_date', 'end_date_derived_from', 'expected_start', 'follow_up', 'global_rank', 'group_rank', 'impact', 'opened_at', 'opened_by', 'order', 'schedule_end_date', 'schedule_start_date', 'percent_complete', 'capex_cost', 'duration', 'effort', 'end_date', 'opex_cost', 'start_date', 'rank', 'reassignment_count', 'remaining_duration', 'remaining_effort', 'sla_due', 'start_date_derived_from', 'status', 'task', 'time_worked', 'route_reason', 'sys_updated_on', 'sys_updated_by', 'sys_mod_count', 'work_notes', 'work_notes_list', 'end', 'start', 'external_identifier','safe_record'];
    },


    type: 'EAPWorkItemCopyAPIImpl'
};]]&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;2023-12-11 13:03:39&lt;/sys_created_on&gt;&lt;sys_id&gt;2876c6a143877510dc0b85d41ab8f26e&lt;/sys_id&gt;&lt;sys_mod_count&gt;20&lt;/sys_mod_count&gt;&lt;sys_name&gt;EAPWorkItemCopyAPIImpl&lt;/sys_name&gt;&lt;sys_package display_value="Strategic Planning" source="sn_apw_advanced"&gt;a38ac49ccbf511104abddcbcf7076dec&lt;/sys_package&gt;&lt;sys_policy/&gt;&lt;sys_scope display_value="Strategic Planning"&gt;a38ac49ccbf511104abddcbcf7076dec&lt;/sys_scope&gt;&lt;sys_update_name&gt;sys_script_include_2876c6a143877510dc0b85d41ab8f26e&lt;/sys_update_name&gt;&lt;sys_updated_by&gt;nagendrababu.mavuri@snc&lt;/sys_updated_by&gt;&lt;sys_updated_on&gt;2026-04-15 05:36:32&lt;/sys_updated_on&gt;&lt;/sys_script_include&gt;&lt;/record_update&gt;</payload>
<payload_hash>1828721149</payload_hash>
<remote_update_set display_value="EAP To ADO Integration- Strategic Planning">4a0d1f85fbd44710aeddf1a315efdcbc</remote_update_set>
<replace_on_upgrade>false</replace_on_upgrade>
<sys_created_by>nagendrababu.mavuri@snc</sys_created_by>
<sys_created_on>2026-04-15 18:07:37</sys_created_on>
<sys_id>8e0d9f85fbd44710aeddf1a315efdc4d</sys_id>
<sys_mod_count>0</sys_mod_count>
<sys_recorded_at>19d8fa428420000001</sys_recorded_at>
<sys_updated_by>nagendrababu.mavuri@snc</sys_updated_by>
<sys_updated_on>2026-04-15 18:07:37</sys_updated_on>
<table/>
<target_name>EAPWorkItemCopyAPIImpl</target_name>
<type>Script Include</type>
<update_domain>global</update_domain>
<update_guid>cc21b481da588f10bdbce24270269660</update_guid>
<update_guid_history>cc21b481da588f10bdbce24270269660:1828721149,0c21b48137588f1090f6bbe78855bf5c:-384010980</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="Strategic Planning">a38ac49ccbf511104abddcbcf7076dec</application>
<category>customer</category>
<comments/>
<name>sys_documentation_sn_apw_advanced_eap_iteration_u_program_increment_en</name>
<payload><![CDATA[<?xml version="1.0" encoding="UTF-8"?><record_update><sys_documentation element="u_program_increment" label="Program Increment" language="en" table="sn_apw_advanced_eap_iteration"><sys_documentation action="INSERT_OR_UPDATE"><element>u_program_increment</element><help/><hint/><label>Program Increment</label><language>en</language><name>sn_apw_advanced_eap_iteration</name><plural>Program Increments</plural><sys_class_name>sys_documentation</sys_class_name><sys_created_by>nagendrababu.mavuri@snc</sys_created_by><sys_created_on>2026-04-07 16:31:57</sys_created_on><sys_id>a66a7deefb4c47d0aeddf1a315efdc04</sys_id><sys_mod_count>0</sys_mod_count><sys_name>Program Increment</sys_name><sys_package display_value="Strategic Planning" source="sn_apw_advanced">a38ac49ccbf511104abddcbcf7076dec</sys_package><sys_policy/><sys_scope display_value="Strategic Planning">a38ac49ccbf511104abddcbcf7076dec</sys_scope><sys_update_name>sys_documentation_sn_apw_advanced_eap_iteration_u_program_increment_en</sys_update_name><sys_updated_by>nagendrababu.mavuri@snc</sys_updated_by><sys_updated_on>2026-04-07 16:31:57</sys_updated_on><url/><url_target/></sys_documentation></sys_documentation></record_update>]]></payload>
<payload_hash>2044402128</payload_hash>
<remote_update_set display_value="EAP To ADO Integration- Strategic Planning">4a0d1f85fbd44710aeddf1a315efdcbc</remote_update_set>
<replace_on_upgrade>false</replace_on_upgrade>
<sys_created_by>nagendrababu.mavuri@snc</sys_created_by>
<sys_created_on>2026-04-15 18:07:37</sys_created_on>
<sys_id>ce0d1f85fbd44710aeddf1a315efdcbe</sys_id>
<sys_mod_count>0</sys_mod_count>
<sys_recorded_at>19d68c9625f0000001</sys_recorded_at>
<sys_updated_by>nagendrababu.mavuri@snc</sys_updated_by>
<sys_updated_on>2026-04-15 18:07:37</sys_updated_on>
<table>sn_apw_advanced_eap_iteration</table>
<target_name>Enterprise agile iteration.Program Increment</target_name>
<type>Field Label</type>
<update_domain>global</update_domain>
<update_guid>336a7dee9e4c47d064a6e40bf0f3519a</update_guid>
<update_guid_history>336a7dee9e4c47d064a6e40bf0f3519a:2044402128</update_guid_history>
<update_set display_value=""/>
<view/>
</sys_update_xml>
</unload>
