[Home] [Help]
PACKAGE BODY: APPS.AMS_MULTIMEDIA_PVT
Source
1 PACKAGE BODY AMS_Multimedia_PVT as
2 /* $Header: amsvmulb.pls 115.3 2002/06/11 14:44:58 pkm ship $ */
3 -- Start of Comments
4 -- Package name : AMS_Multimedia_PVT
5 -- Purpose :
6
7 -- History :
8 -- 12/26/2000 abhola created.
9 -- 12-MAY-2002 ABHOLA removed references to G_USER_ID
10 -- End of Comments
11
12
13 G_PKG_NAME CONSTANT VARCHAR2(30):= 'AMS_Multimedia_PVT';
14 G_FILE_NAME CONSTANT VARCHAR2(12) := 'amsvmulb.pls';
15
16
17
18 PROCEDURE Process_Multimedia(
19 p_api_version IN NUMBER,
20 p_init_msg_list IN VARCHAR2 := FND_API.g_false,
21 p_commit IN VARCHAR2 := FND_API.g_false,
22 p_validation_level IN NUMBER := FND_API.g_valid_level_full,
23
24 x_return_status OUT VARCHAR2,
25 x_msg_count OUT NUMBER,
26 x_msg_data OUT VARCHAR2,
27
28 p_multi_rec IN multimedia_rec_type )
29
30 IS
31
32
33 l_api_name CONSTANT VARCHAR2(50) := 'Process_Multimedia';
34
35 l_multimedia_tbl IBE_LogicalContent_GRP.obj_lgl_ctnt_tbl_type;
36
37 l_api_version NUMBER := p_api_version;
38 l_init_msg_list VARCHAR2(1) := p_init_msg_list;
39 l_commit VARCHAR2(1) := p_commit;
40 l_validation_level NUMBER := p_validation_level;
41
42 transaction_type VARCHAR2(1);
43
44 BEGIN
45 -- Standard Start of API savepoint
46 SAVEPOINT Process_Multimedia;
47
48 -- Standard call to check for call compatibility.
49 IF NOT FND_API.Compatible_API_Call ( l_api_version,
50 p_api_version,
51 l_api_name,
52 G_PKG_NAME)
53 THEN
54 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
55 END IF;
56
57 -- Initialize message list if p_init_msg_list is set to TRUE.
58 IF FND_API.to_Boolean( p_init_msg_list )
59 THEN
60 FND_MSG_PUB.initialize;
61 END IF;
62
63 -- Debug Message
64 -- AMS_UTILITY_PVT.debug_message('Private API: ' || l_api_name || 'start');
65
66
67 -- Initialize API return status to SUCCESS
68 x_return_status := FND_API.G_RET_STS_SUCCESS;
69
70
71 -- ******************************************************************
72 -- Validate Environment
73 -- ******************************************************************
74 IF FND_GLOBAL.User_Id IS NULL
75 THEN
76 IF FND_MSG_PUB.Check_Msg_Level (FND_MSG_PUB.G_MSG_LVL_ERROR)
77 THEN
78 FND_MESSAGE.Set_Name('AMS', 'USER_PROFILE_MISSING');
79 FND_MSG_PUB.ADD;
80 END IF;
81 RAISE FND_API.G_EXC_ERROR;
82 END IF;
83
84 --
85 -- get the default image if default falg is 'Y'
86 --
87
88 transaction_type := p_multi_rec.create_delete_flag;
89
90 if (p_multi_rec.default_flag = 'Y') then
91
92 transaction_type := FND_API.g_true;
93
94 end if;
95
96 l_multimedia_tbl(1).obj_lgl_ctnt_delete := transaction_type ;
97 l_multimedia_tbl(1).OBJ_lgl_ctnt_id := p_multi_rec.obj_lgl_ctnt_id;
98 l_multimedia_tbl(1).Object_Version_Number := p_multi_rec.object_version_number;
99 l_multimedia_tbl(1).Object_id := p_multi_rec.object_id ;
100 l_multimedia_tbl(1).Context_id := p_multi_rec.context_id;
101 l_multimedia_tbl(1).deliverable_id := p_multi_rec.image_id ;
102
103 -- Call to IBE Procedure
104 ------------------------
105 IBE_LogicalContent_GRP.save_delete_lgl_ctnt(
106 p_api_version => l_api_version,
107 p_init_msg_list => l_init_msg_list,
108 p_commit => l_commit,
109 x_return_status => x_return_status,
110 x_msg_count => x_msg_count,
111 x_msg_data => x_msg_data,
112 p_object_type_code => p_multi_rec.obj_type_code,
113 p_lgl_ctnt_tbl => l_multimedia_tbl );
114
115
116 -- Standard check for p_commit
117 IF FND_API.to_Boolean( p_commit )
118 THEN
119 COMMIT WORK;
120 END IF;
121
122
123 -- Debug Message
124 -- AMS_UTILITY_PVT.debug_message('Private API: ' || l_api_name || 'end');
125
126 -- Standard call to get message count and if count is 1, get message info.
127 FND_MSG_PUB.Count_And_Get
128 (p_count => x_msg_count,
129 p_data => x_msg_data
130 );
131 EXCEPTION
132 WHEN FND_API.G_EXC_ERROR THEN
133
134 x_return_status := FND_API.G_RET_STS_ERROR;
135 -- Standard call to get message count and if count=1, get the message
136 FND_MSG_PUB.Count_And_Get (
137 p_encoded => FND_API.G_FALSE,
138 p_count => x_msg_count,
139 p_data => x_msg_data
140 );
141 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
142
143 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
144 -- Standard call to get message count and if count=1, get the message
145 FND_MSG_PUB.Count_And_Get (
146 p_encoded => FND_API.G_FALSE,
147 p_count => x_msg_count,
148 p_data => x_msg_data
149 );
150 WHEN OTHERS THEN
151
152 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
153 IF FND_MSG_PUB.Check_Msg_Level ( FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
154 THEN
155 FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME,l_api_name);
156 END IF;
157 -- Standard call to get message count and if count=1, get the message
158 FND_MSG_PUB.Count_And_Get (
159 p_encoded => FND_API.G_FALSE,
160 p_count => x_msg_count,
161 p_data => x_msg_data
162 );
163 END;
164
165
166 End AMS_Multimedia_PVT;