24: IS
25: l_api_name CONSTANT VARCHAR(30) := 'Copy_User_Attrs_Data';
26: l_api_version CONSTANT NUMBER := 1.0;
27:
28: l_orig_proj_pk_value_pairs EGO_COL_NAME_VALUE_PAIR_ARRAY;
29: l_new_proj_pk_value_pairs EGO_COL_NAME_VALUE_PAIR_ARRAY;
30: l_orig_task_pk_value_pairs EGO_COL_NAME_VALUE_PAIR_ARRAY;
31: l_new_task_pk_value_pairs EGO_COL_NAME_VALUE_PAIR_ARRAY;
32:
25: l_api_name CONSTANT VARCHAR(30) := 'Copy_User_Attrs_Data';
26: l_api_version CONSTANT NUMBER := 1.0;
27:
28: l_orig_proj_pk_value_pairs EGO_COL_NAME_VALUE_PAIR_ARRAY;
29: l_new_proj_pk_value_pairs EGO_COL_NAME_VALUE_PAIR_ARRAY;
30: l_orig_task_pk_value_pairs EGO_COL_NAME_VALUE_PAIR_ARRAY;
31: l_new_task_pk_value_pairs EGO_COL_NAME_VALUE_PAIR_ARRAY;
32:
33: CURSOR get_project_id(c_task_id NUMBER)
26: l_api_version CONSTANT NUMBER := 1.0;
27:
28: l_orig_proj_pk_value_pairs EGO_COL_NAME_VALUE_PAIR_ARRAY;
29: l_new_proj_pk_value_pairs EGO_COL_NAME_VALUE_PAIR_ARRAY;
30: l_orig_task_pk_value_pairs EGO_COL_NAME_VALUE_PAIR_ARRAY;
31: l_new_task_pk_value_pairs EGO_COL_NAME_VALUE_PAIR_ARRAY;
32:
33: CURSOR get_project_id(c_task_id NUMBER)
34: IS
27:
28: l_orig_proj_pk_value_pairs EGO_COL_NAME_VALUE_PAIR_ARRAY;
29: l_new_proj_pk_value_pairs EGO_COL_NAME_VALUE_PAIR_ARRAY;
30: l_orig_task_pk_value_pairs EGO_COL_NAME_VALUE_PAIR_ARRAY;
31: l_new_task_pk_value_pairs EGO_COL_NAME_VALUE_PAIR_ARRAY;
32:
33: CURSOR get_project_id(c_task_id NUMBER)
34: IS
35: SELECT project_id
133: end if;
134:
135: if p_object_type = 'PA_PROJECTS' then
136:
137: l_orig_proj_pk_value_pairs := EGO_COL_NAME_VALUE_PAIR_ARRAY(EGO_COL_NAME_VALUE_PAIR_OBJ('PROJECT_ID', p_object_id_from));
138: l_new_proj_pk_value_pairs := EGO_COL_NAME_VALUE_PAIR_ARRAY(EGO_COL_NAME_VALUE_PAIR_OBJ('PROJECT_ID', p_object_id_to));
139:
140: l_orig_task_pk_value_pairs := EGO_COL_NAME_VALUE_PAIR_ARRAY(EGO_COL_NAME_VALUE_PAIR_OBJ('PROJ_ELEMENT_ID', NULL));
141: l_new_task_pk_value_pairs := EGO_COL_NAME_VALUE_PAIR_ARRAY(EGO_COL_NAME_VALUE_PAIR_OBJ('PROJ_ELEMENT_ID', NULL));
134:
135: if p_object_type = 'PA_PROJECTS' then
136:
137: l_orig_proj_pk_value_pairs := EGO_COL_NAME_VALUE_PAIR_ARRAY(EGO_COL_NAME_VALUE_PAIR_OBJ('PROJECT_ID', p_object_id_from));
138: l_new_proj_pk_value_pairs := EGO_COL_NAME_VALUE_PAIR_ARRAY(EGO_COL_NAME_VALUE_PAIR_OBJ('PROJECT_ID', p_object_id_to));
139:
140: l_orig_task_pk_value_pairs := EGO_COL_NAME_VALUE_PAIR_ARRAY(EGO_COL_NAME_VALUE_PAIR_OBJ('PROJ_ELEMENT_ID', NULL));
141: l_new_task_pk_value_pairs := EGO_COL_NAME_VALUE_PAIR_ARRAY(EGO_COL_NAME_VALUE_PAIR_OBJ('PROJ_ELEMENT_ID', NULL));
142:
136:
137: l_orig_proj_pk_value_pairs := EGO_COL_NAME_VALUE_PAIR_ARRAY(EGO_COL_NAME_VALUE_PAIR_OBJ('PROJECT_ID', p_object_id_from));
138: l_new_proj_pk_value_pairs := EGO_COL_NAME_VALUE_PAIR_ARRAY(EGO_COL_NAME_VALUE_PAIR_OBJ('PROJECT_ID', p_object_id_to));
139:
140: l_orig_task_pk_value_pairs := EGO_COL_NAME_VALUE_PAIR_ARRAY(EGO_COL_NAME_VALUE_PAIR_OBJ('PROJ_ELEMENT_ID', NULL));
141: l_new_task_pk_value_pairs := EGO_COL_NAME_VALUE_PAIR_ARRAY(EGO_COL_NAME_VALUE_PAIR_OBJ('PROJ_ELEMENT_ID', NULL));
142:
143: EGO_USER_ATTRS_DATA_PUB.Copy_User_Attrs_Data (
144: p_api_version => 1.0
137: l_orig_proj_pk_value_pairs := EGO_COL_NAME_VALUE_PAIR_ARRAY(EGO_COL_NAME_VALUE_PAIR_OBJ('PROJECT_ID', p_object_id_from));
138: l_new_proj_pk_value_pairs := EGO_COL_NAME_VALUE_PAIR_ARRAY(EGO_COL_NAME_VALUE_PAIR_OBJ('PROJECT_ID', p_object_id_to));
139:
140: l_orig_task_pk_value_pairs := EGO_COL_NAME_VALUE_PAIR_ARRAY(EGO_COL_NAME_VALUE_PAIR_OBJ('PROJ_ELEMENT_ID', NULL));
141: l_new_task_pk_value_pairs := EGO_COL_NAME_VALUE_PAIR_ARRAY(EGO_COL_NAME_VALUE_PAIR_OBJ('PROJ_ELEMENT_ID', NULL));
142:
143: EGO_USER_ATTRS_DATA_PUB.Copy_User_Attrs_Data (
144: p_api_version => 1.0
145: ,p_application_id => 275
176:
177: OPEN get_new_proj_element_id(l_old_proj_element_id, p_object_id_from, p_object_id_to);
178: FETCH get_new_proj_element_id INTO l_new_proj_element_id;
179: if get_new_proj_element_id%FOUND THEN
180: l_orig_task_pk_value_pairs := EGO_COL_NAME_VALUE_PAIR_ARRAY(EGO_COL_NAME_VALUE_PAIR_OBJ('PROJ_ELEMENT_ID', l_old_proj_element_id));
181: l_new_task_pk_value_pairs := EGO_COL_NAME_VALUE_PAIR_ARRAY(EGO_COL_NAME_VALUE_PAIR_OBJ('PROJ_ELEMENT_ID', l_new_proj_element_id));
182:
183: EGO_USER_ATTRS_DATA_PUB.Copy_User_Attrs_Data (
184: p_api_version => 1.0
177: OPEN get_new_proj_element_id(l_old_proj_element_id, p_object_id_from, p_object_id_to);
178: FETCH get_new_proj_element_id INTO l_new_proj_element_id;
179: if get_new_proj_element_id%FOUND THEN
180: l_orig_task_pk_value_pairs := EGO_COL_NAME_VALUE_PAIR_ARRAY(EGO_COL_NAME_VALUE_PAIR_OBJ('PROJ_ELEMENT_ID', l_old_proj_element_id));
181: l_new_task_pk_value_pairs := EGO_COL_NAME_VALUE_PAIR_ARRAY(EGO_COL_NAME_VALUE_PAIR_OBJ('PROJ_ELEMENT_ID', l_new_proj_element_id));
182:
183: EGO_USER_ATTRS_DATA_PUB.Copy_User_Attrs_Data (
184: p_api_version => 1.0
185: ,p_application_id => 275
714: l_api_name CONSTANT VARCHAR(30) := 'Process_User_Attrs_Data';
715: l_api_version CONSTANT NUMBER := 1.0;
716: i NUMBER;
717: attr_rec PA_PROJECT_PUB.PA_EXT_ATTR_ROW_TYPE;
718: p_pk_column_name_value_pairs EGO_COL_NAME_VALUE_PAIR_ARRAY;
719: p_class_code_name_value_pairs EGO_COL_NAME_VALUE_PAIR_ARRAY;
720: p_attributes_row_table EGO_USER_ATTR_ROW_TABLE;
721: p_attributes_data_table EGO_USER_ATTR_DATA_TABLE;
722: l_prev_loop_row_identifier NUMBER;
715: l_api_version CONSTANT NUMBER := 1.0;
716: i NUMBER;
717: attr_rec PA_PROJECT_PUB.PA_EXT_ATTR_ROW_TYPE;
718: p_pk_column_name_value_pairs EGO_COL_NAME_VALUE_PAIR_ARRAY;
719: p_class_code_name_value_pairs EGO_COL_NAME_VALUE_PAIR_ARRAY;
720: p_attributes_row_table EGO_USER_ATTR_ROW_TABLE;
721: p_attributes_data_table EGO_USER_ATTR_DATA_TABLE;
722: l_prev_loop_row_identifier NUMBER;
723: l_at_start_of_row BOOLEAN;
755: -- 1. Build arrays for the Primary Key columns and the --
756: -- Classification Code columns --
757: -- 2. We also build Attr Row and Attr Data tables --
758: ------------------------------------------------------------------
759: p_pk_column_name_value_pairs := EGO_COL_NAME_VALUE_PAIR_ARRAY(
760: EGO_COL_NAME_VALUE_PAIR_OBJ('PROJECT_ID', p_project_id)
761: );
762:
763: p_attributes_row_table := EGO_USER_ATTR_ROW_TABLE();