1 PACKAGE BODY ENG_Default_Ref_Designator AS
2 /* $Header: ENGDRFDB.pls 115.6 2002/12/12 16:26:23 akumar ship $ */
3
4 -- Global constant holding the package name
5
6 G_PKG_NAME CONSTANT VARCHAR2(30) := 'ENG_Default_Ref_Designator';
7
8 -- Package global used within the package.
9
10 g_ref_designator_rec Bom_Bo_Pub.Ref_Designator_Rec_Type;
11
12 PROCEDURE Get_Flex_Ref_Designator
13 IS
14 BEGIN
15
16 -- In the future call Flex APIs for defaults
17
18 IF g_ref_designator_rec.attribute_category = FND_API.G_MISS_CHAR THEN
19 g_ref_designator_rec.attribute_category := NULL;
20 END IF;
21
22 IF g_ref_designator_rec.attribute1 = FND_API.G_MISS_CHAR THEN
23 g_ref_designator_rec.attribute1 := NULL;
24 END IF;
25
26 IF g_ref_designator_rec.attribute2 = FND_API.G_MISS_CHAR THEN
27 g_ref_designator_rec.attribute2 := NULL;
28 END IF;
29
30 IF g_ref_designator_rec.attribute3 = FND_API.G_MISS_CHAR THEN
31 g_ref_designator_rec.attribute3 := NULL;
32 END IF;
33
34 IF g_ref_designator_rec.attribute4 = FND_API.G_MISS_CHAR THEN
35 g_ref_designator_rec.attribute4 := NULL;
36 END IF;
37
38 IF g_ref_designator_rec.attribute5 = FND_API.G_MISS_CHAR THEN
39 g_ref_designator_rec.attribute5 := NULL;
40 END IF;
41
42 IF g_ref_designator_rec.attribute6 = FND_API.G_MISS_CHAR THEN
43 g_ref_designator_rec.attribute6 := NULL;
44 END IF;
45
46 IF g_ref_designator_rec.attribute7 = FND_API.G_MISS_CHAR THEN
47 g_ref_designator_rec.attribute7 := NULL;
48 END IF;
49
50 IF g_ref_designator_rec.attribute8 = FND_API.G_MISS_CHAR THEN
51 g_ref_designator_rec.attribute8 := NULL;
52 END IF;
53
54 IF g_ref_designator_rec.attribute9 = FND_API.G_MISS_CHAR THEN
55 g_ref_designator_rec.attribute9 := NULL;
56 END IF;
57
58 IF g_ref_designator_rec.attribute10 = FND_API.G_MISS_CHAR THEN
59 g_ref_designator_rec.attribute10 := NULL;
60 END IF;
61
62 IF g_ref_designator_rec.attribute11 = FND_API.G_MISS_CHAR THEN
63 g_ref_designator_rec.attribute11 := NULL;
64 END IF;
65
66 IF g_ref_designator_rec.attribute12 = FND_API.G_MISS_CHAR THEN
67 g_ref_designator_rec.attribute12 := NULL;
68 END IF;
69
70 IF g_ref_designator_rec.attribute13 = FND_API.G_MISS_CHAR THEN
71 g_ref_designator_rec.attribute13 := NULL;
72 END IF;
73
74 IF g_ref_designator_rec.attribute14 = FND_API.G_MISS_CHAR THEN
75 g_ref_designator_rec.attribute14 := NULL;
76 END IF;
77
78 IF g_ref_designator_rec.attribute15 = FND_API.G_MISS_CHAR THEN
79 g_ref_designator_rec.attribute15 := NULL;
80 END IF;
81
82 END Get_Flex_Ref_Designator;
83
84 -- Procedure Attributes
85
86 PROCEDURE Attribute_Defaulting
87 ( p_ref_designator_rec IN Bom_Bo_Pub.Ref_Designator_Rec_Type :=
88 Bom_Bo_Pub.G_MISS_REF_DESIGNATOR_REC
89 , p_ref_desg_unexp_rec IN Bom_Bo_Pub.Ref_Desg_Unexposed_Rec_Type
90 , x_ref_designator_rec IN OUT NOCOPY Bom_Bo_Pub.Ref_Designator_Rec_Type
91 , x_Ref_Desg_Unexp_Rec IN OUT NOCOPY Bom_Bo_Pub.Ref_Desg_Unexposed_Rec_Type
92 , x_Mesg_Token_Tbl OUT NOCOPY Error_Handler.Mesg_Token_Tbl_Type
93 , x_Return_Status OUT NOCOPY VARCHAR2
94 )
95 IS
96 BEGIN
97
98 /**************************************************************
99 *
100 * There are no columns that can be defaulted for Reference Desg.
101 *
102 ***************************************************************/
103
104 g_ref_designator_Rec := p_ref_designator_Rec;
105
106 IF g_ref_designator_rec.attribute_category = FND_API.G_MISS_CHAR
107 OR g_ref_designator_rec.attribute1 = FND_API.G_MISS_CHAR
108 OR g_ref_designator_rec.attribute2 = FND_API.G_MISS_CHAR
109 OR g_ref_designator_rec.attribute3 = FND_API.G_MISS_CHAR
110 OR g_ref_designator_rec.attribute4 = FND_API.G_MISS_CHAR
111 OR g_ref_designator_rec.attribute5 = FND_API.G_MISS_CHAR
112 OR g_ref_designator_rec.attribute6 = FND_API.G_MISS_CHAR
113 OR g_ref_designator_rec.attribute7 = FND_API.G_MISS_CHAR
114 OR g_ref_designator_rec.attribute8 = FND_API.G_MISS_CHAR
115 OR g_ref_designator_rec.attribute9 = FND_API.G_MISS_CHAR
116 OR g_ref_designator_rec.attribute10 = FND_API.G_MISS_CHAR
117 OR g_ref_designator_rec.attribute11 = FND_API.G_MISS_CHAR
118 OR g_ref_designator_rec.attribute12 = FND_API.G_MISS_CHAR
119 OR g_ref_designator_rec.attribute13 = FND_API.G_MISS_CHAR
120 OR g_ref_designator_rec.attribute14 = FND_API.G_MISS_CHAR
121 OR g_ref_designator_rec.attribute15 = FND_API.G_MISS_CHAR
122 THEN
123
124 Get_Flex_Ref_Designator;
125
126 END IF;
127
128 x_ref_designator_rec := g_ref_designator_rec;
129 x_ref_Desg_Unexp_Rec := p_ref_Desg_Unexp_Rec;
130
131 END Attribute_defaulting;
132
133 /********************************************************************
134 *
135 * Procedure : Populate_Null_Columns (Complete_Record)
136 * Parameters IN : Reference Designator Record as given by the User
137 * Old Reference Designator rec. queried from the DB
138 * Parameters OUT: Completed Reference Designator Record
139 * Return_Status - Indicating success or faliure
140 * Mesg_Token_Tbl - Filled with any errors or warnings
141 * Purpose : Complete Record will take the Database record and
142 * compare it with the user record and will complete
143 * the user record by filling in those values from the
144 * DB record that the user has left blank.
145 * Any user filled in columns will not be overwritten
146 * even if the values do not match.
147 ********************************************************************/
148
149 PROCEDURE Populate_Null_Columns
150 ( p_ref_designator_rec IN Bom_Bo_Pub.Ref_Designator_Rec_Type
151 , p_ref_desg_unexp_rec IN Bom_Bo_Pub.Ref_Desg_Unexposed_Rec_Type
152 , p_old_Ref_Designator_Rec IN Bom_Bo_Pub.Ref_Designator_Rec_Type
153 , p_old_ref_desg_unexp_rec IN Bom_Bo_Pub.Ref_Desg_Unexposed_Rec_Type
154 , x_Ref_Designator_Rec IN OUT NOCOPY Bom_Bo_Pub.Ref_Designator_Rec_Type
155 , x_ref_desg_unexp_rec IN OUT NOCOPY Bom_Bo_Pub.Ref_Desg_Unexposed_Rec_Type
156 )
157 IS
158 l_ref_designator_rec Bom_Bo_Pub.Ref_Designator_Rec_Type :=
159 p_ref_designator_rec;
160 l_err_text VARCHAR2(2000);
161 BEGIN
162
163 IF l_ref_designator_rec.ref_designator_comment = FND_API.G_MISS_CHAR THEN
164 l_ref_designator_rec.ref_designator_comment :=
165 p_old_ref_designator_rec.ref_designator_comment;
166 END IF;
167
168 IF l_ref_designator_rec.attribute_category = FND_API.G_MISS_CHAR THEN
169 l_ref_designator_rec.attribute_category :=
170 p_old_ref_designator_rec.attribute_category;
171 END IF;
172
173 IF l_ref_designator_rec.attribute1 = FND_API.G_MISS_CHAR THEN
174 l_ref_designator_rec.attribute1 := p_old_ref_designator_rec.attribute1;
175 END IF;
176
177 IF l_ref_designator_rec.attribute2 = FND_API.G_MISS_CHAR THEN
178 l_ref_designator_rec.attribute2 := p_old_ref_designator_rec.attribute2;
179 END IF;
180
181 IF l_ref_designator_rec.attribute3 = FND_API.G_MISS_CHAR THEN
182 l_ref_designator_rec.attribute3 := p_old_ref_designator_rec.attribute3;
183 END IF;
184
185 IF l_ref_designator_rec.attribute4 = FND_API.G_MISS_CHAR THEN
186 l_ref_designator_rec.attribute4 := p_old_ref_designator_rec.attribute4;
187 END IF;
188
189 IF l_ref_designator_rec.attribute5 = FND_API.G_MISS_CHAR THEN
190 l_ref_designator_rec.attribute5 := p_old_ref_designator_rec.attribute5;
191 END IF;
192
193 IF l_ref_designator_rec.attribute6 = FND_API.G_MISS_CHAR THEN
194 l_ref_designator_rec.attribute6 := p_old_ref_designator_rec.attribute6;
195 END IF;
196
197 IF l_ref_designator_rec.attribute7 = FND_API.G_MISS_CHAR THEN
198 l_ref_designator_rec.attribute7 := p_old_ref_designator_rec.attribute7;
199 END IF;
200
201 IF l_ref_designator_rec.attribute8 = FND_API.G_MISS_CHAR THEN
202 l_ref_designator_rec.attribute8 := p_old_ref_designator_rec.attribute8;
203 END IF;
204
205 IF l_ref_designator_rec.attribute9 = FND_API.G_MISS_CHAR THEN
206 l_ref_designator_rec.attribute9 := p_old_ref_designator_rec.attribute9;
207 END IF;
208
209 IF l_ref_designator_rec.attribute10 = FND_API.G_MISS_CHAR THEN
210 l_ref_designator_rec.attribute10 :=
211 p_old_ref_designator_rec.attribute10;
212 END IF;
213
214 IF l_ref_designator_rec.attribute11 = FND_API.G_MISS_CHAR THEN
215 l_ref_designator_rec.attribute11 :=
216 p_old_ref_designator_rec.attribute11;
217 END IF;
218
219 IF l_ref_designator_rec.attribute12 = FND_API.G_MISS_CHAR THEN
220 l_ref_designator_rec.attribute12 :=
221 p_old_ref_designator_rec.attribute12;
222 END IF;
223
224 IF l_ref_designator_rec.attribute13 = FND_API.G_MISS_CHAR THEN
225 l_ref_designator_rec.attribute13 :=
226 p_old_ref_designator_rec.attribute13;
227 END IF;
228
229 IF l_ref_designator_rec.attribute14 = FND_API.G_MISS_CHAR THEN
230 l_ref_designator_rec.attribute14 :=
231 p_old_ref_designator_rec.attribute14;
232 END IF;
233
234 IF l_ref_designator_rec.attribute15 = FND_API.G_MISS_CHAR THEN
235 l_ref_designator_rec.attribute15 :=
236 p_old_ref_designator_rec.attribute15;
237 END IF;
238
239 x_Ref_Designator_Rec := l_ref_designator_rec;
240 x_ref_desg_unexp_rec := p_ref_desg_unexp_rec;
241
242 END Populate_Null_Columns;
243
244
245 END ENG_Default_Ref_Designator;