DBA Data[Home] [Help]

PACKAGE BODY: APPS.PRP_IBC_INT_PVT

Source


1 PACKAGE BODY PRP_IBC_INT_PVT AS
2 /* $Header: PRPVIBCB.pls 115.2 2003/10/28 22:49:24 hekkiral noship $ */
3 
4 G_PKG_NAME CONSTANT VARCHAR2(30) := 'PRP_IBC_INT_PVT';
5 
6 PROCEDURE Get_Object_Name(
7                 P_ASSOCIATION_TYPE_CODE 	IN 			VARCHAR2
8 			,P_ASSOCIATED_OBJECT_VAL1	IN 			VARCHAR2
9 			,P_ASSOCIATED_OBJECT_VAL2	IN 			VARCHAR2
10 			,P_ASSOCIATED_OBJECT_VAL3	IN 			VARCHAR2
11 			,P_ASSOCIATED_OBJECT_VAL4	IN 			VARCHAR2
12 			,P_ASSOCIATED_OBJECT_VAL5	IN 			VARCHAR2
13 			,X_OBJECT_NAME	    	   		OUT NOCOPY	VARCHAR2
14 			,X_OBJECT_CODE	        		OUT NOCOPY	VARCHAR2
15 			,X_RETURN_STATUS       		OUT NOCOPY	VARCHAR2
16 			,X_MSG_COUNT	        		OUT NOCOPY	NUMBER
17 			,X_MSG_DATA	        		OUT NOCOPY	VARCHAR2)
18 AS
19 
20 CURSOR Cur_Component_sytles(p_component_style_id NUMBER) IS
21 SELECT PCS.component_style_name,PCS.content_node_type
22 FROM PRP_COMPONENT_STYLES_VL PCS
23 WHERE PCS.component_style_id = p_component_style_id;
24 
25 CURSOR Cur_Content_item_name(p_component_style_id NUMBER,p_association_type VARCHAR2) IS
26 SELECT ICV.Content_Item_Name
27 FROM IBC_CITEM_VERSIONS_VL ICV,
28      IBC_CONTENT_ITEMS ICI,
29      IBC_ASSOCIATIONS IBA
30 WHERE IBA.ASSOCIATION_TYPE_CODE = P_ASSOCIATION_TYPE_CODE
31 AND IBA.ASSOCIATED_OBJECT_VAL1 = p_component_style_id
32 AND ICI.CONTENT_ITEM_ID = IBA.CONTENT_ITEM_ID
33 AND ICV.CITEM_VERSION_ID = ICI.LIVE_CITEM_VERSION_ID;
34 
35 CURSOR Cur_style_ctntvers(p_comp_style_ctntver_id NUMBER) IS
36 SELECT component_style_id
37 FROM prp_comp_style_ctntvers
38 WHERE comp_style_ctntver_id = p_comp_style_ctntver_id;
39 
40 CURSOR Cur_Proposals(p_proposal_id NUMBER) IS
41 SELECT Proposal_Name
42 FROM PRP_PROPOSALS
43 WHERE PROPOSAL_ID = p_proposal_id;
44 
45 CURSOR Cur_Proposal_ctntvers(p_proposal_ctntver_id NUMBER) IS
46 SELECT proposal_name
47 FROM prp_proposals pp, prp_proposal_ctntvers ppc
48 WHERE pp.proposal_id = ppc.proposal_id
49 AND ppc.PROPOSAL_CTNTVER_ID = p_proposal_ctntver_id;
50 
51 CURSOR Cur_Perz_Files(p_perz_file_id NUMBER) IS
52 SELECT proposal_name
53 FROM prp_proposals pp, prp_perz_files ppf, prp_prop_style_ctntvers pps
54 WHERE pp.proposal_id = pps.proposal_id
55 AND pps.OBJECT_ID = ppf.perz_file_id
56 AND ppf.perz_file_id = p_perz_file_id;
57 
58 l_api_name CONSTANT     VARCHAR2(30) := 'GET_OBJECT_NAME';
59 l_content_node_type     VARCHAR2(30);
60 l_component_style_id    NUMBER;
61 BEGIN
62 
63   x_return_status := FND_API.G_RET_STS_SUCCESS;
64 
65 IF (p_association_type_code = 'PRP_COMPONENT_DOCUMENT') THEN
66 
67    -- Check to see if the component is in hidden folder. If it is in hidden folder return the component style name.
68    OPEN Cur_Component_sytles(p_associated_object_val1);
69    Fetch Cur_Component_sytles INTO x_object_name,l_content_node_type;
70    IF(l_content_node_type = 'SHARED') THEN
71      OPEN Cur_Content_item_name(p_associated_object_val1,p_association_type_code);
72      FETCH Cur_Content_item_name INTO x_object_name;
73      CLOSE Cur_Content_item_name;
74    END IF;
75    CLOSE Cur_Component_sytles;
76 
77 ELSIF (p_association_type_code = 'PRP_COMPONENT_DOCUMENT_VERSION') THEN
78 
79    -- Get the Component_style_id.
80    OPEN Cur_style_ctntvers(p_associated_object_val1);
81    FETCH Cur_style_ctntvers INTO l_component_style_id;
82    CLOSE Cur_style_ctntvers;
83 
84     -- Check to see if the component is in hidden folder. If it is in hidden folder return the component style name.
85    OPEN Cur_Component_sytles(l_component_style_id);
86    Fetch Cur_Component_sytles INTO x_object_name,l_content_node_type;
87    IF(l_content_node_type = 'SHARED') THEN
88      OPEN Cur_Content_item_name(p_associated_object_val1,p_association_type_code);
89      FETCH Cur_Content_item_name INTO x_object_name;
90      CLOSE Cur_Content_item_name;
91    END IF;
92    CLOSE Cur_Component_sytles;
93 
94 ELSIF (p_association_type_code = 'PRP_GENERATED_PROPOSAL') THEN
95 
96    OPEN Cur_Proposals(p_associated_object_val1);
97    FETCH Cur_Proposals INTO x_object_name;
98    CLOSE Cur_Proposals;
99 
100 ELSIF  (p_association_type_code = 'PRP_GENERATED_DOCUMENT_VERSION') THEN
101 
102    OPEN  Cur_Proposal_ctntvers(p_associated_object_val1);
103    FETCH Cur_Proposal_ctntvers INTO x_object_name;
104    CLOSE Cur_Proposal_ctntvers;
105 
106 ELSIF  (p_association_type_code = 'PRP_PERZ_FILE_VERSION') THEN
107 
108    OPEN  Cur_Perz_Files(p_associated_object_val1);
109    FETCH Cur_Perz_Files INTO x_object_name;
110    CLOSE Cur_Perz_Files;
111 
112 END IF;
113 
114 EXCEPTION
115   WHEN FND_API.G_EXC_ERROR THEN
116      x_return_status := FND_API.G_RET_STS_ERROR;
117 	 FND_MSG_PUB.Count_And_Get (p_count => x_msg_count,
118 	                            p_data  => x_msg_data);
119   WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
120      x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
121 	 FND_MSG_PUB.Count_And_Get (p_count => x_msg_count,
122 	                            p_data  => x_msg_data);
123 
124   WHEN OTHERS THEN
125      x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
126 	 IF FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
127 	  THEN
128 	   FND_MSG_PUB.Add_Exc_Msg(G_PKG_NAME, l_api_name);
129 	 END IF;
130 
131 	 FND_MSG_PUB.Count_And_Get (p_count => x_msg_count,
132 	                            p_data  => x_msg_data);
133 
134 END Get_Object_Name;
135 
136 END PRP_IBC_INT_PVT;