1 PACKAGE PVX_lead_pss_lines_PVT AUTHID CURRENT_USER AS
2 /* $Header: pvxvpsss.pls 115.8 2002/12/11 10:58:43 anubhavk ship $ */
3
4 TYPE lead_pss_lines_rec_type IS RECORD
5 (
6 LEAD_PSS_LINE_ID NUMBER,
7 LAST_UPDATE_DATE DATE,
8 LAST_UPDATED_BY NUMBER,
9 CREATION_DATE DATE,
10 CREATED_BY NUMBER,
11 LAST_UPDATE_LOGIN NUMBER,
12 OBJECT_VERSION_NUMBER NUMBER,
13 REQUEST_ID NUMBER,
14 PROGRAM_APPLICATION_ID NUMBER,
15 PROGRAM_ID NUMBER,
16 PROGRAM_UPDATE_DATE DATE,
17 OBJECT_NAME VARCHAR2(30),
18 ATTR_CODE_ID NUMBER,
19 LEAD_ID NUMBER,
20 UOM_CODE VARCHAR2(3),
21 QUANTITY NUMBER,
22 AMOUNT NUMBER,
23 ATTRIBUTE_CATEGORY VARCHAR2(30),
24 ATTRIBUTE1 VARCHAR2(150),
25 ATTRIBUTE2 VARCHAR2(150),
26 ATTRIBUTE3 VARCHAR2(150),
27 ATTRIBUTE4 VARCHAR2(150),
28 ATTRIBUTE5 VARCHAR2(150),
29 ATTRIBUTE6 VARCHAR2(150),
30 ATTRIBUTE7 VARCHAR2(150),
31 ATTRIBUTE8 VARCHAR2(150),
32 ATTRIBUTE9 VARCHAR2(150),
33 ATTRIBUTE10 VARCHAR2(150),
34 ATTRIBUTE11 VARCHAR2(150),
35 ATTRIBUTE12 VARCHAR2(150),
36 ATTRIBUTE13 VARCHAR2(150),
37 ATTRIBUTE14 VARCHAR2(150),
38 ATTRIBUTE15 VARCHAR2(150),
39 OBJECT_ID NUMBER,
40 PARTNER_ID NUMBER
41 );
42
43
44
45 ---------------------------------------------------------------------
46 -- PROCEDURE
47 -- Create_lead_pss_line
48 --
49 -- PURPOSE
50 -- Create a new lead pss line record
51 --
52 -- PARAMETERS
53 -- p_lead_pss_line_rec: the new record to be inserted
54 -- x_lead_pss_line_id: return the lead_pss_line_id of the new record.
55 --
56 -- NOTES
57 -- 1. object_version_number will be set to 1.
58 -- 2. If lead_pss_line_id is passed in, the uniqueness will be checked.
59 -- Raise exception in case of duplicates.
60 -- 3. If lead_pss_line_id is not passed in, generate a unique one from
61 -- the sequence.
62 -- 4. If a flag column is passed in, check if it is 'Y' or 'N'.
63 -- Raise exception for invalid flag.
64 -- 5. If a flag column is not passed in, default it to 'Y' or 'N'.
65 -- 6. Please don't pass in any FND_API.g_mess_char/num/date.
66 ---------------------------------------------------------------------
67 PROCEDURE Create_lead_pss_line(
68 p_api_version_number IN NUMBER
69 ,p_init_msg_list IN VARCHAR2 := FND_API.g_false
70 ,p_commit IN VARCHAR2 := FND_API.g_false
71 ,p_validation_level IN NUMBER := FND_API.g_valid_level_full
72
73 ,x_return_status OUT NOCOPY VARCHAR2
74 ,x_msg_count OUT NOCOPY NUMBER
75 ,x_msg_data OUT NOCOPY VARCHAR2
76
77 ,p_lead_pss_lines_rec IN lead_pss_lines_rec_type
78 ,x_lead_pss_line_id OUT NOCOPY NUMBER
79 );
80
81
82 --------------------------------------------------------------------
83 -- PROCEDURE
84 -- Delete_lead_pss_line
85 --
86 -- PURPOSE
87 -- Delete a lead_pss_line
88 --
89 -- PARAMETERS
90 -- p_lead_pss_line_id: the lead_pss_line_id
91 -- p_object_version: the object_version_number
92 --
93 -- NOTES
94 -- 1. Raise exception if the object_version_number doesn't match.
95 --------------------------------------------------------------------
96 PROCEDURE Delete_lead_pss_line(
97 p_api_version_number IN NUMBER
98 ,p_init_msg_list IN VARCHAR2 := FND_API.g_false
99 ,p_commit IN VARCHAR2 := FND_API.g_false
100
101 ,x_return_status OUT NOCOPY VARCHAR2
102 ,x_msg_count OUT NOCOPY NUMBER
103 ,x_msg_data OUT NOCOPY VARCHAR2
104
105 ,p_lead_pss_line_id IN NUMBER
106 ,p_object_version IN NUMBER
107 );
108
109
110 -------------------------------------------------------------------
111 -- PROCEDURE
112 -- Lock_lead_pss_line
113 --
114 -- PURPOSE
115 -- Lock a lead_pss_line
116 --
117 -- PARAMETERS
118 -- p_lead_pss_line_id:
119 -- p_object_version: the object_version_number
120 --
121 -- NOTES
122 -- 1. Raise exception if the object_version_number doesn't match.
123 --------------------------------------------------------------------
124 PROCEDURE Lock_lead_pss_line(
125 p_api_version_number IN NUMBER
126 ,p_init_msg_list IN VARCHAR2 := FND_API.g_false
127
128 ,x_return_status OUT NOCOPY VARCHAR2
129 ,x_msg_count OUT NOCOPY NUMBER
130 ,x_msg_data OUT NOCOPY VARCHAR2
131
132 ,p_lead_pss_line_id IN NUMBER
133 ,p_object_version IN NUMBER
134 );
135
136
137 ---------------------------------------------------------------------
138 -- PROCEDURE
139 -- Update_lead_pss_line
140 --
141 -- PURPOSE
142 -- Update a lead_pss_line
143 --
144 -- PARAMETERS
145 -- p_lead_pss_lines_rec: the record with new items.
146 -- p_mode : determines what sort of validation is to be performed during update.
147 --
148 -- NOTES
149 -- 1. Raise exception if the object_version_number doesn't match.
150 -- 2. If an attribute is passed in as FND_API.g_miss_char/num/date,
151 -- that column won't be updated.
152 ----------------------------------------------------------------------
153 PROCEDURE Update_lead_pss_line(
154 p_api_version_number IN NUMBER
155 ,p_init_msg_list IN VARCHAR2 := FND_API.g_false
156 ,p_commit IN VARCHAR2 := FND_API.g_false
157 ,p_validation_level IN NUMBER := FND_API.g_valid_level_full
158
159 ,x_return_status OUT NOCOPY VARCHAR2
160 ,x_msg_count OUT NOCOPY NUMBER
161 ,x_msg_data OUT NOCOPY VARCHAR2
162 ,p_lead_pss_lines_rec IN lead_pss_lines_rec_type
163 );
164
165
166 ---------------------------------------------------------------------
167 -- PROCEDURE
168 -- Validate_lead_pss_line
169 --
170 -- PURPOSE
171 -- Validate a lead_pss_lines record.
172 --
173 -- PARAMETERS
174 -- p_lead_pss_lines_rec: the record to be validated
175 --
176 -- NOTES
177 -- 1. p_lead_pss_lines_rec should be the complete record. There
178 -- should not be any FND_API.g_miss_char/num/date in it.
179 ----------------------------------------------------------------------
180 PROCEDURE Validate_lead_pss_line(
181 p_api_version_number IN NUMBER
182 ,p_init_msg_list IN VARCHAR2 := FND_API.g_false
183 ,p_validation_level IN NUMBER := FND_API.g_valid_level_full
184
185 ,x_return_status OUT NOCOPY VARCHAR2
186 ,x_msg_count OUT NOCOPY NUMBER
187 ,x_msg_data OUT NOCOPY VARCHAR2
188
189 ,p_lead_pss_lines_rec IN lead_pss_lines_rec_type
190 );
191
192
193 ---------------------------------------------------------------------
194 -- PROCEDURE
195 -- Check_lead_pss_line_items
196 --
197 -- PURPOSE
198 -- Perform the item level checking including unique keys,
199 -- required columns, foreign keys, domain constraints.
200 --
201 -- PARAMETERS
202 -- p_lead_pss_line_rec: the record to be validated
203 -- p_validation_mode: JTF_PLSQL_API.g_create/g_update
204 ---------------------------------------------------------------------
205 PROCEDURE Check_lead_pss_line_Items(
206 p_validation_mode IN VARCHAR2 := JTF_PLSQL_API.g_create
207 ,x_return_status OUT NOCOPY VARCHAR2
208 ,p_lead_pss_lines_rec IN lead_pss_lines_rec_type
209 );
210
211
212 ---------------------------------------------------------------------
213 -- PROCEDURE
214 -- Check_lead_pss_line_Record
215 --
216 -- PURPOSE
217 -- Check the record level business rules.
218 --
219 -- PARAMETERS
220 -- p_lead_pss_line_rec: the record to be validated; may contain attributes
221 -- as FND_API.g_miss_char/num/date
222 -- p_complete_rec: the complete record after all "g_miss" items
223 -- have been replaced by current database values
224 ---------------------------------------------------------------------
225 PROCEDURE Check_lead_pss_line_Record(
226 p_lead_pss_lines_rec IN lead_pss_lines_rec_type
227 ,p_complete_rec IN lead_pss_lines_rec_type := NULL
228 ,p_mode IN VARCHAR2 := 'INSERT'
229 ,x_return_status OUT NOCOPY VARCHAR2
230 );
231
232
233 ---------------------------------------------------------------------
234 -- PROCEDURE
235 -- Init_lead_pss_line_rec
236 --
237 -- PURPOSE
238 -- Initialize all attributes to be FND_API.g_miss_char/num/date.
239 ---------------------------------------------------------------------
240 PROCEDURE Init_lead_pss_line_rec(
241 x_lead_pss_lines_rec OUT NOCOPY lead_pss_lines_rec_type
242 );
243
244
245 ---------------------------------------------------------------------
246 -- PROCEDURE
247 -- Complete_lead_pss_line_rec
248 --
249 -- PURPOSE
250 -- For update, some attributes may be passed in as
251 -- FND_API.g_miss_char/num/date if the user doesn't want to
252 -- update those attributes. This procedure will replace the
253 -- "g_miss" attributes with current database values.
254 --
255 -- PARAMETERS
256 -- p_lead_pss_line_rec: the record which may contain attributes as
257 -- FND_API.g_miss_char/num/date
258 -- x_complete_rec: the complete record after all "g_miss" items
259 -- have been replaced by current database values
260 ---------------------------------------------------------------------
261 PROCEDURE Complete_lead_pss_line_rec(
262 p_lead_pss_lines_rec IN lead_pss_lines_rec_type
263 ,x_complete_rec OUT NOCOPY lead_pss_lines_rec_type
264 );
265
266
267 END PVX_lead_pss_lines_PVT;