[Home] [Help]
PACKAGE BODY: APPS.HZ_MATCH_RULE_CONDITIONS_PKG
Source
1 PACKAGE BODY HZ_MATCH_RULE_CONDITIONS_PKG AS
2 /*$Header: ARHMSCTB.pls 120.0 2005/05/25 21:08:58 achung noship $ */
3
4 PROCEDURE Insert_Row (
5 X_MATCH_RULE_SET_CONDITION_ID IN OUT NOCOPY NUMBER,
6 X_MATCH_RULE_SET_ID IN NUMBER,
7 X_CONDITION_MATCH_RULE_ID IN NUMBER,
8 X_ATTRIBUTE_ID IN NUMBER,
9 X_OPERATION IN VARCHAR2,
10 X_VALUE IN VARCHAR2,
11 X_RANK IN NUMBER,
12 X_BETWEEN_CONDITION_BIN_OP IN NUMBER,
13 X_OBJECT_VERSION_NUMBER IN NUMBER,
14 X_CREATED_BY_MODULE IN VARCHAR2,
15 X_APPLICATION_ID IN NUMBER
16 ) IS
17
18 BEGIN
19 INSERT INTO HZ_MATCH_RULE_CONDITIONS(
20 MATCH_RULE_SET_CONDITION_ID,
21 MATCH_RULE_SET_ID,
22 CONDITION_MATCH_RULE_ID,
23 ATTRIBUTE_ID,
24 OPERATION,
25 VALUE,
26 RANK ,
27 BETWEEN_CONDITION_BIN_OP ,
28 REQUEST_ID,
29 PROGRAM_APPLICATION_ID,
30 PROGRAM_ID,
31 PROGRAM_UPDATE_DATE,
32 CREATED_BY,
33 CREATION_DATE,
34 LAST_UPDATE_LOGIN,
35 LAST_UPDATE_DATE,
36 LAST_UPDATED_BY,
37 OBJECT_VERSION_NUMBER,
38 CREATED_BY_MODULE,
39 APPLICATION_ID )
40 VALUES
41 (DECODE(X_MATCH_RULE_SET_CONDITION_ID, FND_API.G_MISS_NUM, HZ_MATCH_RULE_CONDITIONS_S.NEXTVAL, NULL,
42 HZ_MATCH_RULE_CONDITIONS_S.NEXTVAL, X_MATCH_RULE_SET_CONDITION_ID ),
43 DECODE(X_MATCH_RULE_SET_ID, FND_API.G_MISS_NUM, NULL,X_MATCH_RULE_SET_ID),
44 DECODE(X_CONDITION_MATCH_RULE_ID,FND_API.G_MISS_NUM,NULL,X_CONDITION_MATCH_RULE_ID ),
45 DECODE(X_ATTRIBUTE_ID,FND_API.G_MISS_NUM,NULL,X_ATTRIBUTE_ID ),
46 DECODE(X_OPERATION,FND_API.G_MISS_CHAR,NULL,X_OPERATION),
47 DECODE(X_VALUE,FND_API.G_MISS_CHAR,NULL,X_VALUE),
48 DECODE(X_RANK,FND_API.G_MISS_NUM,NULL,X_RANK),
49 DECODE(X_BETWEEN_CONDITION_BIN_OP,FND_API.G_MISS_NUM,NULL,X_BETWEEN_CONDITION_BIN_OP),
50 HZ_UTILITY_V2PUB.REQUEST_ID,
51 HZ_UTILITY_V2PUB.PROGRAM_APPLICATION_ID,
52 HZ_UTILITY_V2PUB.PROGRAM_ID,
53 HZ_UTILITY_V2PUB.PROGRAM_UPDATE_DATE,
54 HZ_UTILITY_V2PUB.CREATED_BY,
55 HZ_UTILITY_V2PUB.CREATION_DATE,
56 HZ_UTILITY_V2PUB.LAST_UPDATE_LOGIN,
57 HZ_UTILITY_V2PUB.LAST_UPDATE_DATE,
58 HZ_UTILITY_V2PUB.LAST_UPDATED_BY,
59 DECODE( X_OBJECT_VERSION_NUMBER, FND_API.G_MISS_NUM, NULL, X_OBJECT_VERSION_NUMBER ),
60 DECODE( X_CREATED_BY_MODULE, FND_API.G_MISS_CHAR, NULL, X_CREATED_BY_MODULE ),
61 DECODE( X_APPLICATION_ID, FND_API.G_MISS_NUM, NULL, X_APPLICATION_ID )
62 ) returning MATCH_RULE_SET_CONDITION_ID INTO X_MATCH_RULE_SET_CONDITION_ID;
63
64 END Insert_Row;
65
66
67
68 PROCEDURE Update_Row (
69 X_MATCH_RULE_SET_CONDITION_ID IN NUMBER,
70 X_MATCH_RULE_SET_ID IN NUMBER,
71 X_CONDITION_MATCH_RULE_ID IN NUMBER,
72 X_ATTRIBUTE_ID IN NUMBER,
73 X_OPERATION IN VARCHAR2,
74 X_VALUE IN VARCHAR2,
75 X_RANK IN NUMBER,
76 X_BETWEEN_CONDITION_BIN_OP IN NUMBER,
77 X_OBJECT_VERSION_NUMBER IN NUMBER,
78 X_CREATED_BY_MODULE IN VARCHAR2,
79 X_APPLICATION_ID IN NUMBER
80 ) IS
81 BEGIN
82 UPDATE HZ_MATCH_RULE_CONDITIONS SET
83 /*MATCH_RULE_SET_ID = DECODE( X_MATCH_RULE_SET_ID, NULL, MATCH_RULE_SET_ID,FND_API.G_MISS_NUM,
84 NULL,MATCH_RULE_SET_ID),
85 */
86 CONDITION_MATCH_RULE_ID = DECODE(X_CONDITION_MATCH_RULE_ID,NULL,CONDITION_MATCH_RULE_ID,
87 FND_API.G_MISS_NUM,NULL,X_CONDITION_MATCH_RULE_ID),
88 ATTRIBUTE_ID = DECODE(X_ATTRIBUTE_ID,NULL,ATTRIBUTE_ID,FND_API.G_MISS_NUM,NULL,
89 X_ATTRIBUTE_ID),
90 OPERATION = DECODE(X_OPERATION,NULL,OPERATION,FND_API.G_MISS_CHAR,NULL,X_OPERATION),
91 VALUE = DECODE(X_VALUE,NULL,VALUE,FND_API.G_MISS_CHAR,NULL,X_VALUE),
92 RANK = DECODE(X_RANK,NULL,RANK,FND_API.G_MISS_NUM,NULL,X_RANK),
93 BETWEEN_CONDITION_BIN_OP = DECODE(X_BETWEEN_CONDITION_BIN_OP,NULL,BETWEEN_CONDITION_BIN_OP,
94 FND_API.G_MISS_CHAR,NULL,X_BETWEEN_CONDITION_BIN_OP),
95 LAST_UPDATE_DATE = HZ_UTILITY_V2PUB.LAST_UPDATE_DATE,
96 LAST_UPDATED_BY = HZ_UTILITY_V2PUB.LAST_UPDATED_BY,
97 LAST_UPDATE_LOGIN = HZ_UTILITY_V2PUB.LAST_UPDATE_LOGIN,
98 REQUEST_ID = HZ_UTILITY_V2PUB.REQUEST_ID,
99 PROGRAM_APPLICATION_ID = HZ_UTILITY_V2PUB.PROGRAM_APPLICATION_ID,
100 PROGRAM_ID = HZ_UTILITY_V2PUB.PROGRAM_ID,
101 PROGRAM_UPDATE_DATE = HZ_UTILITY_V2PUB.PROGRAM_UPDATE_DATE,
102 OBJECT_VERSION_NUMBER = DECODE(X_OBJECT_VERSION_NUMBER,NULL,OBJECT_VERSION_NUMBER,FND_API.G_MISS_NUM,NULL,X_OBJECT_VERSION_NUMBER),
103 CREATED_BY_MODULE = DECODE(X_CREATED_BY_MODULE,NULL,CREATED_BY_MODULE,FND_API.G_MISS_CHAR,
104 NULL,X_CREATED_BY_MODULE),
105 APPLICATION_ID = DECODE(X_APPLICATION_ID,NULL,APPLICATION_ID,FND_API.G_MISS_NUM,NULL,X_APPLICATION_ID)
106 WHERE MATCH_RULE_SET_CONDITION_ID=X_MATCH_RULE_SET_CONDITION_ID;
107
108 IF ( SQL%NOTFOUND ) THEN
109 RAISE NO_DATA_FOUND;
110 END IF;
111 END UPDATE_ROW;
112
113 PROCEDURE LOCK_ROW (
114 X_MATCH_RULE_SET_CONDITION_ID IN NUMBER,
115 X_OBJECT_VERSION_NUMBER IN NUMBER
116 ) IS
117 CURSOR C IS SELECT OBJECT_VERSION_NUMBER
118 FROM HZ_MATCH_RULE_CONDITIONS
119 WHERE MATCH_RULE_SET_CONDITION_ID = X_MATCH_RULE_SET_CONDITION_ID
120 FOR UPDATE OF MATCH_RULE_SET_CONDITION_ID NOWAIT;
121 RECINFO C%ROWTYPE;
122
123 BEGIN
124 OPEN C;
125 FETCH C INTO RECINFO;
126 IF (C%NOTFOUND) THEN
127 CLOSE C;
128 FND_MESSAGE.SET_NAME('fnd', 'form_record_deleted');
129 APP_EXCEPTION.RAISE_EXCEPTION;
130 END IF;
131 CLOSE C;
132 IF(( RECINFO.OBJECT_VERSION_NUMBER IS NULL AND X_OBJECT_VERSION_NUMBER IS NULL )
133 OR ((RECINFO.OBJECT_VERSION_NUMBER IS NOT NULL AND X_OBJECT_VERSION_NUMBER IS NOT NULL) AND
134 (RECINFO.OBJECT_VERSION_NUMBER = X_OBJECT_VERSION_NUMBER) )
135 ) THEN
136 NULL;
137 ELSE
138 FND_MESSAGE.SET_NAME('FND', 'FORM_RECORD_CHANGED');
139 APP_EXCEPTION.RAISE_EXCEPTION;
140 END IF;
141 RETURN;
142 END LOCK_ROW;
143
144
145
146 PROCEDURE DELETE_ROW (
147 X_MATCH_RULE_SET_CONDITION_ID in NUMBER
148 ) IS
149 BEGIN
150 DELETE FROM HZ_MATCH_RULE_CONDITIONS
151 WHERE MATCH_RULE_SET_CONDITION_ID = X_MATCH_RULE_SET_CONDITION_ID;
152
153 IF (SQL%NOTFOUND) THEN
154 RAISE NO_DATA_FOUND;
155 END IF;
156 END DELETE_ROW;
157
158 END HZ_MATCH_RULE_CONDITIONS_PKG;
159
160