DBA Data[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