11: ,p_Status Out NOCOPY Varchar2
12: ,p_Object_Version_Number Out NOCOPY Number) Is
13:
14: l_Hierarchy_Version_Id Per_gen_Hierarchy_Versions.Hierarchy_Version_Id%TYPE;
15: l_Hierarchy_Node_Id Per_gen_Hierarchy_Nodes.Hierarchy_Node_Id%TYPE;
16: l_Parent_Hierarchy_Node_Id Per_gen_Hierarchy_Nodes.Parent_Hierarchy_Node_Id%TYPE;
17: l_Node_type Per_gen_Hierarchy_Nodes.Node_Type%TYPE;
18: l_seq Per_gen_Hierarchy_Nodes.Seq%TYPE;
19: l_proc Varchar2(100) := 'Pqh_De_Operation.Insert_Rec';
12: ,p_Object_Version_Number Out NOCOPY Number) Is
13:
14: l_Hierarchy_Version_Id Per_gen_Hierarchy_Versions.Hierarchy_Version_Id%TYPE;
15: l_Hierarchy_Node_Id Per_gen_Hierarchy_Nodes.Hierarchy_Node_Id%TYPE;
16: l_Parent_Hierarchy_Node_Id Per_gen_Hierarchy_Nodes.Parent_Hierarchy_Node_Id%TYPE;
17: l_Node_type Per_gen_Hierarchy_Nodes.Node_Type%TYPE;
18: l_seq Per_gen_Hierarchy_Nodes.Seq%TYPE;
19: l_proc Varchar2(100) := 'Pqh_De_Operation.Insert_Rec';
20:
13:
14: l_Hierarchy_Version_Id Per_gen_Hierarchy_Versions.Hierarchy_Version_Id%TYPE;
15: l_Hierarchy_Node_Id Per_gen_Hierarchy_Nodes.Hierarchy_Node_Id%TYPE;
16: l_Parent_Hierarchy_Node_Id Per_gen_Hierarchy_Nodes.Parent_Hierarchy_Node_Id%TYPE;
17: l_Node_type Per_gen_Hierarchy_Nodes.Node_Type%TYPE;
18: l_seq Per_gen_Hierarchy_Nodes.Seq%TYPE;
19: l_proc Varchar2(100) := 'Pqh_De_Operation.Insert_Rec';
20:
21: Cursor Entity is
14: l_Hierarchy_Version_Id Per_gen_Hierarchy_Versions.Hierarchy_Version_Id%TYPE;
15: l_Hierarchy_Node_Id Per_gen_Hierarchy_Nodes.Hierarchy_Node_Id%TYPE;
16: l_Parent_Hierarchy_Node_Id Per_gen_Hierarchy_Nodes.Parent_Hierarchy_Node_Id%TYPE;
17: l_Node_type Per_gen_Hierarchy_Nodes.Node_Type%TYPE;
18: l_seq Per_gen_Hierarchy_Nodes.Seq%TYPE;
19: l_proc Varchar2(100) := 'Pqh_De_Operation.Insert_Rec';
20:
21: Cursor Entity is
22: Select Hierarchy_Node_id
19: l_proc Varchar2(100) := 'Pqh_De_Operation.Insert_Rec';
20:
21: Cursor Entity is
22: Select Hierarchy_Node_id
23: from Per_gen_Hierarchy_Nodes a, Pqh_de_operations b
24: Where Parent_hierarchy_Node_id = p_Operation_Group
25: and Node_type = 'OPR_OPTS'
26: and Entity_Id = b.Operation_Number
27: and b.Operation_Id = P_Parent_Entity_Id;
27: and b.Operation_Id = P_Parent_Entity_Id;
28:
29: Cursor Versions is
30: Select Hierarchy_version_Id
31: from Per_gen_hierarchy_Nodes
32: where Hierarchy_Node_Id = p_Operation_Group;
33:
34: Begin
35: p_Status := 'Y';
54: End If;
55:
56: Select Nvl(Max(Seq),0) + 1
57: Into l_seq
58: From Per_gen_Hierarchy_Nodes
59: Where Hierarchy_Version_Id = l_Hierarchy_Version_Id
60: and Node_type = l_Node_Type;
61:
62: Select Per_Gen_Hierarchy_Nodes_s.nextval
58: From Per_gen_Hierarchy_Nodes
59: Where Hierarchy_Version_Id = l_Hierarchy_Version_Id
60: and Node_type = l_Node_Type;
61:
62: Select Per_Gen_Hierarchy_Nodes_s.nextval
63: into l_Hierarchy_Node_Id from Dual;
64:
65: Insert into
66: Per_Gen_Hierarchy_Nodes
62: Select Per_Gen_Hierarchy_Nodes_s.nextval
63: into l_Hierarchy_Node_Id from Dual;
64:
65: Insert into
66: Per_Gen_Hierarchy_Nodes
67: (HIERARCHY_NODE_ID, BUSINESS_GROUP_ID, ENTITY_ID, HIERARCHY_VERSION_ID,
68: NODE_TYPE, PARENT_HIERARCHY_NODE_ID, SEQ, Object_Version_Number)
69: Values
70: (l_Hierarchy_Node_Id, p_BUSINESS_GROUP_ID, p_ENTITY_ID,l_Hierarchy_version_Id,
72:
73: Exception
74: when app_exception.application_exception then
75: if hr_multi_message.exception_add
76: (p_associated_column1 => 'PER_GEN_HIERARCHY_NODES.HIERARCHY_VERSION_ID') then
77: hr_utility.set_location(' Leaving:'||l_proc,60);
78: raise;
79: end if;
80: hr_utility.set_location(' Leaving:'||l_proc,70);
87: ,p_Trn_Type IN Varchar2
88: ,p_Operation_Job_Number IN Varchar2
89: ,p_Operation_Job_Id IN Number) is
90:
91: l_Hierarchy_Node_Id Per_Gen_Hierarchy_nodes.Hierarchy_node_Id%TYPE;
92: l_desc Pqh_De_Operations.Description%TYPE;
93: l_Job_Id Pqh_de_Tatigkeit_details.TATIGKEIT_DETAIL_ID%TYPE;
94: l_Wrkplc_Vldtn_Op_Id Pqh_de_Wrkplc_Vldtn_ops.Wrkplc_Vldtn_Op_Id%TYPE;
95: l_WRKPLC_VLDTN_JObFTR_ID Pqh_de_Wrkplc_Vldtn_JobFtrs.WRKPLC_VLDTN_JObFTR_ID%TYPE;
98:
99:
100: /* Cursor Operations is
101: Select Decode(Node_Type,'OPR_OPTS','O','OPR_JOB_DTLS','J','OPR_JOB_FTR','F'), Entity_Id
102: From Per_Gen_Hierarchy_Nodes
103: Where Hierarchy_Version_Id = l_Hierarchy_version_Id
104: Start With Hierarchy_node_id = p_Hierarchy_Node_id
105: Connect By Parent_Hierarchy_Node_Id = Prior Hierarchy_Node_Id; */
106:
115: Where TATIGKEIT_NUMBER = p_Job_Number;
116:
117: Cursor Operations(p_Hierarchy_Node_Id In Number) is
118: Select Entity_Id, Node_Type, Hierarchy_Node_Id
119: from Per_Gen_Hierarchy_Nodes
120: Where Parent_Hierarchy_Node_id = p_Hierarchy_Node_Id;
121:
122:
123: Cursor Jobs(p_Hierarchy_Node_Id In Number) is
121:
122:
123: Cursor Jobs(p_Hierarchy_Node_Id In Number) is
124: Select Entity_Id, Node_Type, Hierarchy_Node_Id
125: from Per_Gen_Hierarchy_Nodes
126: Where Parent_Hierarchy_Node_id = p_Hierarchy_Node_Id;
127:
128: Begin
129: If p_Trn_TYpe = 'O' Then
236: (p_WRKPLC_VLDTN_VER_ID IN Number
237: ,p_Business_group_Id IN Number
238: ,p_Effective_Date IN Date) is
239:
240: l_Hierarchy_Node_Id Per_gen_Hierarchy_Nodes.Hierarchy_Node_Id%TYPE;
241: l_JHierarchy_Node_Id Per_gen_Hierarchy_Nodes.Hierarchy_Node_Id%TYPE;
242: l_Hierarchy_Version_Id Per_Gen_Hierarchy_Nodes.Hierarchy_Version_Id%TYPE;
243: l_Parent_Hierarchy_Node_Id Per_Gen_Hierarchy_nodes.Parent_Hierarchy_Node_Id%TYPE;
244: l_Node_type Per_Gen_Hierarchy_nodes.Node_Type%TYPE;
237: ,p_Business_group_Id IN Number
238: ,p_Effective_Date IN Date) is
239:
240: l_Hierarchy_Node_Id Per_gen_Hierarchy_Nodes.Hierarchy_Node_Id%TYPE;
241: l_JHierarchy_Node_Id Per_gen_Hierarchy_Nodes.Hierarchy_Node_Id%TYPE;
242: l_Hierarchy_Version_Id Per_Gen_Hierarchy_Nodes.Hierarchy_Version_Id%TYPE;
243: l_Parent_Hierarchy_Node_Id Per_Gen_Hierarchy_nodes.Parent_Hierarchy_Node_Id%TYPE;
244: l_Node_type Per_Gen_Hierarchy_nodes.Node_Type%TYPE;
245: l_oprHierarchy_Node_Id Per_gen_Hierarchy_Nodes.Hierarchy_Node_Id%TYPE;
238: ,p_Effective_Date IN Date) is
239:
240: l_Hierarchy_Node_Id Per_gen_Hierarchy_Nodes.Hierarchy_Node_Id%TYPE;
241: l_JHierarchy_Node_Id Per_gen_Hierarchy_Nodes.Hierarchy_Node_Id%TYPE;
242: l_Hierarchy_Version_Id Per_Gen_Hierarchy_Nodes.Hierarchy_Version_Id%TYPE;
243: l_Parent_Hierarchy_Node_Id Per_Gen_Hierarchy_nodes.Parent_Hierarchy_Node_Id%TYPE;
244: l_Node_type Per_Gen_Hierarchy_nodes.Node_Type%TYPE;
245: l_oprHierarchy_Node_Id Per_gen_Hierarchy_Nodes.Hierarchy_Node_Id%TYPE;
246: l_oprHierarchy_Version_Id Per_Gen_Hierarchy_Nodes.Hierarchy_Version_Id%TYPE;
239:
240: l_Hierarchy_Node_Id Per_gen_Hierarchy_Nodes.Hierarchy_Node_Id%TYPE;
241: l_JHierarchy_Node_Id Per_gen_Hierarchy_Nodes.Hierarchy_Node_Id%TYPE;
242: l_Hierarchy_Version_Id Per_Gen_Hierarchy_Nodes.Hierarchy_Version_Id%TYPE;
243: l_Parent_Hierarchy_Node_Id Per_Gen_Hierarchy_nodes.Parent_Hierarchy_Node_Id%TYPE;
244: l_Node_type Per_Gen_Hierarchy_nodes.Node_Type%TYPE;
245: l_oprHierarchy_Node_Id Per_gen_Hierarchy_Nodes.Hierarchy_Node_Id%TYPE;
246: l_oprHierarchy_Version_Id Per_Gen_Hierarchy_Nodes.Hierarchy_Version_Id%TYPE;
247: l_oprParent_Hierarchy_Node_Id Per_Gen_Hierarchy_nodes.Parent_Hierarchy_Node_Id%TYPE;
240: l_Hierarchy_Node_Id Per_gen_Hierarchy_Nodes.Hierarchy_Node_Id%TYPE;
241: l_JHierarchy_Node_Id Per_gen_Hierarchy_Nodes.Hierarchy_Node_Id%TYPE;
242: l_Hierarchy_Version_Id Per_Gen_Hierarchy_Nodes.Hierarchy_Version_Id%TYPE;
243: l_Parent_Hierarchy_Node_Id Per_Gen_Hierarchy_nodes.Parent_Hierarchy_Node_Id%TYPE;
244: l_Node_type Per_Gen_Hierarchy_nodes.Node_Type%TYPE;
245: l_oprHierarchy_Node_Id Per_gen_Hierarchy_Nodes.Hierarchy_Node_Id%TYPE;
246: l_oprHierarchy_Version_Id Per_Gen_Hierarchy_Nodes.Hierarchy_Version_Id%TYPE;
247: l_oprParent_Hierarchy_Node_Id Per_Gen_Hierarchy_nodes.Parent_Hierarchy_Node_Id%TYPE;
248: l_oprNode_type Per_Gen_Hierarchy_nodes.Node_Type%TYPE;
241: l_JHierarchy_Node_Id Per_gen_Hierarchy_Nodes.Hierarchy_Node_Id%TYPE;
242: l_Hierarchy_Version_Id Per_Gen_Hierarchy_Nodes.Hierarchy_Version_Id%TYPE;
243: l_Parent_Hierarchy_Node_Id Per_Gen_Hierarchy_nodes.Parent_Hierarchy_Node_Id%TYPE;
244: l_Node_type Per_Gen_Hierarchy_nodes.Node_Type%TYPE;
245: l_oprHierarchy_Node_Id Per_gen_Hierarchy_Nodes.Hierarchy_Node_Id%TYPE;
246: l_oprHierarchy_Version_Id Per_Gen_Hierarchy_Nodes.Hierarchy_Version_Id%TYPE;
247: l_oprParent_Hierarchy_Node_Id Per_Gen_Hierarchy_nodes.Parent_Hierarchy_Node_Id%TYPE;
248: l_oprNode_type Per_Gen_Hierarchy_nodes.Node_Type%TYPE;
249: l_seq Per_Gen_Hierarchy_nodes.Seq%TYPE;
242: l_Hierarchy_Version_Id Per_Gen_Hierarchy_Nodes.Hierarchy_Version_Id%TYPE;
243: l_Parent_Hierarchy_Node_Id Per_Gen_Hierarchy_nodes.Parent_Hierarchy_Node_Id%TYPE;
244: l_Node_type Per_Gen_Hierarchy_nodes.Node_Type%TYPE;
245: l_oprHierarchy_Node_Id Per_gen_Hierarchy_Nodes.Hierarchy_Node_Id%TYPE;
246: l_oprHierarchy_Version_Id Per_Gen_Hierarchy_Nodes.Hierarchy_Version_Id%TYPE;
247: l_oprParent_Hierarchy_Node_Id Per_Gen_Hierarchy_nodes.Parent_Hierarchy_Node_Id%TYPE;
248: l_oprNode_type Per_Gen_Hierarchy_nodes.Node_Type%TYPE;
249: l_seq Per_Gen_Hierarchy_nodes.Seq%TYPE;
250:
243: l_Parent_Hierarchy_Node_Id Per_Gen_Hierarchy_nodes.Parent_Hierarchy_Node_Id%TYPE;
244: l_Node_type Per_Gen_Hierarchy_nodes.Node_Type%TYPE;
245: l_oprHierarchy_Node_Id Per_gen_Hierarchy_Nodes.Hierarchy_Node_Id%TYPE;
246: l_oprHierarchy_Version_Id Per_Gen_Hierarchy_Nodes.Hierarchy_Version_Id%TYPE;
247: l_oprParent_Hierarchy_Node_Id Per_Gen_Hierarchy_nodes.Parent_Hierarchy_Node_Id%TYPE;
248: l_oprNode_type Per_Gen_Hierarchy_nodes.Node_Type%TYPE;
249: l_seq Per_Gen_Hierarchy_nodes.Seq%TYPE;
250:
251: Cursor Operations is
244: l_Node_type Per_Gen_Hierarchy_nodes.Node_Type%TYPE;
245: l_oprHierarchy_Node_Id Per_gen_Hierarchy_Nodes.Hierarchy_Node_Id%TYPE;
246: l_oprHierarchy_Version_Id Per_Gen_Hierarchy_Nodes.Hierarchy_Version_Id%TYPE;
247: l_oprParent_Hierarchy_Node_Id Per_Gen_Hierarchy_nodes.Parent_Hierarchy_Node_Id%TYPE;
248: l_oprNode_type Per_Gen_Hierarchy_nodes.Node_Type%TYPE;
249: l_seq Per_Gen_Hierarchy_nodes.Seq%TYPE;
250:
251: Cursor Operations is
252: Select WRKPLC_VLDTN_OP_ID, OPERATION_NUMBER, WRKPLC_OPERATION_ID
245: l_oprHierarchy_Node_Id Per_gen_Hierarchy_Nodes.Hierarchy_Node_Id%TYPE;
246: l_oprHierarchy_Version_Id Per_Gen_Hierarchy_Nodes.Hierarchy_Version_Id%TYPE;
247: l_oprParent_Hierarchy_Node_Id Per_Gen_Hierarchy_nodes.Parent_Hierarchy_Node_Id%TYPE;
248: l_oprNode_type Per_Gen_Hierarchy_nodes.Node_Type%TYPE;
249: l_seq Per_Gen_Hierarchy_nodes.Seq%TYPE;
250:
251: Cursor Operations is
252: Select WRKPLC_VLDTN_OP_ID, OPERATION_NUMBER, WRKPLC_OPERATION_ID
253: From Pqh_de_operations a, Pqh_De_Wrkplc_Vldtn_Ops b
269: and WRKPLC_VLDTN_OPR_JOB_TYPE = Type;
270:
271: Cursor Hierarchy_Data(p_Entity_Id In VARCHAR2, P_Node_Type in Varchar2) is
272: Select Hierarchy_Node_Id, a.Hierarchy_Version_Id, Parent_Hierarchy_Node_Id, Node_type
273: From Per_Gen_Hierarchy_Nodes a, Per_gen_hierarchy_Versions b
274: Where Node_Type = P_Node_Type
275: and Entity_Id = p_Entity_Id
276: and b.Hierarchy_Version_Id = a.Hierarchy_Version_Id
277: and trunc(P_effective_Date) between date_From and nvl(Date_To,trunc(P_effective_Date));
277: and trunc(P_effective_Date) between date_From and nvl(Date_To,trunc(P_effective_Date));
278:
279: cursor Seq(p_OprHierarchy_Node_Id In Number, p_Node_Type in Varchar2) Is
280: Select Nvl(Max(Seq),0) + 1
281: From Per_Gen_Hierarchy_Nodes
282: Where Node_type = p_Node_type
283: and Parent_Hierarchy_Node_id = p_OprHierarchy_Node_Id;
284:
285: Begin
307: Open Hierarchy_Data(Jobrec.TATIGKEIT_NUMBER, 'OPR_JOB_DTLS');
308: Fetch Hierarchy_Data into l_Hierarchy_Node_Id, l_Hierarchy_Version_Id, l_Parent_Hierarchy_Node_Id, l_Node_type;
309: If Hierarchy_Data%NotFound Then
310: Close Hierarchy_Data;
311: Select Per_gen_Hierarchy_Nodes_s.Nextval into l_JHierarchy_Node_Id from Dual;
312: l_Seq := Null;
313: Open Seq(l_OprParent_Hierarchy_Node_Id,'OPR_JOB_DTLS');
314: Fetch Seq into l_Seq;
315: Close Seq;
313: Open Seq(l_OprParent_Hierarchy_Node_Id,'OPR_JOB_DTLS');
314: Fetch Seq into l_Seq;
315: Close Seq;
316: Insert into
317: Per_Gen_Hierarchy_Nodes
318: (HIERARCHY_NODE_ID, BUSINESS_GROUP_ID, ENTITY_ID, HIERARCHY_VERSION_ID,
319: NODE_TYPE, PARENT_HIERARCHY_NODE_ID, SEQ, Object_Version_Number)
320: Values
321: (l_JHierarchy_Node_Id, p_BUSINESS_GROUP_ID, Jobrec.TATIGKEIT_NUMBER, l_OprHierarchy_Version_Id,
331: Open Hierarchy_Data(Jobftrrec.JOB_FEATURE_CODE, 'OPR_JOB_FTR');
332: Fetch Hierarchy_Data into l_Hierarchy_Node_Id, l_Hierarchy_Version_Id, l_Parent_Hierarchy_Node_Id, l_Node_type;
333: If Hierarchy_Data%NotFound Then
334: Close HIerarchy_data;
335: Select Per_gen_Hierarchy_Nodes_s.Nextval into l_Hierarchy_Node_Id from Dual;
336: Open Seq(l_OprParent_Hierarchy_Node_Id,'OPR_JOB_DTLS');
337: Fetch Seq into l_Seq;
338: Close Seq;
339: Insert into
336: Open Seq(l_OprParent_Hierarchy_Node_Id,'OPR_JOB_DTLS');
337: Fetch Seq into l_Seq;
338: Close Seq;
339: Insert into
340: Per_Gen_Hierarchy_Nodes
341: (HIERARCHY_NODE_ID, BUSINESS_GROUP_ID, ENTITY_ID, HIERARCHY_VERSION_ID,
342: NODE_TYPE, PARENT_HIERARCHY_NODE_ID, SEQ, Object_Version_Number)
343: Values
344: (l_Hierarchy_Node_Id, p_BUSINESS_GROUP_ID, Jobftrrec.JOB_FEATURE_CODE, l_OprHierarchy_Version_Id,
361: Open Hierarchy_Data(Jobftrrec.JOB_FEATURE_CODE, 'OPR_JOB_FTR');
362: Fetch Hierarchy_Data into l_Hierarchy_Node_Id, l_Hierarchy_Version_Id, l_Parent_Hierarchy_Node_Id, l_Node_type;
363: If Hierarchy_Data%NotFound Then
364: Close HIerarchy_data;
365: Select Per_gen_Hierarchy_Nodes_s.Nextval into l_Hierarchy_Node_Id from Dual;
366: Open Seq(l_OprParent_Hierarchy_Node_Id,'OPR_JOB_DTLS');
367: Fetch Seq into l_Seq;
368: Close Seq;
369: Insert Into
366: Open Seq(l_OprParent_Hierarchy_Node_Id,'OPR_JOB_DTLS');
367: Fetch Seq into l_Seq;
368: Close Seq;
369: Insert Into
370: Per_Gen_Hierarchy_Nodes
371: (HIERARCHY_NODE_ID, BUSINESS_GROUP_ID, ENTITY_ID, HIERARCHY_VERSION_ID,
372: NODE_TYPE, PARENT_HIERARCHY_NODE_ID, SEQ, Object_Version_Number)
373: Values
374: (l_Hierarchy_Node_Id, p_BUSINESS_GROUP_ID, Jobftrrec.JOB_FEATURE_CODE, l_OprHierarchy_Version_Id,