[Home] [Help]
664: CURSOR getid is select project_id from pa_proj_elements
665: where proj_element_id = p_structure_id;
666:
667: CURSOR cur_elem_ver_seq IS
668: SELECT pa_proj_element_versions_s.nextval
669: FROM sys.dual;
670:
671: BEGIN
672: IF (p_debug_mode = 'Y') THEN
767: -- End 4657794
768:
769: -- error_msg(x_structure_version_id||' new structure version id, '||p_structure_id||', '||l_project_id);
770: --Insert
771: PA_PROJ_ELEMENT_VERSIONS_PKG.INSERT_ROW(
772: X_ROW_ID => l_rowid
773: --,X_ELEMENT_VERSION_ID => x_structure_version_id * Commenmted for Bug Fix: 4537865
774: ,X_ELEMENT_VERSION_ID => l_new_structure_version_id -- added for bug bug Fix: 4537865
775: ,X_PROJ_ELEMENT_ID => p_structure_id
802: -- added for bug bug Fix: 4537865
803: x_structure_version_id := l_new_structure_version_id;
804: -- added for bug bug Fix: 4537865
805:
806: select element_version_id into l_dummy from pa_proj_element_versions where element_version_id = x_structure_version_id;
807: -- error_msg('element_version_id = '||l_dummy);
808: -- error_msg('rowid = '||l_rowid);
809: -- Added by skannoji
810: -- added for doosan customer to add the planning transaction
960: where f.employee_id = p.person_id
961: and sysdate between p.effective_start_date and p.effective_end_date
962: and f.user_id = p_user_id;
963:
964: cursor getids is select project_id, proj_element_id from pa_proj_element_versions
965: where element_version_id = p_structure_version_id;
966:
967: cursor get_published_ver_num(c_project_id NUMBER, c_proj_element_id NUMBER) IS
968: select nvl(max(version_number),0)+1
1824:
1825: cursor cur_relationship_ids(c_structure_version_id NUMBER, c_project_id NUMBER)
1826: is select por.object_relationship_id, por.record_version_number
1827: , por2.object_id_from1, por.object_id_from2, por.comments, ppa.name -- Bug # 4556844.
1828: from pa_object_relationships por, pa_proj_element_versions ppev, pa_proj_elem_ver_structure ppevs
1829: , pa_projects_all ppa, pa_object_relationships por2 -- Bug # 4556844.
1830: where ppevs.element_version_id = ppev.parent_structure_version_id
1831: and ppevs.project_id = ppev.project_id
1832: and ppev.element_version_id = por.object_id_to1
2538: IF (p_validate_only <> FND_API.G_TRUE) THEN
2539: BEGIN
2540: --lock
2541: select rowid into l_rowid
2542: from pa_proj_element_versions
2543: where element_version_id = p_structure_version_id
2544: and record_version_number = p_record_version_number
2545: for update of record_version_number NOWAIT;
2546: EXCEPTION
2563: END;
2564: ELSE
2565: BEGIN
2566: select rowid into l_rowid
2567: from pa_proj_element_versions
2568: where element_version_id = p_structure_version_id
2569: and record_version_number = p_record_version_number;
2570: EXCEPTION
2571: when NO_DATA_FOUND then
2622: END;
2623: -- Added for FP_M Changes -- Bhumesh
2624: BEGIN
2625: SELECT project_id INTO l_Project_ID
2626: FROM pa_proj_element_versions
2627: WHERE element_version_id = p_structure_version_id and rownum < 2;
2628:
2629: PA_PROGRESS_PUB.delete_working_wp_progress (
2630: P_Project_ID => l_Project_ID
2693: end loop;
2694:
2695: -- End fix for Bug # 4483222.
2696:
2697: PA_PROJ_ELEMENT_VERSIONS_PKG.DELETE_ROW(
2698: X_ROW_ID => l_rowid
2699: );
2700:
2701: x_return_status := FND_API.G_RET_STS_SUCCESS;
3076: cursor get_task_version_info(c_task_version_id NUMBER) IS
3077: select v1.project_id project_id, v2.proj_element_id structure_id,
3078: v1.parent_structure_version_id structure_version_id,
3079: v1.element_version_id task_version_id
3080: from pa_proj_element_versions v1,
3081: pa_proj_element_versions v2
3082: where v1.element_version_id = c_task_version_id
3083: and v1.parent_structure_version_id = v2.element_version_id;
3084: l_info_task_ver_rec get_task_version_info%ROWTYPE;
3077: select v1.project_id project_id, v2.proj_element_id structure_id,
3078: v1.parent_structure_version_id structure_version_id,
3079: v1.element_version_id task_version_id
3080: from pa_proj_element_versions v1,
3081: pa_proj_element_versions v2
3082: where v1.element_version_id = c_task_version_id
3083: and v1.parent_structure_version_id = v2.element_version_id;
3084: l_info_task_ver_rec get_task_version_info%ROWTYPE;
3085:
3085:
3086: cursor get_structure_version_info(c_structure_version_id NUMBER) IS
3087: select v1.project_id project_id, v1.proj_element_id structure_id,
3088: v1.element_version_id structure_version_id
3089: from pa_proj_element_versions v1
3090: where v1.element_version_id = c_structure_version_id;
3091: l_info_struc_ver_rec get_structure_version_info%ROWTYPE;
3092:
3093:
3094: cursor get_struc_ver_name IS
3095: select pevs.name, pevs.project_id, pevs.proj_element_id,
3096: pevs.element_version_id, pevs.pev_structure_id
3097: from pa_proj_elem_ver_structure pevs,
3098: pa_proj_element_versions pev
3099: where pev.element_version_id = p_structure_version_id
3100: and pevs.project_id = pev.project_id
3101: and pevs.element_version_id = pev.element_version_id;
3102:
3101: and pevs.element_version_id = pev.element_version_id;
3102:
3103: CURSOR get_structure_ver_csr(c_structure_version_id NUMBER) IS
3104: SELECT *
3105: FROM PA_PROJ_ELEMENT_VERSIONS
3106: WHERE element_version_id = c_structure_version_id;
3107: l_struc_ver_rec get_structure_ver_csr%ROWTYPE;
3108:
3109: CURSOR get_structure_ver_attr_csr(c_structure_version_id NUMBER, c_project_id NUMBER) IS
3124: CURSOR get_task_versions_csr(c_structure_version_id NUMBER) IS
3125: SELECT a.element_version_id, a.proj_element_id, a.display_sequence, a.wbs_level,
3126: a.project_id, b.object_id_from1 parent_element_version_id,
3127: a.TASK_UNPUB_VER_STATUS_CODE, a.parent_structure_version_id
3128: FROM PA_PROJ_ELEMENT_VERSIONS a,
3129: PA_OBJECT_RELATIONSHIPS b
3130: WHERE a.object_type = 'PA_TASKS'
3131: AND a.parent_structure_version_id = c_structure_version_id
3132: AND a.element_version_id = b.object_id_to1
3136: l_task_versions_rec get_task_versions_csr%ROWTYPE;
3137:
3138: Cursor get_linking_tasks IS
3139: select a.element_version_id
3140: from pa_proj_element_versions a,
3141: pa_proj_elements b
3142: where a.proj_element_id = b.proj_element_id
3143: and a.parent_structure_version_id = p_structure_version_id
3144: and b.link_task_flag = 'Y';
3167:
3168: --hsiu added for advanced structure changes
3169: cursor sel_other_structure_ver(c_keep_struc_ver_id NUMBER) IS
3170: select b.element_version_id, b.record_version_number
3171: from pa_proj_element_versions a,
3172: pa_proj_element_versions b,
3173: pa_proj_elem_ver_structure c
3174: where a.element_version_id = c_keep_struc_ver_id
3175: and a.project_id = b.project_id
3168: --hsiu added for advanced structure changes
3169: cursor sel_other_structure_ver(c_keep_struc_ver_id NUMBER) IS
3170: select b.element_version_id, b.record_version_number
3171: from pa_proj_element_versions a,
3172: pa_proj_element_versions b,
3173: pa_proj_elem_ver_structure c
3174: where a.element_version_id = c_keep_struc_ver_id
3175: and a.project_id = b.project_id
3176: and a.proj_element_id = b.proj_element_id
3213:
3214: CURSOR get_tbd_tasks_info(c_task_ver_id NUMBER) IS
3215: select parent_structure_version_id, element_version_id,
3216: record_version_number
3217: from pa_proj_element_versions
3218: where element_version_id = c_task_ver_id;
3219: l_tbd_tasks_info_rec get_tbd_tasks_info%ROWTYPE;
3220:
3221: CURSOR get_parent_id(c_task_ver_id NUMBER) IS
3262: --bug 3047602
3263: l_task_ver_ids_tbl PA_STRUCT_TASK_ROLLUP_PUB.pa_element_version_id_tbl_typ;
3264: cursor get_all_new_childs(c_new_struc_ver_id NUMBER) IS
3265: select element_version_id
3266: from pa_proj_element_versions
3267: where parent_structure_version_id = c_new_struc_ver_id
3268: and object_type = 'PA_TASKS';
3269: --end bug 3047602
3270:
3269: --end bug 3047602
3270:
3271: l_rowid VARCHAR2(255);
3272: CURSOR cur_elem_ver_seq IS
3273: SELECT pa_proj_element_versions_s.nextval
3274: FROM sys.dual;
3275:
3276: l_last_pub_str_ver_id NUMBER; --Bug No. 3450684 Smukka 01/03/2004
3277: l_chk_deliverable VARCHAR2(80); --Summuka For checking deliverables
3322: l_financial_type := PA_PROJECT_STRUCTURE_UTILS.Get_Struc_Type_For_Version(p_structure_version_id, 'FINANCIAL');
3323:
3324: select project_id
3325: into l_project_id
3326: from pa_proj_element_versions
3327: where element_version_id = p_structure_version_id;
3328:
3329: --bug 3840509
3330: IF 'Y' = nvl(PA_PROJECT_STRUCTURE_UTILS.Get_Sch_Dirty_fl(l_project_id,
3597: l_tmp_struct_ver_id := l_new_struct_ver_id ;
3598:
3599: -- End 4657794
3600:
3601: PA_PROJ_ELEMENT_VERSIONS_PKG.INSERT_ROW(
3602: X_ROW_ID => l_rowid
3603: --,X_ELEMENT_VERSION_ID => l_new_struct_ver_id * commented for Bug Fix: 4537865
3604: ,X_ELEMENT_VERSION_ID => l_tmp_struct_ver_id -- added for Bug fix: 4537865
3605: ,X_PROJ_ELEMENT_ID => l_struc_ver_rec.proj_element_id
3931:
3932: --Removing due to changes in publishing
3933: select a.proj_element_id, b.object_id_from1
3934: into l_parent_id, l_parent_ver_id
3935: from pa_proj_element_versions a,
3936: pa_object_relationships b
3937: where a.element_version_id = b.object_id_from1
3938: and a.object_type = b.object_type_from
3939: and relationship_type = 'S'
4018: LAST_UPDATED_BY = FND_GLOBAL.USER_ID,
4019: LAST_UPDATE_LOGIN = FND_GLOBAL.LOGIN_ID
4020: where proj_element_id = l_task_versions_rec.proj_element_id;
4021:
4022: update pa_proj_element_versions
4023: set TASK_UNPUB_VER_STATUS_CODE = 'PUBLISHED'
4024: where element_version_id = l_task_versions_rec.element_version_id;
4025:
4026: -- 3955848 Added code to delete task to dlvr association in publishing flow , version enabled case
4083: l_parent_tbl(l_parent_ver_id) := l_parent_ver_id;
4084: END IF;
4085: END IF;
4086: ELSE --copy
4087: update pa_proj_element_versions
4088: set TASK_UNPUB_VER_STATUS_CODE = 'PUBLISHED'
4089: where element_version_id = l_task_versions_rec.element_version_id;
4090: END IF;
4091: END IF;
4680: --maansari
4681: --clear up global array
4682: PA_STRUCT_UPGR_PUB.clear_globals;
4683:
4684: INSERT INTO pa_proj_element_versions(
4685: ELEMENT_VERSION_ID
4686: ,PROJ_ELEMENT_ID
4687: ,OBJECT_TYPE
4688: ,PROJECT_ID
4717: ,source_object_type
4718: ,financial_task_flag
4719: )
4720: SELECT
4721: pa_proj_element_versions_s.nextval
4722: ,ppev.proj_element_id
4723: ,ppev.object_type
4724: ,l_project_id
4725: ,l_new_struct_ver_id
4751: ,ppev.element_version_id
4752: ,l_project_id
4753: ,'PA_PROJECTS'
4754: ,ppev.financial_task_flag
4755: FROM ( SELECT * from pa_proj_element_versions ppev2
4756: --,pa_proj_elements ppe --bug 4573340 commenting out this for bug 4578813
4757: WHERE --bug#3094283 ppev2.project_id = l_project_id
4758: ppev2.parent_structure_version_id = p_structure_version_id
4759: and ppev2.object_type = 'PA_TASKS'
4769: order by ppev2.display_sequence ) ppev
4770: ;
4771:
4772: /* --cant write order by directly.
4773: FROM pa_proj_element_versions ppev
4774: WHERE ppev.project_id = l_project_id
4775: and ppev.parent_structure_version_id = p_structure_version_id
4776: and ppev.object_type = 'PA_TASKS'
4777: and PA_PROJECT_STRUCTURE_PVT1.copy_task_version( p_structure_version_id,
4821: start with object_id_from1 = p_structure_version_id
4822: and RELATIONSHIP_TYPE = 'S' /* Bug 2881667 - Added this condition */
4823: connect by object_id_from1 = prior object_id_to1
4824: and RELATIONSHIP_TYPE = 'S' ) pobj, /* Bug 2881667 - Added this condition */
4825: pa_proj_element_versions ppev1,
4826: pa_proj_element_versions ppev2
4827: WHERE
4828: --bug#3094283 ppev1.project_id = l_project_id
4829: ppev1.attribute15 = pobj.object_id_from1
4822: and RELATIONSHIP_TYPE = 'S' /* Bug 2881667 - Added this condition */
4823: connect by object_id_from1 = prior object_id_to1
4824: and RELATIONSHIP_TYPE = 'S' ) pobj, /* Bug 2881667 - Added this condition */
4825: pa_proj_element_versions ppev1,
4826: pa_proj_element_versions ppev2
4827: WHERE
4828: --bug#3094283 ppev1.project_id = l_project_id
4829: ppev1.attribute15 = pobj.object_id_from1
4830: --bug#3094283 AND ppev2.project_id = l_project_id
4953: ,ppevs.EXT_REMAIN_DURATION
4954: ,ppevs.EXT_SCH_DURATION
4955: ,ppevs.DEF_SCH_TOOL_TSK_TYPE_CODE -- 4295770 Added
4956: FROM pa_proj_elem_ver_schedule ppevs,
4957: pa_proj_element_versions ppev1
4958: where ppev1.attribute15 = ppevs.element_version_id
4959: and ppevs.project_id = l_project_id
4960: and ppev1.project_id = l_project_id
4961: and ppev1.parent_structure_version_id = l_new_struct_ver_id
4966: -- Populate the old and new task version ID in PL/SQL tables
4967:
4968: Select Element_Version_ID, ATTRIBUTE15 Bulk Collect
4969: INTO l_New_Task_Versions_Tab, l_Old_Task_Versions_Tab
4970: From pa_proj_element_versions
4971: Where parent_structure_version_id = l_new_struct_ver_id
4972: and object_type = 'PA_TASKS'
4973: and PA_PROJECT_STRUCTURE_PVT1.copy_task_version( l_new_struct_ver_id, element_version_id ) = 'Y'
4974: order by display_sequence;
5051: --------------------------------------------- FP_M changes: End
5052: */
5053: --end bug 4019845
5054:
5055: update pa_proj_element_versions ppevs1
5056: set attribute15 = ( select attribute15 from pa_proj_element_versions ppevs2
5057: where ppevs2.project_id = l_project_id
5058: and parent_structure_version_id = p_structure_version_id
5059: and ppevs2.element_version_id = ppevs1.attribute15
5052: */
5053: --end bug 4019845
5054:
5055: update pa_proj_element_versions ppevs1
5056: set attribute15 = ( select attribute15 from pa_proj_element_versions ppevs2
5057: where ppevs2.project_id = l_project_id
5058: and parent_structure_version_id = p_structure_version_id
5059: and ppevs2.element_version_id = ppevs1.attribute15
5060: )
5991: cursor get_task_version_info(c_task_version_id NUMBER) IS
5992: select v1.project_id project_id, v2.proj_element_id structure_id,
5993: v1.parent_structure_version_id structure_version_id,
5994: v1.element_version_id task_version_id
5995: from pa_proj_element_versions v1,
5996: pa_proj_element_versions v2
5997: where v1.element_version_id = c_task_version_id
5998: and v1.parent_structure_version_id = v2.element_version_id;
5999: l_info_task_ver_rec get_task_version_info%ROWTYPE;
5992: select v1.project_id project_id, v2.proj_element_id structure_id,
5993: v1.parent_structure_version_id structure_version_id,
5994: v1.element_version_id task_version_id
5995: from pa_proj_element_versions v1,
5996: pa_proj_element_versions v2
5997: where v1.element_version_id = c_task_version_id
5998: and v1.parent_structure_version_id = v2.element_version_id;
5999: l_info_task_ver_rec get_task_version_info%ROWTYPE;
6000:
6000:
6001: cursor get_structure_version_info(c_structure_version_id NUMBER) IS
6002: select v1.project_id project_id, v1.proj_element_id structure_id,
6003: v1.element_version_id structure_version_id
6004: from pa_proj_element_versions v1
6005: where v1.element_version_id = c_structure_version_id;
6006: l_info_struc_ver_rec get_structure_version_info%ROWTYPE;
6007:
6008: l_return_status VARCHAR2(1);
6015: l_object_type VARCHAR2(30);
6016:
6017: cursor get_latest_struc_ver(c_struc_ver_id NUMBER) IS
6018: select pevs.element_version_id
6019: from pa_proj_element_versions pev,
6020: pa_proj_elem_ver_structure pevs
6021: where pev.element_version_id = c_struc_ver_id
6022: and pev.project_id = pevs.project_id
6023: and pev.proj_element_id = pevs.proj_element_id
6025:
6026: cursor get_latest_task_ver(c_task_ver_id NUMBER) IS
6027: select pev2.element_version_id task_version_id,
6028: pev2.parent_structure_version_id parent_structure_version_id
6029: from pa_proj_element_versions pev,
6030: pa_proj_element_versions pev1,
6031: pa_proj_elem_ver_structure pevs,
6032: pa_proj_element_versions pev2
6033: where pev.element_version_id = c_task_ver_id
6026: cursor get_latest_task_ver(c_task_ver_id NUMBER) IS
6027: select pev2.element_version_id task_version_id,
6028: pev2.parent_structure_version_id parent_structure_version_id
6029: from pa_proj_element_versions pev,
6030: pa_proj_element_versions pev1,
6031: pa_proj_elem_ver_structure pevs,
6032: pa_proj_element_versions pev2
6033: where pev.element_version_id = c_task_ver_id
6034: and pev.parent_structure_version_id = pev1.element_version_id
6028: pev2.parent_structure_version_id parent_structure_version_id
6029: from pa_proj_element_versions pev,
6030: pa_proj_element_versions pev1,
6031: pa_proj_elem_ver_structure pevs,
6032: pa_proj_element_versions pev2
6033: where pev.element_version_id = c_task_ver_id
6034: and pev.parent_structure_version_id = pev1.element_version_id
6035: and pev1.project_id = pevs.project_id
6036: and pev1.proj_element_id = pevs.proj_element_id
6041:
6042: cursor can_update(c_element_version_id NUMBER) IS
6043: select '1'
6044: from pa_proj_elem_ver_structure pevs,
6045: pa_proj_element_versions pev
6046: where pev.element_version_id = c_element_version_id
6047: and pev.parent_structure_version_id = pevs.element_version_id
6048: and pev.project_id = pevs.project_id
6049: and pevs.status_code IN ('STRUCTURE_WORKING', 'STRUCTURE_REJECTED');
6244: ,x_msg_count OUT NOCOPY NUMBER --File.Sql.39 bug 4440895
6245: ,x_msg_data OUT NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
6246: ,x_return_status OUT NOCOPY VARCHAR2 ) --File.Sql.39 bug 4440895
6247: IS
6248: l_new_struct_ver_id PA_PROJ_ELEMENT_VERSIONS.ELEMENT_VERSION_ID%TYPE;
6249: l_return_status VARCHAR2(1);
6250: l_msg_count NUMBER;
6251: l_msg_data VARCHAR2(250);
6252: l_pev_structure_id NUMBER;
6253:
6254: CURSOR l_get_structure_ver_csr(c_structure_version_id NUMBER)
6255: IS
6256: SELECT *
6257: FROM PA_PROJ_ELEMENT_VERSIONS
6258: WHERE element_version_id = c_structure_version_id;
6259:
6260: l_structure_ver_rec l_get_structure_ver_csr%ROWTYPE;
6261: l_structure_ver_to_rec l_get_structure_ver_csr%ROWTYPE;
6263: CURSOR l_get_structure_ver_attr_csr(c_structure_version_id NUMBER)
6264: IS
6265: SELECT a.*
6266: FROM PA_PROJ_ELEM_VER_STRUCTURE a,
6267: PA_PROJ_ELEMENT_VERSIONS b
6268: WHERE b.element_version_id = c_structure_version_id
6269: AND b.project_id = a.project_id
6270: AND b.element_version_id = a.project_id;
6271:
6275: IS
6276: SELECT a.element_version_id, a.proj_element_id, a.display_sequence, a.wbs_level,
6277: b.object_id_from1 parent_element_version_id,
6278: a.TASK_UNPUB_VER_STATUS_CODE
6279: FROM PA_PROJ_ELEMENT_VERSIONS a,
6280: PA_OBJECT_RELATIONSHIPS b
6281: WHERE a.object_type = 'PA_TASKS'
6282: AND a.parent_structure_version_id = c_structure_version_id
6283: AND a.element_version_id = b.object_id_to1
6293: CURSOR l_get_ver_schedule_attr_csr(c_element_version_id NUMBER)
6294: IS
6295: SELECT a.*
6296: FROM PA_PROJ_ELEM_VER_SCHEDULE a,
6297: PA_PROJ_ELEMENT_VERSIONS b
6298: WHERE b.element_version_id = c_element_version_id
6299: AND b.project_id = a.project_id
6300: AND b.element_version_id = a.element_version_id;
6301:
6324: CURSOR l_get_structure_type_csr(c_structure_version_id NUMBER)
6325: IS
6326: SELECT pst.structure_type_class_code
6327: FROM PA_STRUCTURE_TYPES pst,
6328: PA_PROJ_ELEMENT_VERSIONS ppev,
6329: PA_PROJ_STRUCTURE_TYPES ppst
6330: WHERE ppev.element_version_id = c_structure_version_id
6331: AND ppev.proj_element_id = ppst.proj_element_id
6332: AND ppst.structure_type_id = pst.structure_type_id;
6335:
6336: CURSOR l_check_working_versions_csr(c_structure_version_id NUMBER)
6337: IS
6338: SELECT 'Y'
6339: FROM PA_PROJ_ELEMENT_VERSIONS ppev
6340: WHERE ppev.element_version_id = c_structure_version_id
6341: AND EXISTS
6342: (SELECT 'Y'
6343: FROM PA_PROJ_ELEMENT_VERSIONS ppev2,
6339: FROM PA_PROJ_ELEMENT_VERSIONS ppev
6340: WHERE ppev.element_version_id = c_structure_version_id
6341: AND EXISTS
6342: (SELECT 'Y'
6343: FROM PA_PROJ_ELEMENT_VERSIONS ppev2,
6344: PA_PROJ_ELEM_VER_STRUCTURE ppevs
6345: WHERE ppev2.proj_element_id = ppev.proj_element_id
6346: AND ppev2.project_id = ppev.project_id
6347: AND ppevs.project_id = ppev2.project_id
6362: cursor get_task_version_info(c_task_version_id NUMBER) IS
6363: select v1.project_id project_id, v2.proj_element_id structure_id,
6364: v1.parent_structure_version_id structure_version_id,
6365: v1.element_version_id task_version_id
6366: from pa_proj_element_versions v1,
6367: pa_proj_element_versions v2
6368: where v1.element_version_id = c_task_version_id
6369: and v1.parent_structure_version_id = v2.element_version_id;
6370: l_info_task_ver_rec get_task_version_info%ROWTYPE;
6363: select v1.project_id project_id, v2.proj_element_id structure_id,
6364: v1.parent_structure_version_id structure_version_id,
6365: v1.element_version_id task_version_id
6366: from pa_proj_element_versions v1,
6367: pa_proj_element_versions v2
6368: where v1.element_version_id = c_task_version_id
6369: and v1.parent_structure_version_id = v2.element_version_id;
6370: l_info_task_ver_rec get_task_version_info%ROWTYPE;
6371:
7149:
7150: CURSOR l_get_structure_ver_csr(c_structure_version_id NUMBER)
7151: IS
7152: SELECT *
7153: FROM PA_PROJ_ELEMENT_VERSIONS
7154: WHERE element_version_id = c_structure_version_id;
7155:
7156: l_structure_ver_rec l_get_structure_ver_csr%ROWTYPE;
7157:
7159: -- CURSOR l_get_structure_ver_attr_csr(c_structure_version_id NUMBER, c_pub_status VARCHAR2)
7160: -- IS
7161: -- SELECT a.*
7162: -- FROM PA_PROJ_ELEM_VER_STRUCTURE a,
7163: -- PA_PROJ_ELEMENT_VERSIONS b
7164: -- WHERE b.element_version_id = c_structure_version_id
7165: -- AND b.element_version_id = a.element_version_id
7166: -- AND b.project_id = a.project_id
7167: -- AND (a.STATUS_CODE <> 'STRUCTURE_PUBLISHED' AND c_pub_status = 'N')
7167: -- AND (a.STATUS_CODE <> 'STRUCTURE_PUBLISHED' AND c_pub_status = 'N')
7168: -- UNION
7169: -- SELECT a.*
7170: -- FROM PA_PROJ_ELEM_VER_STRUCTURE a,
7171: -- PA_PROJ_ELEMENT_VERSIONS b
7172: -- WHERE b.element_version_id = c_structure_version_id
7173: -- AND b.element_version_id = a.element_version_id
7174: -- AND b.project_id = a.project_id
7175: -- AND (a.STATUS_CODE = 'STRUCTURE_PUBLISHED' AND c_pub_status = 'Y' and a.LATEST_EFF_PUBLISHED_FLAG='Y');
7177: CURSOR l_get_structure_ver_attr_csr(c_structure_version_id NUMBER)
7178: IS
7179: SELECT a.*
7180: FROM PA_PROJ_ELEM_VER_STRUCTURE a,
7181: PA_PROJ_ELEMENT_VERSIONS b
7182: WHERE b.element_version_id = c_structure_version_id
7183: AND b.element_version_id = a.element_version_id
7184: AND b.proj_element_id = a.proj_element_id
7185: AND b.project_id = a.project_id;
7188: CURSOR l_get_task_versions_csr(c_structure_version_id NUMBER)
7189: IS
7190: SELECT a.element_version_id, a.proj_element_id, a.display_sequence, a.wbs_level,
7191: b.object_id_from1 parent_element_version_id
7192: FROM PA_PROJ_ELEMENT_VERSIONS a,
7193: PA_OBJECT_RELATIONSHIPS b,
7194: pa_proj_elements c
7195: WHERE a.object_type = 'PA_TASKS'
7196: AND a.parent_structure_version_id = c_structure_version_id
7217: CURSOR l_get_ver_schedule_attr_csr(c_element_version_id NUMBER)
7218: IS
7219: SELECT a.*
7220: FROM PA_PROJ_ELEM_VER_SCHEDULE a,
7221: PA_PROJ_ELEMENT_VERSIONS b
7222: WHERE b.element_version_id = c_element_version_id
7223: AND b.element_version_id = a.element_version_id
7224: AND b.project_id = a.project_id;
7225:
7410: l_proj_record_ver_number NUMBER;
7411: l_struc_scheduled_start_date DATE;
7412: l_struc_scheduled_finish_date DATE;
7413: --hsiu added for task version status
7414: l_task_unpub_ver_status_code pa_proj_element_versions.TASK_UNPUB_VER_STATUS_CODE%TYPE;
7415: --end task version status changes
7416:
7417: --hsiu: bug 2667527
7418: CURSOR get_init_task_stat(c_task_type_id NUMBER) IS
8467: CURSOR c0( c_project_id NUMBER ) IS
8468: SELECT b.proj_element_id, b.scheduled_start_date,
8469: b.scheduled_finish_date, a.element_version_id, duration,
8470: a.wbs_number, a.wbs_level, a.display_sequence
8471: FROM PA_PROJ_ELEMENT_VERSIONS A, PA_PROJ_ELEM_VER_SCHEDULE B
8472: WHERE a.parent_structure_version_id = p_structure_version_id
8473: AND a.element_version_id = b.element_version_id
8474: AND a.project_id = b.project_id
8475: AND a.project_id = c_project_id
8482: SCHEDULED_FINISH_DATE, ELEMENT_VERSION_ID, DURATION, WBS_NUMBER,
8483: OLD_LEVEL , DISPLAY_SEQUENCE, LEVEL WBS_LEVEL
8484: FROM
8485: (
8486: select /*+ ordered use_nl(b a t) index(t pa_tasks_n8) index(a PA_PROJ_ELEMENT_VERSIONS_N1) index(t PA_PROJ_ELEM_VER_SCHEDULE_U2) */
8487: /* t.project_id , t.task_id , t.parent_task_id , a.display_sequence ,
8488: a.level_sequence, a.parent_structure_version_id , B.PROJ_ELEMENT_ID,
8489: B.SCHEDULED_START_DATE, B.SCHEDULED_FINISH_DATE, A.ELEMENT_VERSION_ID, DURATION,
8490: A.WBS_NUMBER, A.WBS_LEVEL OLD_LEVEL
8488: a.level_sequence, a.parent_structure_version_id , B.PROJ_ELEMENT_ID,
8489: B.SCHEDULED_START_DATE, B.SCHEDULED_FINISH_DATE, A.ELEMENT_VERSION_ID, DURATION,
8490: A.WBS_NUMBER, A.WBS_LEVEL OLD_LEVEL
8491: from
8492: PA_TASKS T, PA_PROJ_ELEMENT_VERSIONS A, PA_PROJ_ELEM_VER_SCHEDULE B
8493: where
8494: T.PROJECT_ID = p_project_id AND A.PROJ_ELEMENT_ID = T.TASK_ID
8495: AND A.PROJECT_ID = T.PROJECT_ID --AND A.PARENT_STRUCTURE_VERSION_ID = :B1
8496: AND A.ELEMENT_VERSION_ID = B.ELEMENT_VERSION_ID
8523: PA_PROJ_ELEMENTS_TMP.SCHEDULED_START_DATE%TYPE;
8524: TYPE SCHEDULED_FINISH_DATE_t IS TABLE OF
8525: PA_PROJ_ELEMENTS_TMP.SCHEDULED_FINISH_DATE%TYPE;
8526: TYPE ELEMENT_VERSION_ID_t IS TABLE OF
8527: PA_PROJ_ELEMENT_VERSIONS.ELEMENT_VERSION_ID%TYPE;
8528: TYPE duration_t IS TABLE OF PA_PROJ_ELEMENTS_TMP.duration%TYPE;
8529:
8530: TYPE WBS_NUMBER_T IS TABLE OF PA_PROJ_ELEMENTS_TMP.WBS_NUMBER%TYPE;
8531: TYPE OLD_LEVEL_T IS TABLE OF PA_PROJ_ELEMENTS_TMP.OLD_LEVEL%TYPE;
8529:
8530: TYPE WBS_NUMBER_T IS TABLE OF PA_PROJ_ELEMENTS_TMP.WBS_NUMBER%TYPE;
8531: TYPE OLD_LEVEL_T IS TABLE OF PA_PROJ_ELEMENTS_TMP.OLD_LEVEL%TYPE;
8532: TYPE DISPLAY_SEQUENCE_T IS TABLE OF PA_PROJ_ELEMENTS_TMP.DISPLAY_SEQUENCE%TYPE;
8533: TYPE WBS_LEVEL_T IS TABLE OF PA_PROJ_ELEMENT_VERSIONS.WBS_LEVEL%TYPE;
8534:
8535: TYPE connect_path_t IS TABLE OF VARCHAR2(4000);
8536: TYPE leaf_node_t IS TABLE OF NUMBER;
8537:
8566:
8567: IF p_project_id IS NULL AND p_structure_version_id IS NOT NULL THEN
8568: SELECT PROJECT_ID
8569: INTO l_project_id
8570: FROM PA_PROJ_ELEMENT_VERSIONS
8571: WHERE ELEMENT_VERSION_ID = p_structure_version_id;
8572: ELSIF p_project_id IS NOT NULL THEN
8573: l_project_id := p_project_id;
8574: ELSE
8580: delete PA_PROJ_ELEMENTS_TMP;
8581:
8582: INSERT INTO PA_PROJ_ELEMENTS_TMP(PROJECT_ID, TASK_ID, PARENT_TASK_ID, DISPLAY_SEQUENCE, LEVEL_SEQUENCE, PARENT_STRUCTURE_VERSION_ID,
8583: PROJ_ELEMENT_ID, SCHEDULED_START_DATE, SCHEDULED_FINISH_DATE, ELEMENT_VERSION_ID, DURATION, WBS_NUMBER, OLD_LEVEL, DEFER_CODE, TOP_TASK_ID) /* Modified insert statement for bug#14765516 */
8584: SELECT /*+ ordered use_nl(b a t) index(t pa_tasks_n8) index(a PA_PROJ_ELEMENT_VERSIONS_N1) index(t PA_PROJ_ELEM_VER_SCHEDULE_U2) */
8585: t.project_id , t.task_id , t.parent_task_id , a.display_sequence ,
8586: a.level_sequence, a.parent_structure_version_id , B.PROJ_ELEMENT_ID,
8587: B.SCHEDULED_START_DATE, B.SCHEDULED_FINISH_DATE, A.ELEMENT_VERSION_ID, DURATION,
8588: A.WBS_NUMBER, A.WBS_LEVEL OLD_LEVEL,a.defer_code, t.top_task_id
8586: a.level_sequence, a.parent_structure_version_id , B.PROJ_ELEMENT_ID,
8587: B.SCHEDULED_START_DATE, B.SCHEDULED_FINISH_DATE, A.ELEMENT_VERSION_ID, DURATION,
8588: A.WBS_NUMBER, A.WBS_LEVEL OLD_LEVEL,a.defer_code, t.top_task_id
8589: from
8590: PA_TASKS T, PA_PROJ_ELEMENT_VERSIONS A, PA_PROJ_ELEM_VER_SCHEDULE B
8591: where
8592: T.PROJECT_ID = p_project_id AND A.PROJ_ELEMENT_ID = T.TASK_ID
8593: AND A.PROJECT_ID = T.PROJECT_ID --AND A.PARENT_STRUCTURE_VERSION_ID = :B1
8594: AND A.ELEMENT_VERSION_ID = B.ELEMENT_VERSION_ID;
8648: l_prev_level := v_WBS_LEVEL(i);
8649: END LOOP ;
8650:
8651: FORALL i in v_PROJ_ELEMENT_ID.first..v_PROJ_ELEMENT_ID.last
8652: UPDATE PA_PROJ_ELEMENT_VERSIONS
8653: SET DISPLAY_SEQUENCE = v_DISPLAY_SEQUENCE(i),
8654: WBS_NUMBER = v_WBS_NUMBER(i),
8655: WBS_LEVEL = v_WBS_LEVEL(i), -- Sridhar Huawei 18-Sept , Add update of wbs_level
8656: last_updated_by = 100
8698: IS
8699: CURSOR c1( c_project_id NUMBER ) IS
8700: SELECT B.PROJ_ELEMENT_ID, B.SCHEDULED_START_DATE,
8701: B.SCHEDULED_FINISH_DATE, A.ELEMENT_VERSION_ID , duration
8702: FROM PA_PROJ_ELEMENT_VERSIONS A, PA_PROJ_ELEM_VER_SCHEDULE B, PA_PROJ_ELEMENTS C
8703: WHERE A.PARENT_STRUCTURE_VERSION_ID = p_structure_version_id
8704: AND A.ELEMENT_VERSION_ID = B.ELEMENT_VERSION_ID
8705: AND A.PROJ_ELEMENT_ID = C.proj_element_id
8706: AND A.PROJECT_ID = B.PROJECT_ID
8711: /* Commented below cursor and replaced with the one above for Huawei enhancement bug 13923366
8712: * bug 13923366 - testing delete_task sceanrio
8713: SELECT B.PROJ_ELEMENT_ID, B.SCHEDULED_START_DATE,
8714: B.SCHEDULED_FINISH_DATE, A.ELEMENT_VERSION_ID , duration
8715: FROM PA_PROJ_ELEMENT_VERSIONS A, PA_PROJ_ELEM_VER_SCHEDULE B, PA_PROJ_ELEMENTS C
8716: WHERE A.PARENT_STRUCTURE_VERSION_ID = p_structure_version_id
8717: AND A.ELEMENT_VERSION_ID = B.ELEMENT_VERSION_ID
8718: AND A.PROJECT_ID = B.PROJECT_ID
8719: AND A.project_id = c_project_id;
8729: PA_PROJ_ELEM_VER_SCHEDULE.SCHEDULED_START_DATE%TYPE;
8730: TYPE SCHEDULED_FINISH_DATE_t IS TABLE OF
8731: PA_PROJ_ELEM_VER_SCHEDULE.SCHEDULED_FINISH_DATE%TYPE;
8732: TYPE ELEMENT_VERSION_ID_t IS TABLE OF
8733: PA_PROJ_ELEMENT_VERSIONS.ELEMENT_VERSION_ID%TYPE;
8734: TYPE duration_t IS TABLE OF PA_PROJ_ELEM_VER_SCHEDULE.duration%TYPE;
8735:
8736: v_PROJ_ELEMENT_ID PROJ_ELEMENT_ID_t;
8737: v_SCHEDULED_START_DATE SCHEDULED_START_DATE_t;
8750: CURSOR c2 (c_project_id NUMBER)
8751: IS
8752: SELECT B.SCHEDULED_START_DATE,
8753: B.SCHEDULED_FINISH_DATE, C.record_version_number
8754: FROM PA_PROJ_ELEMENT_VERSIONS A, PA_PROJ_ELEM_VER_SCHEDULE B,
8755: PA_PROJECTS_ALL C
8756: WHERE A.PARENT_STRUCTURE_VERSION_ID = p_structure_version_id
8757: AND A.ELEMENT_VERSION_ID = p_structure_version_id
8758: AND A.ELEMENT_VERSION_ID = B.ELEMENT_VERSION_ID
8777: l_duration NUMBER;
8778: l_duration_days NUMBER;
8779: cursor get_cal_id IS
8780: select a.calendar_id
8781: from pa_projects_all a, pa_proj_element_versions b
8782: where a.project_id = b.project_id
8783: and b.element_version_id = p_structure_version_id;
8784: BEGIN
8785: IF (p_debug_mode = 'Y') THEN
8791: END IF;
8792:
8793: SELECT PROJECT_ID
8794: INTO l_project_id
8795: FROM PA_PROJ_ELEMENT_VERSIONS
8796: WHERE ELEMENT_VERSION_ID = p_structure_version_id;
8797:
8798: /* Commented for bug 13836957
8799: UPDATE PA_PROJ_ELEMENTS
9213:
9214: --check if delete unpublished ok
9215: cursor sel_other_structure_ver(c_keep_struc_ver_id NUMBER) IS
9216: select b.element_version_id
9217: from pa_proj_element_versions a,
9218: pa_proj_element_versions b
9219: where a.element_version_id = c_keep_struc_ver_id
9220: and a.project_id = b.project_id
9221: and a.proj_element_id = b.proj_element_id
9214: --check if delete unpublished ok
9215: cursor sel_other_structure_ver(c_keep_struc_ver_id NUMBER) IS
9216: select b.element_version_id
9217: from pa_proj_element_versions a,
9218: pa_proj_element_versions b
9219: where a.element_version_id = c_keep_struc_ver_id
9220: and a.project_id = b.project_id
9221: and a.proj_element_id = b.proj_element_id
9222: and b.element_version_id <> c_keep_struc_ver_id
9932: and c.structure_type_class_code = 'WORKPLAN';
9933:
9934: cursor sel_other_structure_ver(c_keep_struc_ver_id NUMBER) IS
9935: select b.element_version_id, b.record_version_number
9936: from pa_proj_element_versions a,
9937: pa_proj_element_versions b
9938: where a.element_version_id = c_keep_struc_ver_id
9939: and a.project_id = b.project_id
9940: and a.proj_element_id = b.proj_element_id
9933:
9934: cursor sel_other_structure_ver(c_keep_struc_ver_id NUMBER) IS
9935: select b.element_version_id, b.record_version_number
9936: from pa_proj_element_versions a,
9937: pa_proj_element_versions b
9938: where a.element_version_id = c_keep_struc_ver_id
9939: and a.project_id = b.project_id
9940: and a.proj_element_id = b.proj_element_id
9941: and b.element_version_id <> c_keep_struc_ver_id
9942: and b.object_type = 'PA_STRUCTURES';
9943:
9944: cursor sel_all_wp_structure_ver(c_struc_id NUMBER) IS
9945: select a.element_version_id, a.record_version_number
9946: from pa_proj_element_versions a,
9947: pa_proj_elements b
9948: where a.proj_element_id = b.proj_element_id
9949: and a.project_id = b.project_id
9950: and b.proj_element_id = c_struc_id;
9986: where structure_type_class_code = 'WORKPLAN';
9987:
9988: cursor sel_struc_ver(c_structure_id NUMBER) IS
9989: select element_version_id
9990: from pa_proj_element_versions
9991: where project_id = p_project_id
9992: and proj_element_id = c_structure_id
9993: and object_type = 'PA_STRUCTURES';
9994:
9994:
9995: --hsiu: commented for performance
9996: -- cursor sel_struc_and_task_vers(c_struc_ver_id NUMBER) IS
9997: -- select object_type, proj_element_id, element_version_id
9998: -- from pa_proj_element_versions
9999: -- where parent_structure_version_id = c_struc_ver_id;
10000: cursor sel_struc_and_task_vers(c_struc_ver_id NUMBER) IS
10001: select pev.object_type, pev.proj_element_id, pev.element_version_id
10002: from pa_proj_element_versions pev, pa_object_relationships rel
9998: -- from pa_proj_element_versions
9999: -- where parent_structure_version_id = c_struc_ver_id;
10000: cursor sel_struc_and_task_vers(c_struc_ver_id NUMBER) IS
10001: select pev.object_type, pev.proj_element_id, pev.element_version_id
10002: from pa_proj_element_versions pev, pa_object_relationships rel
10003: where pev.parent_structure_version_id = c_struc_ver_id
10004: and rel.object_id_to1 = pev.element_version_id
10005: and rel.relationship_type = 'S'
10006: and NOT EXISTS (
10023: where project_id = p_project_id;
10024:
10025: CURSOR get_top_tasks(c_structure_version_id NUMBER) IS
10026: select v.element_version_id
10027: from pa_proj_element_versions v,
10028: pa_object_relationships r
10029: where v.element_version_id = r.object_id_to1
10030: and r.object_id_from1 = c_structure_version_id
10031: and r.object_type_from = 'PA_STRUCTURES';
10777: FND_GLOBAL.LOGIN_ID,
10778: PPEV.project_id,
10779: 'PA_PROJECTS'
10780: FROM PA_TASKS PT,
10781: PA_PROJ_ELEMENT_VERSIONS PPEV
10782: WHERE
10783: PPEV.parent_structure_version_id = l_structure_version_id
10784: AND PPEV.proj_element_id = PT.task_id (+);
10785: -- anlee end of bulk insert
11349:
11350: cursor sel_struc_ver_attr_rvn(c_struc_ver_id NUMBER) IS
11351: select a.PEV_STRUCTURE_ID, a.record_version_number
11352: from pa_proj_elem_ver_structure a,
11353: pa_proj_element_versions b
11354: where b.project_id = a.project_id
11355: and b.element_version_id = c_struc_ver_id
11356: and a.element_version_id = b.element_version_id;
11357:
11356: and a.element_version_id = b.element_version_id;
11357:
11358: cursor sel_other_structure_ver(c_keep_struc_ver_id NUMBER) IS
11359: select b.element_version_id, b.record_version_number
11360: from pa_proj_element_versions a,
11361: pa_proj_element_versions b
11362: where a.element_version_id = c_keep_struc_ver_id
11363: and a.project_id = b.project_id
11364: and a.proj_element_id = b.proj_element_id
11357:
11358: cursor sel_other_structure_ver(c_keep_struc_ver_id NUMBER) IS
11359: select b.element_version_id, b.record_version_number
11360: from pa_proj_element_versions a,
11361: pa_proj_element_versions b
11362: where a.element_version_id = c_keep_struc_ver_id
11363: and a.project_id = b.project_id
11364: and a.proj_element_id = b.proj_element_id
11365: and b.element_version_id <> c_keep_struc_ver_id
11368: --bug 3125813
11369: cursor sel_one_struc_ver(c_structure_id NUMBER) IS
11370: select b.project_id, b.element_version_id
11371: from pa_proj_elements a,
11372: pa_proj_element_versions b
11373: where a.proj_element_id = c_structure_id
11374: and a.project_id = b.project_id
11375: and a.proj_element_id = b.proj_element_id;
11376: --end bug 3125813
11377:
11378: --bug 4263266
11379: CURSOR cur_chk_tasks(c_project_id NUMBER, c_structure_version_id NUMBER)
11380: IS
11381: SELECT 'x' from pa_proj_element_versions
11382: WHERE project_id = c_project_id
11383: AND parent_structure_version_id = c_structure_version_id
11384: AND object_type = 'PA_TASKS'
11385: ;
12071: ppvsch.scheduled_start_date, ppvsch.scheduled_finish_date,
12072: ppvsch.estimated_start_date, ppvsch.estimated_finish_date,
12073: ppvsch.actual_start_date, ppvsch.actual_finish_date
12074: from pa_proj_elem_ver_schedule ppvsch,
12075: pa_proj_element_versions ppv
12076: where ppv.parent_structure_version_id = p_structure_version_id
12077: and ppv.project_id = ppvsch.project_id
12078: and ppv.proj_element_id = ppvsch.proj_element_id
12079: and ppv.element_version_id = ppvsch.element_version_id;
12277: pevs.pev_structure_id, pevs.record_version_number,
12278: pevsh.pev_schedule_id, pevsh.record_version_number,
12279: pevsh.rowid
12280: from pa_proj_elements pe,
12281: pa_proj_element_versions pev,
12282: pa_proj_elem_ver_structure pevs,
12283: pa_proj_elem_ver_schedule pevsh
12284: where pev.element_version_id = p_structure_version_id and
12285: pev.proj_element_id = pe.proj_element_id and
12289: pev.element_version_id = pevsh.element_version_id (+);
12290:
12291: CURSOR is_last_version(p_structure_id NUMBER) IS
12292: select 'N'
12293: from pa_proj_element_versions
12294: where proj_element_id = p_structure_id;
12295:
12296: CURSOR get_top_tasks IS
12297: select v.element_version_id
12294: where proj_element_id = p_structure_id;
12295:
12296: CURSOR get_top_tasks IS
12297: select v.element_version_id
12298: from pa_proj_element_versions v,
12299: pa_object_relationships r
12300: where v.element_version_id = r.object_id_to1
12301: and r.object_id_from1 = p_structure_version_id
12302: and r.object_type_from = 'PA_STRUCTURES';
12305: select record_version_number
12306: from pa_proj_workplan_attr
12307: where proj_element_id = c_proj_element_id;
12308:
12309: l_project_id PA_PROJ_ELEMENT_VERSIONS.PROJECT_ID%TYPE;
12310: l_proj_element_id PA_PROJ_ELEMENTS.PROJ_ELEMENT_ID%TYPE;
12311: l_pe_rvn PA_PROJ_ELEMENTS.RECORD_VERSION_NUMBER%TYPE;
12312: l_element_version_id PA_PROJ_ELEMENT_VERSIONS.ELEMENT_VERSION_ID%TYPE;
12313: l_pev_rvn PA_PROJ_ELEMENT_VERSIONS.RECORD_VERSION_NUMBER%TYPE;
12308:
12309: l_project_id PA_PROJ_ELEMENT_VERSIONS.PROJECT_ID%TYPE;
12310: l_proj_element_id PA_PROJ_ELEMENTS.PROJ_ELEMENT_ID%TYPE;
12311: l_pe_rvn PA_PROJ_ELEMENTS.RECORD_VERSION_NUMBER%TYPE;
12312: l_element_version_id PA_PROJ_ELEMENT_VERSIONS.ELEMENT_VERSION_ID%TYPE;
12313: l_pev_rvn PA_PROJ_ELEMENT_VERSIONS.RECORD_VERSION_NUMBER%TYPE;
12314: l_pev_structure_id PA_PROJ_ELEM_VER_STRUCTURE.PEV_STRUCTURE_ID%TYPE;
12315: l_pevs_rvn PA_PROJ_ELEM_VER_STRUCTURE.RECORD_VERSION_NUMBER%TYPE;
12316: l_pev_schedule_id PA_PROJ_ELEM_VER_SCHEDULE.PEV_SCHEDULE_ID%TYPE;
12309: l_project_id PA_PROJ_ELEMENT_VERSIONS.PROJECT_ID%TYPE;
12310: l_proj_element_id PA_PROJ_ELEMENTS.PROJ_ELEMENT_ID%TYPE;
12311: l_pe_rvn PA_PROJ_ELEMENTS.RECORD_VERSION_NUMBER%TYPE;
12312: l_element_version_id PA_PROJ_ELEMENT_VERSIONS.ELEMENT_VERSION_ID%TYPE;
12313: l_pev_rvn PA_PROJ_ELEMENT_VERSIONS.RECORD_VERSION_NUMBER%TYPE;
12314: l_pev_structure_id PA_PROJ_ELEM_VER_STRUCTURE.PEV_STRUCTURE_ID%TYPE;
12315: l_pevs_rvn PA_PROJ_ELEM_VER_STRUCTURE.RECORD_VERSION_NUMBER%TYPE;
12316: l_pev_schedule_id PA_PROJ_ELEM_VER_SCHEDULE.PEV_SCHEDULE_ID%TYPE;
12317: l_pevsh_rvn PA_PROJ_ELEM_VER_SCHEDULE.RECORD_VERSION_NUMBER%TYPE;
12316: l_pev_schedule_id PA_PROJ_ELEM_VER_SCHEDULE.PEV_SCHEDULE_ID%TYPE;
12317: l_pevsh_rvn PA_PROJ_ELEM_VER_SCHEDULE.RECORD_VERSION_NUMBER%TYPE;
12318: l_pevsh_rowid VARCHAR2(255);
12319:
12320: l_task_version_id PA_PROJ_ELEMENT_VERSIONS.ELEMENT_VERSION_ID%TYPE;
12321: l_task_rvn PA_PROJ_ELEMENT_VERSIONS.RECORD_VERSION_NUMBER%TYPE;
12322: l_wp_attr_rvn PA_PROJ_WORKPLAN_ATTR.RECORD_VERSION_NUMBER%TYPE;
12323:
12324: l_parent_struc_ver_id PA_PROJ_ELEMENT_VERSIONS.PARENT_STRUCTURE_VERSION_ID%TYPE;
12317: l_pevsh_rvn PA_PROJ_ELEM_VER_SCHEDULE.RECORD_VERSION_NUMBER%TYPE;
12318: l_pevsh_rowid VARCHAR2(255);
12319:
12320: l_task_version_id PA_PROJ_ELEMENT_VERSIONS.ELEMENT_VERSION_ID%TYPE;
12321: l_task_rvn PA_PROJ_ELEMENT_VERSIONS.RECORD_VERSION_NUMBER%TYPE;
12322: l_wp_attr_rvn PA_PROJ_WORKPLAN_ATTR.RECORD_VERSION_NUMBER%TYPE;
12323:
12324: l_parent_struc_ver_id PA_PROJ_ELEMENT_VERSIONS.PARENT_STRUCTURE_VERSION_ID%TYPE;
12325:
12320: l_task_version_id PA_PROJ_ELEMENT_VERSIONS.ELEMENT_VERSION_ID%TYPE;
12321: l_task_rvn PA_PROJ_ELEMENT_VERSIONS.RECORD_VERSION_NUMBER%TYPE;
12322: l_wp_attr_rvn PA_PROJ_WORKPLAN_ATTR.RECORD_VERSION_NUMBER%TYPE;
12323:
12324: l_parent_struc_ver_id PA_PROJ_ELEMENT_VERSIONS.PARENT_STRUCTURE_VERSION_ID%TYPE;
12325:
12326: BEGIN
12327: IF (p_debug_mode = 'Y') THEN
12328: pa_debug.debug('PA_PROJECT_STRUCTURE_PVT1.DELETE_STRUC_VER_WO_VAL begin');
12368: --Get record version number for task, as it will change everytime
12369: --a task is deleted.
12370: select record_version_number, parent_structure_version_id
12371: into l_task_rvn, l_parent_struc_ver_id
12372: from pa_proj_element_versions
12373: where element_version_id = l_task_version_id;
12374:
12375:
12376: PA_TASK_PVT1.DELETE_TASK_VER_WO_VAL(p_commit => 'N',
12638: CURSOR get_struct_ver_info IS
12639: select a.name, a.version_number, c.scheduled_start_date,
12640: c.scheduled_finish_date, b.project_id
12641: from pa_proj_elem_ver_structure a,
12642: pa_proj_element_versions b,
12643: pa_proj_elem_ver_schedule c
12644: where b.element_version_id = p_structure_version_id
12645: and b.project_id = a.project_id
12646: and b.proj_element_id = a.proj_element_id
13070:
13071: CURSOR c_get_task_ver IS
13072: SELECT element_version_id
13073: , wbs_level
13074: FROM pa_proj_element_versions
13075: WHERE project_id = p_project_id
13076: AND parent_structure_version_id = p_structure_version_id
13077: AND object_type = 'PA_TASKS';
13078:
13078:
13079: CURSOR check_progress_allowed(c_element_version_id NUMBER) IS
13080: SELECT ptt.prog_entry_enable_flag
13081: FROM pa_task_types ptt
13082: , pa_proj_element_versions ppev
13083: , pa_proj_elements ppe
13084: WHERE ppev.element_version_id = c_element_version_id
13085: AND ppev.proj_element_id = ppe.proj_element_id
13086: AND ptt.object_type ='PA_TASKS' /* bug 3279978 FP M Enhancement */
13097: CURSOR get_summed_duration(c_parent_element_version_id NUMBER) IS
13098: SELECT sum(ppevs.duration)
13099: FROM pa_proj_elem_ver_schedule ppevs
13100: , pa_object_relationships por
13101: , pa_proj_element_versions ppev
13102: , pa_proj_elements ppe
13103: , pa_task_types ptt
13104: WHERE por.object_id_from1 = c_parent_element_version_id
13105: AND por.object_type_to = 'PA_TASKS'
13273: ,x_msg_count OUT NOCOPY NUMBER --File.Sql.39 bug 4440895
13274: ,x_msg_data OUT NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
13275: ,x_return_status OUT NOCOPY VARCHAR2 ) --File.Sql.39 bug 4440895
13276: IS
13277: l_new_struct_ver_id PA_PROJ_ELEMENT_VERSIONS.ELEMENT_VERSION_ID%TYPE;
13278: -- added for Bug Fix: 4537865
13279: l_tmp_struct_ver_id PA_PROJ_ELEMENT_VERSIONS.ELEMENT_VERSION_ID%TYPE;
13280: -- added for Bug Fix: 4537865
13281: l_return_status VARCHAR2(1);
13275: ,x_return_status OUT NOCOPY VARCHAR2 ) --File.Sql.39 bug 4440895
13276: IS
13277: l_new_struct_ver_id PA_PROJ_ELEMENT_VERSIONS.ELEMENT_VERSION_ID%TYPE;
13278: -- added for Bug Fix: 4537865
13279: l_tmp_struct_ver_id PA_PROJ_ELEMENT_VERSIONS.ELEMENT_VERSION_ID%TYPE;
13280: -- added for Bug Fix: 4537865
13281: l_return_status VARCHAR2(1);
13282: l_msg_count NUMBER;
13283: l_msg_data VARCHAR2(250);
13287:
13288: CURSOR l_get_structure_ver_csr(c_structure_version_id NUMBER)
13289: IS
13290: SELECT *
13291: FROM PA_PROJ_ELEMENT_VERSIONS
13292: WHERE element_version_id = c_structure_version_id;
13293:
13294: l_structure_ver_rec l_get_structure_ver_csr%ROWTYPE;
13295: l_structure_ver_to_rec l_get_structure_ver_csr%ROWTYPE;
13297: CURSOR l_get_structure_ver_attr_csr(c_structure_version_id NUMBER)
13298: IS
13299: SELECT a.*
13300: FROM PA_PROJ_ELEM_VER_STRUCTURE a,
13301: PA_PROJ_ELEMENT_VERSIONS b
13302: WHERE b.element_version_id = c_structure_version_id
13303: AND b.project_id = a.project_id
13304: AND b.element_version_id = a.project_id;
13305:
13311: CURSOR l_get_ver_schedule_attr_csr(c_element_version_id NUMBER)
13312: IS
13313: SELECT a.*
13314: FROM PA_PROJ_ELEM_VER_SCHEDULE a,
13315: PA_PROJ_ELEMENT_VERSIONS b
13316: WHERE b.element_version_id = c_element_version_id
13317: AND b.project_id = a.project_id
13318: AND b.element_version_id = a.element_version_id;
13319:
13326: CURSOR l_get_structure_type_csr(c_structure_version_id NUMBER)
13327: IS
13328: SELECT pst.structure_type_class_code
13329: FROM PA_STRUCTURE_TYPES pst,
13330: PA_PROJ_ELEMENT_VERSIONS ppev,
13331: PA_PROJ_STRUCTURE_TYPES ppst
13332: WHERE ppev.element_version_id = c_structure_version_id
13333: AND ppev.proj_element_id = ppst.proj_element_id
13334: AND ppst.structure_type_id = pst.structure_type_id;
13337:
13338: CURSOR l_check_working_versions_csr(c_structure_version_id NUMBER)
13339: IS
13340: SELECT 'Y'
13341: FROM PA_PROJ_ELEMENT_VERSIONS ppev
13342: WHERE ppev.element_version_id = c_structure_version_id
13343: AND EXISTS
13344: (SELECT 'Y'
13345: FROM PA_PROJ_ELEMENT_VERSIONS ppev2,
13341: FROM PA_PROJ_ELEMENT_VERSIONS ppev
13342: WHERE ppev.element_version_id = c_structure_version_id
13343: AND EXISTS
13344: (SELECT 'Y'
13345: FROM PA_PROJ_ELEMENT_VERSIONS ppev2,
13346: PA_PROJ_ELEM_VER_STRUCTURE ppevs
13347: WHERE ppev2.proj_element_id = ppev.proj_element_id
13348: AND ppev2.project_id = ppev.project_id
13349: AND ppevs.project_id = ppev2.project_id
13364: l_user_id number;
13365: l_login_id number;
13366:
13367: CURSOR cur_elem_ver_seq IS
13368: SELECT pa_proj_element_versions_s.nextval
13369: FROM sys.dual;
13370:
13371: l_wp_struc VARCHAR2(1);
13372: l_fin_struc VARCHAR2(1);
13401: l_tmp_struct_ver_id := l_new_struct_ver_id ;
13402:
13403: -- End 4657794
13404:
13405: PA_PROJ_ELEMENT_VERSIONS_PKG.INSERT_ROW(
13406: X_ROW_ID => l_rowid
13407: --,X_ELEMENT_VERSION_ID => l_new_struct_ver_id * commented for Bug Fix: 453786
13408: ,X_ELEMENT_VERSION_ID => l_tmp_struct_ver_id -- added for bug Fix: 4537865
13409: ,X_PROJ_ELEMENT_ID => l_structure_ver_rec.proj_element_id
13625:
13626: l_user_id := FND_GLOBAl.user_id;
13627: l_login_id := FND_GLOBAl.login_id;
13628:
13629: INSERT INTO pa_proj_element_versions(
13630: ELEMENT_VERSION_ID
13631: ,PROJ_ELEMENT_ID
13632: ,OBJECT_TYPE
13633: ,PROJECT_ID
13662: ,source_object_id
13663: ,source_object_type
13664: )
13665: SELECT
13666: pa_proj_element_versions_s.nextval
13667: ,ppev.proj_element_id
13668: ,ppev.object_type
13669: ,l_project_id
13670: ,l_new_struct_ver_id
13696: ,ppev.FINANCIAL_TASK_FLAG
13697: ,ppev.element_version_id
13698: ,l_project_id
13699: ,'PA_PROJECTS'
13700: FROM ( SELECT ppev2.* from pa_proj_element_versions ppev2
13701: ,pa_proj_elements ppe --bug 4573340
13702: WHERE -- bug#3094283 ppev2.project_id = l_project_id
13703: ppev2.parent_structure_version_id = p_structure_version_id
13704: --bug 4573340
13750: start with object_id_from1 = p_structure_version_id
13751: and RELATIONSHIP_TYPE = 'S' /* Bug 2881667 - Added this condition */
13752: connect by object_id_from1 = prior object_id_to1
13753: and RELATIONSHIP_TYPE = 'S' ) pobj, /* Bug 2881667 - Added this condition */
13754: pa_proj_element_versions ppev1,
13755: pa_proj_element_versions ppev2
13756: WHERE
13757: --bug#3094283 ppev1.project_id = l_project_id
13758: ppev1.attribute15 = pobj.object_id_from1
13751: and RELATIONSHIP_TYPE = 'S' /* Bug 2881667 - Added this condition */
13752: connect by object_id_from1 = prior object_id_to1
13753: and RELATIONSHIP_TYPE = 'S' ) pobj, /* Bug 2881667 - Added this condition */
13754: pa_proj_element_versions ppev1,
13755: pa_proj_element_versions ppev2
13756: WHERE
13757: --bug#3094283 ppev1.project_id = l_project_id
13758: ppev1.attribute15 = pobj.object_id_from1
13759: --bug#3094283 AND ppev2.project_id = l_project_id
13882: ,ppevs.EXT_REMAIN_DURATION
13883: ,ppevs.EXT_SCH_DURATION
13884: ,ppevs.DEF_SCH_TOOL_TSK_TYPE_CODE -- Fix For Bug # 4321287.
13885: FROM pa_proj_elem_ver_schedule ppevs,
13886: pa_proj_element_versions ppev1
13887: where ppev1.attribute15 = ppevs.element_version_id
13888: and ppevs.project_id = l_project_id
13889: and ppev1.project_id = l_project_id
13890: and ppev1.parent_structure_version_id = l_new_struct_ver_id
13902: New_Versions_Tab SYSTEM.pa_num_tbl_type := SYSTEM.pa_num_tbl_type(); /* Venky */
13903: Begin
13904: Select Element_Version_ID, attribute15 BULK COLLECT
13905: INTO New_Versions_Tab, Old_Versions_Tab
13906: From PA_Proj_Element_Versions
13907: Where Project_ID = l_project_id
13908: AND parent_structure_version_id = l_new_struct_ver_id;
13909:
13910: PA_Relationship_Pvt.Copy_Intra_Dependency (
14044: -- till here by skannoji
14045:
14046: -----------------------------------------FP_M Changes : End
14047:
14048: UPDATE pa_proj_element_versions ppevs1
14049: SET attribute15 = ( select attribute15 from pa_proj_element_versions ppevs2
14050: where ppevs2.project_id = l_project_id
14051: and parent_structure_version_id = p_structure_version_id
14052: and ppevs2.element_version_id = ppevs1.attribute15
14045:
14046: -----------------------------------------FP_M Changes : End
14047:
14048: UPDATE pa_proj_element_versions ppevs1
14049: SET attribute15 = ( select attribute15 from pa_proj_element_versions ppevs2
14050: where ppevs2.project_id = l_project_id
14051: and parent_structure_version_id = p_structure_version_id
14052: and ppevs2.element_version_id = ppevs1.attribute15
14053: )
14105: l_return_status VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
14106:
14107: --Bug No 3634334
14108: --Commented the following query for performance reason and rewritten the same.
14109: --Getting the project_id from pa_proj_element_versions table instead of getting
14110: --it from pa_proj_elem_ver_structure table, in this optimizer will be using the
14111: --unique index on element_version_id and functionally the process is fetching
14112: --project_id
14113: /* CURSOR get_proj_id(cp_structure_version_id NUMBER) IS
14116: WHERE element_version_id = cp_structure_version_id;*/
14117:
14118: CURSOR get_proj_id(cp_structure_version_id NUMBER) IS
14119: SELECT project_id
14120: FROM pa_proj_element_versions
14121: WHERE element_version_id = cp_structure_version_id;
14122: l_proj_id NUMBER;
14123: BEGIN
14124:
14296: and c.structure_type_class_code = l_wp_structure_code;
14297:
14298: cursor sel_other_structure_ver(c_keep_struc_ver_id NUMBER) IS
14299: select b.element_version_id, b.record_version_number
14300: from pa_proj_element_versions a,
14301: pa_proj_element_versions b
14302: where a.element_version_id = c_keep_struc_ver_id
14303: and a.project_id = b.project_id
14304: and a.proj_element_id = b.proj_element_id
14297:
14298: cursor sel_other_structure_ver(c_keep_struc_ver_id NUMBER) IS
14299: select b.element_version_id, b.record_version_number
14300: from pa_proj_element_versions a,
14301: pa_proj_element_versions b
14302: where a.element_version_id = c_keep_struc_ver_id
14303: and a.project_id = b.project_id
14304: and a.proj_element_id = b.proj_element_id
14305: and b.element_version_id <> c_keep_struc_ver_id
14306: and b.object_type = 'PA_STRUCTURES';
14307:
14308: cursor sel_all_wp_structure_ver(c_struc_id NUMBER) IS
14309: select a.element_version_id, a.record_version_number
14310: from pa_proj_element_versions a,
14311: pa_proj_elements b
14312: where a.proj_element_id = b.proj_element_id
14313: and a.project_id = b.project_id
14314: and b.proj_element_id = c_struc_id;
14353: where structure_type_class_code = 'WORKPLAN';
14354:
14355: cursor sel_struc_ver(c_structure_id NUMBER) IS
14356: select element_version_id
14357: from pa_proj_element_versions
14358: where project_id = p_project_id
14359: and proj_element_id = c_structure_id
14360: and object_type = 'PA_STRUCTURES';
14361:
14361:
14362: --hsiu: commented for performance
14363: -- cursor sel_struc_and_task_vers(c_struc_ver_id NUMBER) IS
14364: -- select object_type, proj_element_id, element_version_id
14365: -- from pa_proj_element_versions
14366: -- where parent_structure_version_id = c_struc_ver_id;
14367: cursor sel_struc_and_task_vers(c_struc_ver_id NUMBER) IS
14368: select pev.object_type, pev.proj_element_id, pev.element_version_id
14369: from pa_proj_element_versions pev, pa_object_relationships rel
14365: -- from pa_proj_element_versions
14366: -- where parent_structure_version_id = c_struc_ver_id;
14367: cursor sel_struc_and_task_vers(c_struc_ver_id NUMBER) IS
14368: select pev.object_type, pev.proj_element_id, pev.element_version_id
14369: from pa_proj_element_versions pev, pa_object_relationships rel
14370: where pev.parent_structure_version_id = c_struc_ver_id
14371: and rel.object_id_to1 = pev.element_version_id
14372: and rel.relationship_type = 'S'
14373: and NOT EXISTS (
14390: where project_id = p_project_id;
14391:
14392: CURSOR get_top_tasks(c_structure_version_id NUMBER) IS
14393: select v.element_version_id
14394: from pa_proj_element_versions v,
14395: pa_object_relationships r
14396: where v.element_version_id = r.object_id_to1
14397: and r.object_id_from1 = c_structure_version_id
14398: and r.object_type_from = 'PA_STRUCTURES';
14462: , por1.record_version_number rec_ver_number
14463: from pa_object_relationships por1
14464: , pa_object_relationships por2
14465: , pa_projects_all ppa
14466: , pa_proj_element_versions ppev
14467: , pa_proj_elem_ver_structure ppevs
14468: where por1.object_id_to2 = c_project_id
14469: and por1.relationship_type in ('LW', 'LF')
14470: and por1.object_id_from1 = por2.object_id_to1
14490: , por1.record_version_number rec_ver_number
14491: from pa_object_relationships por1
14492: , pa_object_relationships por2
14493: , pa_projects_all ppa
14494: , pa_proj_element_versions ppev
14495: , pa_proj_elem_ver_structure ppevs
14496: where por1.object_id_from2 = c_project_id
14497: and por1.relationship_type in ('LW', 'LF')
14498: and por1.object_id_from1 = por2.object_id_to1
15487: FND_GLOBAL.LOGIN_ID,
15488: PPEV.project_id,
15489: 'PA_PROJECTS'
15490: FROM PA_TASKS PT,
15491: PA_PROJ_ELEMENT_VERSIONS PPEV
15492: WHERE
15493: PPEV.parent_structure_version_id = l_structure_version_id
15494: AND PPEV.proj_element_id = PT.task_id (+);
15495:
16025: IF (p_sharing_option_code = 'SHARE_PARTIAL') THEN
16026: NULL;
16027: ELSIF (p_sharing_option_code = 'SHARE_FULL') THEN
16028: --set financial task flag to Y for all tasks
16029: update pa_proj_element_versions
16030: set financial_task_flag = 'Y'
16031: where parent_structure_version_id = l_structure_version_id
16032: and object_type = 'PA_TASKS'
16033: and proj_element_id NOT IN
16420: delete from pa_proj_elem_ver_schedule
16421: where project_id =p_project_id --Bug No 3634334
16422: and element_version_id IN (
16423: select element_version_id
16424: from pa_proj_element_versions
16425: where project_id = p_project_id --Bug No 3634334
16426: and parent_structure_version_id = l_keep_structure_ver_id
16427: and object_type IN ('PA_TASKS', 'PA_STRUCTURES'));
16428:
16430: --Bug No 3634334 Commented for performance tuning and rewritten the query.
16431: /* delete from pa_object_relationships rel
16432: where rel.relationship_type IN ('D','S')
16433: and EXISTS (
16434: select 1 from pa_proj_element_versions
16435: where (rel.object_id_from1 = element_version_id OR
16436: rel.object_id_to1 = element_version_id ) and
16437: parent_structure_version_id = l_keep_structure_ver_id and
16438: financial_task_flag = 'N'); */
16442: delete from pa_object_relationships rel
16443: where OBJECT_RELATIONSHIP_ID IN (
16444: select OBJECT_RELATIONSHIP_ID
16445: from pa_object_relationships rel,
16446: pa_proj_element_versions
16447: where rel.relationship_type IN ('D','S')
16448: and object_type_to = 'PA_TASKS'
16449: and rel.object_id_to1 = element_version_id
16450: and parent_structure_version_id = l_keep_structure_ver_id
16451: and financial_task_flag = 'N'
16452: UNION
16453: select OBJECT_RELATIONSHIP_ID
16454: from pa_object_relationships rel,
16455: pa_proj_element_versions
16456: where rel.relationship_type IN ('D','S')
16457: and object_type_from = 'PA_TASKS'
16458: and rel.object_id_from1 = element_version_id
16459: and parent_structure_version_id = l_keep_structure_ver_id
16473: --delete elements
16474: delete from pa_proj_elements ppe
16475: where proj_element_ID in (
16476: select proj_element_id
16477: from pa_proj_element_versions
16478: where parent_structure_version_id = l_keep_structure_ver_id
16479: and object_type = 'PA_TASKS'
16480: and financial_task_flag = 'N');
16481:
16479: and object_type = 'PA_TASKS'
16480: and financial_task_flag = 'N');
16481:
16482: --delete element versions
16483: Delete from pa_proj_element_versions
16484: where parent_structure_version_id = l_keep_structure_ver_id
16485: and object_type = 'PA_TASKS'
16486: and financial_task_flag = 'N';
16487:
16494:
16495: /* Bug 3906015
16496: Moved this code to above (i.e) before deleting the elements (Before deleting task)
16497: This is necessary because : delete_dlv_associations API has been modified
16498: in such a way that it retrives the tasks from pa_proj_element_versions table for the passed project_id
16499: and then for those values ,it performs deliverable related validations for Workplan Task Deletion
16500:
16501: If this call,is after delete statement on pa_proj_element_versions tables,the logic written
16502: in delete_dlv_associations APi will fail .Hence moved the code up.
16497: This is necessary because : delete_dlv_associations API has been modified
16498: in such a way that it retrives the tasks from pa_proj_element_versions table for the passed project_id
16499: and then for those values ,it performs deliverable related validations for Workplan Task Deletion
16500:
16501: If this call,is after delete statement on pa_proj_element_versions tables,the logic written
16502: in delete_dlv_associations APi will fail .Hence moved the code up.
16503:
16504: -- NYU
16505: -- delete deliverable associations
16721: l_keep_structure_ver_id := l_structure_version_id;
16722: END IF;
16723: CLOSE sel_latest_pub_ver;
16724:
16725: update pa_proj_element_versions
16726: set financial_task_flag = 'Y'
16727: where parent_structure_version_id = l_structure_version_id
16728: and object_type = 'PA_TASKS'
16729: and proj_element_id NOT IN
16955: delete from pa_proj_elem_ver_schedule
16956: where project_id =p_project_id --Bug No 3634334
16957: and element_version_id IN (
16958: select element_version_id
16959: from pa_proj_element_versions
16960: where project_id =p_project_id --Bug No 3634334
16961: and parent_structure_version_id = l_keep_structure_ver_id
16962: and object_type IN ('PA_TASKS', 'PA_STRUCTURES'));
16963:
17476: FND_GLOBAL.LOGIN_ID,
17477: PPEV.project_id,
17478: 'PA_PROJECTS'
17479: FROM PA_TASKS PT,
17480: PA_PROJ_ELEMENT_VERSIONS PPEV
17481: WHERE
17482: PPEV.parent_structure_version_id = l_structure_version_id
17483: AND PPEV.proj_element_id = PT.task_id (+);
17484:
17868: FND_GLOBAL.LOGIN_ID,
17869: PPEV.project_id,
17870: 'PA_PROJECTS'
17871: FROM PA_TASKS PT,
17872: PA_PROJ_ELEMENT_VERSIONS PPEV
17873: WHERE
17874: PPEV.parent_structure_version_id = l_structure_version_id
17875: AND PPEV.proj_element_id = PT.task_id (+);
17876: