[Home] [Help]
PACKAGE BODY: APPS.HZ_DUP_SET_PARTIES_PKG
Source
1 PACKAGE BODY HZ_DUP_SET_PARTIES_PKG AS
2 /*$Header: ARHDQDPB.pls 120.5 2005/07/08 04:37:45 rchanamo noship $ */
3
4 PROCEDURE Insert_Row(
5 p_DUP_PARTY_ID IN OUT NOCOPY NUMBER,
6 p_DUP_SET_ID IN OUT NOCOPY NUMBER,
7 p_merge_flag VARCHAR2,
8 p_not_dup VARCHAR2,
9 p_SCORE NUMBER,
10 p_MERGE_SEQ_ID NUMBER,
11 p_MERGE_BATCH_ID NUMBER,
12 p_MERGE_BATCH_NAME VARCHAR2,
13 p_CREATED_BY NUMBER,
14 p_CREATION_DATE DATE,
15 p_LAST_UPDATE_LOGIN NUMBER,
16 p_LAST_UPDATE_DATE DATE,
17 p_LAST_UPDATED_BY NUMBER)
18 IS
19 CURSOR c_dup_batch IS SELECT DUP_BATCH_ID
20 FROM HZ_DUP_SETS WHERE DUP_SET_ID = p_dup_set_id;
21 l_dup_set_batch_id NUMBER(15);
22
23 BEGIN
24 --Start of Bug No: 4244529
25 OPEN c_dup_batch;
26 FETCH c_dup_batch INTO l_dup_set_batch_id;
27 IF(c_dup_batch%NOTFOUND)THEN
28 --Raise the error.
29 FND_MESSAGE.SET_NAME('AR', 'HZ_DUP_SET_NOT_FOUND');
30 APP_EXCEPTION.RAISE_EXCEPTION;
31 END IF;
32 CLOSE c_dup_batch;
33 --End of Bug No: 4244529
34 INSERT INTO HZ_DUP_SET_PARTIES(
35 DUP_PARTY_ID,
36 DUP_SET_ID,
37 MERGE_FLAG,
38 NOT_DUP,
39 SCORE,
40 MERGE_SEQ_ID ,
41 MERGE_BATCH_ID,
42 MERGE_BATCH_NAME ,
43 CREATED_BY,
44 CREATION_DATE,
45 LAST_UPDATE_LOGIN,
46 LAST_UPDATE_DATE,
47 LAST_UPDATED_BY,
48 DUP_SET_BATCH_ID --Bug No: 4244529
49 )
50 VALUES (
51 p_DUP_PARTY_ID,
52 p_DUP_SET_ID,
53 decode(p_MERGE_FLAG, FND_API.G_MISS_CHAR, NULL,
54 p_MERGE_FLAG),
55 decode(p_NOT_DUP, FND_API.G_MISS_CHAR, NULL,
56 p_NOT_DUP),
57 decode(p_SCORE, FND_API.G_MISS_NUM, NULL,
58 p_SCORE),
59 decode(p_MERGE_SEQ_ID, FND_API.G_MISS_NUM, NULL,
60 p_MERGE_SEQ_ID),
61 decode(p_MERGE_BATCH_ID, FND_API.G_MISS_NUM, NULL,
62 p_MERGE_BATCH_ID),
63 decode(p_MERGE_BATCH_NAME, FND_API.G_MISS_CHAR, NULL,
64 p_MERGE_BATCH_NAME),
65 hz_utility_v2pub.created_by,
66 hz_utility_v2pub.creation_date,
67 hz_utility_v2pub.last_update_login,
68 hz_utility_v2pub.last_update_date,
69 hz_utility_v2pub.last_updated_by,
70 l_dup_set_batch_id --Bug No: 4244529
71 );
72
73 End Insert_Row;
74
75 PROCEDURE Update_Row(
76 p_DUP_PARTY_ID NUMBER,
77 p_DUP_SET_ID NUMBER,
78 p_merge_flag VARCHAR2,
79 p_NOT_DUP VARCHAR2,
80 p_SCORE NUMBER,
81 p_MERGE_SEQ_ID NUMBER,
82 p_MERGE_BATCH_ID NUMBER,
83 p_MERGE_BATCH_NAME VARCHAR2,
84 p_CREATED_BY NUMBER,
85 p_CREATION_DATE DATE,
86 p_LAST_UPDATE_LOGIN NUMBER,
87 p_LAST_UPDATE_DATE DATE,
88 p_LAST_UPDATED_BY NUMBER)
89 IS
90 BEGIN
91 UPDATE HZ_DUP_SET_PARTIES
92 SET
93 MERGE_FLAG = decode(p_MERGE_FLAG, FND_API.G_MISS_CHAR, MERGE_FLAG,
94 p_MERGE_FLAG),
95 NOT_DUP = decode(p_NOT_DUP, FND_API.G_MISS_CHAR, NOT_DUP,
96 p_NOT_DUP),
97 SCORE = decode(p_SCORE, FND_API.G_MISS_NUM, SCORE,
98 p_SCORE),
99 MERGE_SEQ_ID = decode(p_MERGE_SEQ_ID , FND_API.G_MISS_NUM, MERGE_SEQ_ID,
100 p_MERGE_SEQ_ID),
101 MERGE_BATCH_ID = decode(p_MERGE_BATCH_ID, FND_API.G_MISS_NUM, MERGE_BATCH_ID,
102 p_MERGE_BATCH_ID),
103 MERGE_BATCH_NAME = decode(p_MERGE_BATCH_NAME, FND_API.G_MISS_CHAR, MERGE_BATCH_NAME,
104 p_MERGE_BATCH_NAME),
105 created_by = created_by,
106 creation_date= creation_date,
107 last_update_login= hz_utility_v2pub.last_update_login,
108 last_update_date= hz_utility_v2pub.last_update_date,
109 last_updated_by= hz_utility_v2pub.last_updated_by
110 where DUP_PARTY_ID = p_DUP_PARTY_ID
111 and DUP_SET_ID = p_DUP_SET_ID;
112
113 If (SQL%NOTFOUND) then
114 RAISE NO_DATA_FOUND;
115 End If;
116 END Update_Row;
117
118 PROCEDURE Delete_Row(p_DUP_PARTY_ID NUMBER, p_DUP_SET_ID NUMBER) IS
119 BEGIN
120 DELETE FROM hz_dup_set_parties
121 where DUP_PARTY_ID = p_DUP_PARTY_ID
122 and DUP_SET_ID = p_DUP_SET_ID;
123
124 If (SQL%NOTFOUND) then
125 RAISE NO_DATA_FOUND;
126 End If;
127
128 END Delete_Row;
129
130 PROCEDURE Lock_Row(
131 p_DUP_PARTY_ID IN OUT NOCOPY NUMBER,
132 p_DUP_SET_ID IN OUT NOCOPY NUMBER,
133 p_MERGE_FLAG VARCHAR2,
134 p_NOT_DUP VARCHAR2,
135 p_SCORE NUMBER,
136 p_MERGE_SEQ_ID NUMBER,
137 p_MERGE_BATCH_ID NUMBER,
138 p_MERGE_BATCH_NAME VARCHAR2,
139 p_CREATED_BY NUMBER,
140 p_CREATION_DATE DATE,
141 p_LAST_UPDATE_LOGIN NUMBER,
142 p_LAST_UPDATE_DATE DATE,
143 p_LAST_UPDATED_BY NUMBER)
144 IS
145 CURSOR C IS
146 SELECT *
147 FROM hz_dup_set_parties
148 where DUP_PARTY_ID = p_DUP_PARTY_ID
149 and DUP_SET_ID = p_DUP_SET_ID
150 FOR UPDATE OF dup_party_id , dup_set_id NOWAIT;
151 Recinfo C%ROWTYPE;
152 BEGIN
153 OPEN C;
154 FETCH C INTO Recinfo;
155 If (C%NOTFOUND) then
156 CLOSE C;
157 FND_MESSAGE.SET_NAME('FND', 'FORM_RECORD_DELETED');
158 APP_EXCEPTION.RAISE_EXCEPTION;
159 End If;
160 CLOSE C;
161
162 if (
163 (Recinfo.DUP_PARTY_ID = p_DUP_PARTY_ID)
164 AND (Recinfo.DUP_SET_ID = p_DUP_SET_ID)
165 AND ( (Recinfo.SCORE = p_SCORE)
166 OR ( (Recinfo.SCORE IS NULL)
167 AND (p_SCORE IS NULL )))
168 AND ( (Recinfo.MERGE_FLAG = p_MERGE_FLAG)
169 OR ( (Recinfo.MERGE_FLAG IS NULL)
170 AND (p_MERGE_FLAG IS NULL )))
171 AND ( (Recinfo.NOT_DUP = p_NOT_DUP)
172 OR ( (Recinfo.NOT_DUP IS NULL)
173 AND (p_NOT_DUP IS NULL )))
174 AND ( (Recinfo.MERGE_SEQ_ID = p_MERGE_SEQ_ID)
175 OR ( (Recinfo.MERGE_SEQ_ID IS NULL)
176 AND (p_MERGE_SEQ_ID IS NULL )))
177 AND ( (Recinfo.MERGE_BATCH_ID = p_MERGE_BATCH_ID)
178 OR ( (Recinfo.MERGE_BATCH_ID IS NULL)
179 AND (p_MERGE_BATCH_ID IS NULL )))
180 AND ( (Recinfo.MERGE_BATCH_NAME = p_MERGE_BATCH_NAME)
181 OR ( (Recinfo.MERGE_BATCH_NAME IS NULL)
182 AND (p_MERGE_BATCH_NAME IS NULL )))
183 AND ( (Recinfo.CREATED_BY = p_CREATED_BY )
184 OR ( (Recinfo.CREATED_BY IS NULL)
185 AND (p_CREATED_BY IS NULL )))
186 AND ( (Recinfo.CREATION_DATE = p_CREATION_DATE)
187 OR ( (Recinfo.CREATION_DATE IS NULL)
188 AND (p_CREATION_DATE IS NULL )))
189 AND ( (Recinfo.LAST_UPDATE_LOGIN= p_LAST_UPDATE_LOGIN)
190 OR ( (Recinfo.LAST_UPDATE_LOGIN IS NULL)
191 AND (p_LAST_UPDATE_LOGIN IS NULL )))
192 AND ( ( Recinfo.LAST_UPDATE_DATE = p_LAST_UPDATE_DATE)
193 OR ( ( Recinfo.LAST_UPDATE_DATE IS NULL )
194 AND ( p_LAST_UPDATE_DATE IS NULL )))
195 AND ( (Recinfo.LAST_UPDATED_BY = p_LAST_UPDATED_BY)
196 OR ( (Recinfo.LAST_UPDATED_BY IS NULL)
197 AND (p_LAST_UPDATED_BY IS NULL )))
198 ) then
199 return;
200 else
201 FND_MESSAGE.SET_NAME('FND', 'FORM_RECORD_DELETED');
202 APP_EXCEPTION.RAISE_EXCEPTION;
203 End If;
204 END Lock_Row;
205 END HZ_DUP_SET_PARTIES_PKG;