DBA Data[Home] [Help]

PACKAGE BODY: APPS.ASO_PRICE_ADJ_ATTRIBS_PKG

Source


1 PACKAGE BODY ASO_PRICE_ADJ_ATTRIBS_PKG as
2 /* $Header: asotpaab.pls 120.1 2005/06/29 12:39:30 appldev ship $ */
3 -- Start of Comments
4 -- Package name     : ASO_PRICE_ADJ_ATTRIBS_PKG
5 -- Purpose          :
6 -- History          :
7 -- NOTE             :
8 -- End of Comments
9 
10 
11 G_PKG_NAME CONSTANT VARCHAR2(30):= 'ASO_PRICE_ADJ_ATTRIBS_PKG';
12 G_FILE_NAME CONSTANT VARCHAR2(12) := 'asotpaab.pls';
13 
14 PROCEDURE Insert_Row(
15           px_PRICE_ADJ_ATTRIB_ID   IN OUT NOCOPY /* file.sql.39 change */   NUMBER,
16           p_CREATION_DATE    DATE,
17           p_CREATED_BY    NUMBER,
18           p_LAST_UPDATE_DATE    DATE,
19           p_LAST_UPDATED_BY    NUMBER,
20           p_LAST_UPDATE_LOGIN    NUMBER,
21           p_PROGRAM_APPLICATION_ID    NUMBER,
22           p_PROGRAM_ID    NUMBER,
23           p_PROGRAM_UPDATE_DATE    DATE,
24           p_REQUEST_ID    NUMBER,
25           p_PRICE_ADJUSTMENT_ID    NUMBER,
26           p_PRICING_CONTEXT    VARCHAR2,
27           p_PRICING_ATTRIBUTE    VARCHAR2,
28           p_PRICING_ATTR_VALUE_FROM    VARCHAR2,
29           p_PRICING_ATTR_VALUE_TO    VARCHAR2,
30           p_COMPARISON_OPERATOR    VARCHAR2,
31           p_FLEX_TITLE    VARCHAR2,
32           p_OBJECT_VERSION_NUMBER  NUMBER
33 		)
34 
35  IS
36    CURSOR C2 IS SELECT ASO_PRICE_ADJ_ATTRIBS_S.nextval FROM sys.dual;
37 BEGIN
38    If (px_PRICE_ADJ_ATTRIB_ID IS NULL) OR (px_PRICE_ADJ_ATTRIB_ID = FND_API.G_MISS_NUM) then
39        OPEN C2;
40        FETCH C2 INTO px_PRICE_ADJ_ATTRIB_ID;
41        CLOSE C2;
42    End If;
43    INSERT INTO ASO_PRICE_ADJ_ATTRIBS(
44            PRICE_ADJ_ATTRIB_ID,
45            CREATION_DATE,
46            CREATED_BY,
47            LAST_UPDATE_DATE,
48            LAST_UPDATED_BY,
49            LAST_UPDATE_LOGIN,
50            PROGRAM_APPLICATION_ID,
51            PROGRAM_ID,
52            PROGRAM_UPDATE_DATE,
53            REQUEST_ID,
54            PRICE_ADJUSTMENT_ID,
55            PRICING_CONTEXT,
56            PRICING_ATTRIBUTE,
57            PRICING_ATTR_VALUE_FROM,
58            PRICING_ATTR_VALUE_TO,
59            COMPARISON_OPERATOR,
60            FLEX_TITLE,
61            OBJECT_VERSION_NUMBER
62           ) VALUES (
63            px_PRICE_ADJ_ATTRIB_ID,
64            ASO_UTILITY_PVT.decode( p_CREATION_DATE, FND_API.G_MISS_DATE, NULL, p_CREATION_DATE),
65            decode( p_CREATED_BY, FND_API.G_MISS_NUM, NULL, p_CREATED_BY),
66            ASO_UTILITY_PVT.decode( p_LAST_UPDATE_DATE, FND_API.G_MISS_DATE, NULL, p_LAST_UPDATE_DATE),
67            decode( p_LAST_UPDATED_BY, FND_API.G_MISS_NUM, NULL, p_LAST_UPDATED_BY),
68            decode( p_LAST_UPDATE_LOGIN, FND_API.G_MISS_NUM, NULL, p_LAST_UPDATE_LOGIN),
69            decode( p_PROGRAM_APPLICATION_ID, FND_API.G_MISS_NUM, NULL, p_PROGRAM_APPLICATION_ID),
70            decode( p_PROGRAM_ID, FND_API.G_MISS_NUM, NULL, p_PROGRAM_ID),
71            ASO_UTILITY_PVT.decode( p_PROGRAM_UPDATE_DATE, FND_API.G_MISS_DATE, NULL, p_PROGRAM_UPDATE_DATE),
72            decode( p_REQUEST_ID, FND_API.G_MISS_NUM, NULL, p_REQUEST_ID),
73            decode( p_PRICE_ADJUSTMENT_ID, FND_API.G_MISS_NUM, NULL, p_PRICE_ADJUSTMENT_ID),
74            decode( p_PRICING_CONTEXT, FND_API.G_MISS_CHAR, NULL, p_PRICING_CONTEXT),
75            decode( p_PRICING_ATTRIBUTE, FND_API.G_MISS_CHAR, NULL, p_PRICING_ATTRIBUTE),
76            decode( p_PRICING_ATTR_VALUE_FROM, FND_API.G_MISS_CHAR, NULL, p_PRICING_ATTR_VALUE_FROM),
77            decode( p_PRICING_ATTR_VALUE_TO, FND_API.G_MISS_CHAR, NULL, p_PRICING_ATTR_VALUE_TO),
78            decode( p_COMPARISON_OPERATOR, FND_API.G_MISS_CHAR, NULL, p_COMPARISON_OPERATOR),
79            decode( p_FLEX_TITLE, FND_API.G_MISS_CHAR, NULL, p_FLEX_TITLE),
80 		 decode ( p_OBJECT_VERSION_NUMBER, FND_API.G_MISS_NUM,1,NULL,1, p_OBJECT_VERSION_NUMBER)
81 		 );
82 End Insert_Row;
83 
84 PROCEDURE Update_Row(
85           p_PRICE_ADJ_ATTRIB_ID    NUMBER,
86           p_CREATION_DATE    DATE,
87           p_CREATED_BY    NUMBER,
88           p_LAST_UPDATE_DATE    DATE,
89           p_LAST_UPDATED_BY    NUMBER,
90           p_LAST_UPDATE_LOGIN    NUMBER,
91           p_PROGRAM_APPLICATION_ID    NUMBER,
92           p_PROGRAM_ID    NUMBER,
93           p_PROGRAM_UPDATE_DATE    DATE,
94           p_REQUEST_ID    NUMBER,
95           p_PRICE_ADJUSTMENT_ID    NUMBER,
96           p_PRICING_CONTEXT    VARCHAR2,
97           p_PRICING_ATTRIBUTE    VARCHAR2,
98           p_PRICING_ATTR_VALUE_FROM    VARCHAR2,
99           p_PRICING_ATTR_VALUE_TO    VARCHAR2,
100           p_COMPARISON_OPERATOR    VARCHAR2,
101           p_FLEX_TITLE    VARCHAR2,
102           p_OBJECT_VERSION_NUMBER  NUMBER
103 		)
104 
105  IS
106  BEGIN
107     Update ASO_PRICE_ADJ_ATTRIBS
108     SET
109              /* CREATION_DATE = ASO_UTILITY_PVT.decode( p_CREATION_DATE, FND_API.G_MISS_DATE, CREATION_DATE, p_CREATION_DATE),
110               CREATED_BY = decode( p_CREATED_BY, FND_API.G_MISS_NUM, CREATED_BY, p_CREATED_BY),*/
111               LAST_UPDATE_DATE = ASO_UTILITY_PVT.decode( p_LAST_UPDATE_DATE, FND_API.G_MISS_DATE, LAST_UPDATE_DATE, p_LAST_UPDATE_DATE),
112               LAST_UPDATED_BY = decode( p_LAST_UPDATED_BY, FND_API.G_MISS_NUM, LAST_UPDATED_BY, p_LAST_UPDATED_BY),
113               LAST_UPDATE_LOGIN = decode( p_LAST_UPDATE_LOGIN, FND_API.G_MISS_NUM, LAST_UPDATE_LOGIN, p_LAST_UPDATE_LOGIN),
114               PROGRAM_APPLICATION_ID = decode( p_PROGRAM_APPLICATION_ID, FND_API.G_MISS_NUM, PROGRAM_APPLICATION_ID, p_PROGRAM_APPLICATION_ID),
115               PROGRAM_ID = decode( p_PROGRAM_ID, FND_API.G_MISS_NUM, PROGRAM_ID, p_PROGRAM_ID),
116               PROGRAM_UPDATE_DATE = ASO_UTILITY_PVT.decode( p_PROGRAM_UPDATE_DATE, FND_API.G_MISS_DATE, PROGRAM_UPDATE_DATE, p_PROGRAM_UPDATE_DATE),
117               REQUEST_ID = decode( p_REQUEST_ID, FND_API.G_MISS_NUM, REQUEST_ID, p_REQUEST_ID),
118               PRICE_ADJUSTMENT_ID = decode( p_PRICE_ADJUSTMENT_ID, FND_API.G_MISS_NUM, PRICE_ADJUSTMENT_ID, p_PRICE_ADJUSTMENT_ID),
119               PRICING_CONTEXT = decode( p_PRICING_CONTEXT, FND_API.G_MISS_CHAR, PRICING_CONTEXT, p_PRICING_CONTEXT),
120               PRICING_ATTRIBUTE = decode( p_PRICING_ATTRIBUTE, FND_API.G_MISS_CHAR, PRICING_ATTRIBUTE, p_PRICING_ATTRIBUTE),
121               PRICING_ATTR_VALUE_FROM = decode( p_PRICING_ATTR_VALUE_FROM, FND_API.G_MISS_CHAR, PRICING_ATTR_VALUE_FROM, p_PRICING_ATTR_VALUE_FROM),
122               PRICING_ATTR_VALUE_TO = decode( p_PRICING_ATTR_VALUE_TO, FND_API.G_MISS_CHAR, PRICING_ATTR_VALUE_TO, p_PRICING_ATTR_VALUE_TO),
123               COMPARISON_OPERATOR = decode( p_COMPARISON_OPERATOR, FND_API.G_MISS_CHAR, COMPARISON_OPERATOR, p_COMPARISON_OPERATOR),
124               FLEX_TITLE = decode( p_FLEX_TITLE, FND_API.G_MISS_CHAR, FLEX_TITLE, p_FLEX_TITLE),
125 		    OBJECT_VERSION_NUMBER = decode( p_OBJECT_VERSION_NUMBER, FND_API.G_MISS_NUM, nvl(OBJECT_VERSION_NUMBER,0)+1, nvl(p_OBJECT_VERSION_NUMBER, nvl(OBJECT_VERSION_NUMBER,0))+1)
126     where PRICE_ADJ_ATTRIB_ID = p_PRICE_ADJ_ATTRIB_ID;
127 
128     If (SQL%NOTFOUND) then
129         RAISE NO_DATA_FOUND;
130     End If;
131 END Update_Row;
132 
133 PROCEDURE Delete_Row(
134     p_PRICE_ADJ_ATTRIB_ID  NUMBER)
135  IS
136  BEGIN
137    DELETE FROM ASO_PRICE_ADJ_ATTRIBS
138     WHERE PRICE_ADJ_ATTRIB_ID = p_PRICE_ADJ_ATTRIB_ID;
139    If (SQL%NOTFOUND) then
140        RAISE NO_DATA_FOUND;
141    End If;
142  END Delete_Row;
143 
144 PROCEDURE Lock_Row(
145           --p_OBJECT_VERSION_NUMBER  NUMBER,
146           p_PRICE_ADJ_ATTRIB_ID    NUMBER,
147           p_CREATION_DATE    DATE,
148           p_CREATED_BY    NUMBER,
149           p_LAST_UPDATE_DATE    DATE,
150           p_LAST_UPDATED_BY    NUMBER,
151           p_LAST_UPDATE_LOGIN    NUMBER,
152           p_PROGRAM_APPLICATION_ID    NUMBER,
153           p_PROGRAM_ID    NUMBER,
154           p_PROGRAM_UPDATE_DATE    DATE,
155           p_REQUEST_ID    NUMBER,
156           p_PRICE_ADJUSTMENT_ID    NUMBER,
157           p_PRICING_CONTEXT    VARCHAR2,
158           p_PRICING_ATTRIBUTE    VARCHAR2,
159           p_PRICING_ATTR_VALUE_FROM    VARCHAR2,
160           p_PRICING_ATTR_VALUE_TO    VARCHAR2,
161           p_COMPARISON_OPERATOR    VARCHAR2,
162           p_FLEX_TITLE    VARCHAR2)
163 
164  IS
165    CURSOR C IS
166         SELECT PRICE_ADJ_ATTRIB_ID,
167 --OBJECT_VERSION_NUMBER,
168 CREATION_DATE,
169 CREATED_BY,
170 LAST_UPDATE_DATE,
171 LAST_UPDATED_BY,
172 LAST_UPDATE_LOGIN,
173 PROGRAM_APPLICATION_ID,
174 PROGRAM_ID,
175 PROGRAM_UPDATE_DATE,
176 REQUEST_ID,
177 PRICE_ADJUSTMENT_ID,
178 PRICING_CONTEXT,
179 PRICING_ATTRIBUTE,
180 PRICING_ATTR_VALUE_FROM,
181 PRICING_ATTR_VALUE_TO,
182 COMPARISON_OPERATOR,
183 FLEX_TITLE
184          FROM ASO_PRICE_ADJ_ATTRIBS
185         WHERE PRICE_ADJ_ATTRIB_ID =  p_PRICE_ADJ_ATTRIB_ID
186         FOR UPDATE of PRICE_ADJ_ATTRIB_ID NOWAIT;
187    Recinfo C%ROWTYPE;
188  BEGIN
189     OPEN C;
190     FETCH C INTO Recinfo;
191     If (C%NOTFOUND) then
192         CLOSE C;
193         FND_MESSAGE.SET_NAME('FND', 'FORM_RECORD_DELETED');
194         APP_EXCEPTION.RAISE_EXCEPTION;
195     End If;
196     CLOSE C;
197     if (
198 /*
199            (      Recinfo.PRICE_ADJ_ATTRIB_ID = p_PRICE_ADJ_ATTRIB_ID)
200        AND (    ( Recinfo.CREATION_DATE = p_CREATION_DATE)
201             OR (    ( Recinfo.CREATION_DATE IS NULL )
202                 AND (  p_CREATION_DATE IS NULL )))
203        AND (    ( Recinfo.CREATED_BY = p_CREATED_BY)
204             OR (    ( Recinfo.CREATED_BY IS NULL )
205                 AND (  p_CREATED_BY IS NULL )))
206        AND
207 */
208 	  (    ( Recinfo.LAST_UPDATE_DATE = p_LAST_UPDATE_DATE)
209             OR (    ( Recinfo.LAST_UPDATE_DATE IS NULL )
210                 AND (  p_LAST_UPDATE_DATE IS NULL )))
211 /*
212        AND
213        (    ( Recinfo.OBJECT_VERSION_NUMBER = p_OBJECT_VERSION_NUMBER)
214              OR (    ( Recinfo.OBJECT_VERSION_NUMBER IS NULL )
215                   AND (  p_OBJECT_VERSION_NUMBER IS NULL )))
216        AND (    ( Recinfo.LAST_UPDATED_BY = p_LAST_UPDATED_BY)
217             OR (    ( Recinfo.LAST_UPDATED_BY IS NULL )
218                 AND (  p_LAST_UPDATED_BY IS NULL )))
219        AND (    ( Recinfo.LAST_UPDATE_LOGIN = p_LAST_UPDATE_LOGIN)
220             OR (    ( Recinfo.LAST_UPDATE_LOGIN IS NULL )
221                 AND (  p_LAST_UPDATE_LOGIN IS NULL )))
222        AND (    ( Recinfo.PROGRAM_APPLICATION_ID = p_PROGRAM_APPLICATION_ID)
223             OR (    ( Recinfo.PROGRAM_APPLICATION_ID IS NULL )
224                 AND (  p_PROGRAM_APPLICATION_ID IS NULL )))
225        AND (    ( Recinfo.PROGRAM_ID = p_PROGRAM_ID)
226             OR (    ( Recinfo.PROGRAM_ID IS NULL )
227                 AND (  p_PROGRAM_ID IS NULL )))
228        AND (    ( Recinfo.PROGRAM_UPDATE_DATE = p_PROGRAM_UPDATE_DATE)
229             OR (    ( Recinfo.PROGRAM_UPDATE_DATE IS NULL )
230                 AND (  p_PROGRAM_UPDATE_DATE IS NULL )))
231        AND (    ( Recinfo.REQUEST_ID = p_REQUEST_ID)
232             OR (    ( Recinfo.REQUEST_ID IS NULL )
233                 AND (  p_REQUEST_ID IS NULL )))
234        AND (    ( Recinfo.PRICE_ADJUSTMENT_ID = p_PRICE_ADJUSTMENT_ID)
235             OR (    ( Recinfo.PRICE_ADJUSTMENT_ID IS NULL )
236                 AND (  p_PRICE_ADJUSTMENT_ID IS NULL )))
237        AND (    ( Recinfo.PRICING_CONTEXT = p_PRICING_CONTEXT)
238             OR (    ( Recinfo.PRICING_CONTEXT IS NULL )
239                 AND (  p_PRICING_CONTEXT IS NULL )))
240        AND (    ( Recinfo.PRICING_ATTRIBUTE = p_PRICING_ATTRIBUTE)
241             OR (    ( Recinfo.PRICING_ATTRIBUTE IS NULL )
242                 AND (  p_PRICING_ATTRIBUTE IS NULL )))
243        AND (    ( Recinfo.PRICING_ATTR_VALUE_FROM = p_PRICING_ATTR_VALUE_FROM)
244             OR (    ( Recinfo.PRICING_ATTR_VALUE_FROM IS NULL )
245                 AND (  p_PRICING_ATTR_VALUE_FROM IS NULL )))
246        AND (    ( Recinfo.PRICING_ATTR_VALUE_TO = p_PRICING_ATTR_VALUE_TO)
247             OR (    ( Recinfo.PRICING_ATTR_VALUE_TO IS NULL )
248                 AND (  p_PRICING_ATTR_VALUE_TO IS NULL )))
249        AND (    ( Recinfo.COMPARISON_OPERATOR = p_COMPARISON_OPERATOR)
250             OR (    ( Recinfo.COMPARISON_OPERATOR IS NULL )
251                 AND (  p_COMPARISON_OPERATOR IS NULL )))
252        AND (    ( Recinfo.FLEX_TITLE = p_FLEX_TITLE)
253             OR (    ( Recinfo.FLEX_TITLE IS NULL )
254                 AND (  p_FLEX_TITLE IS NULL )))
255 */
256        ) then
257        return;
258    else
259        FND_MESSAGE.SET_NAME('FND', 'FORM_RECORD_CHANGED');
260        APP_EXCEPTION.RAISE_EXCEPTION;
261    End If;
262 END Lock_Row;
263 
264 End ASO_PRICE_ADJ_ATTRIBS_PKG;