DBA Data[Home] [Help]

PACKAGE BODY: APPS.HZ_DUP_BATCH_PKG

Source


1 PACKAGE BODY HZ_DUP_BATCH_PKG AS
2 /*$Header: ARHDQDBB.pls 115.8 2004/01/09 20:09:51 acng ship $ */
3 
4 PROCEDURE Insert_Row(
5                       px_DUP_BATCH_ID              IN OUT NOCOPY  NUMBER,
6 	              p_DUP_BATCH_NAME             VARCHAR2,
7                       p_MATCH_RULE_ID                     NUMBER,
8                       p_APPLICATION_ID               NUMBER,
9                       p_REQUEST_TYPE                 VARCHAR2,
10  		      p_CREATED_BY                 NUMBER,
11                       p_CREATION_DATE              DATE,
12                       p_LAST_UPDATE_LOGIN          NUMBER,
13                       p_LAST_UPDATE_DATE           DATE,
14                       p_LAST_UPDATED_BY            NUMBER) IS
15 
16  CURSOR C2 IS SELECT  HZ_DUP_BATCH_s.nextval FROM sys.dual;
17 
18  BEGIN
19 
20    IF (px_DUP_BATCH_ID IS NULL) OR (px_DUP_BATCH_ID = 0) OR (px_DUP_BATCH_ID = FND_API.G_MISS_NUM) THEN
21        OPEN C2;
22        FETCH C2 INTO px_DUP_BATCH_ID;
23        CLOSE C2;
24 
25    END IF;
26 
27    INSERT INTO HZ_DUP_BATCH(
28                 DUP_BATCH_ID,
29                 DUP_BATCH_NAME,
30                 MATCH_RULE_ID,
31                 APPLICATION_ID,
32                 REQUEST_TYPE,
33                 CREATED_BY,
34                 CREATION_DATE,
35                 LAST_UPDATE_LOGIN,
36                 LAST_UPDATE_DATE,
37                 LAST_UPDATED_BY
38                )
39                VALUES (
40                 px_DUP_BATCH_ID,
41                 decode(p_DUP_BATCH_NAME, FND_API.G_MISS_CHAR, NULL,
42                        p_DUP_BATCH_NAME||' - '||px_DUP_BATCH_ID),
43                 decode(p_MATCH_RULE_ID, FND_API.G_MISS_NUM, NULL,
44                                                    p_MATCH_RULE_ID),
45                 decode(p_APPLICATION_ID, FND_API.G_MISS_NUM, NULL,
46                                                    p_APPLICATION_ID),
47                 decode(p_REQUEST_TYPE, FND_API.G_MISS_CHAR, NULL,
48                                                    p_REQUEST_TYPE),
49                 HZ_UTILITY_V2PUB.CREATED_BY,
50                 HZ_UTILITY_V2PUB.CREATION_DATE,
51                 HZ_UTILITY_V2PUB.LAST_UPDATE_LOGIN,
52                 HZ_UTILITY_V2PUB.LAST_UPDATE_DATE,
53                 HZ_UTILITY_V2PUB.LAST_UPDATED_BY
54               );
55 
56 End Insert_Row;
57 
58 PROCEDURE Update_Row(
59                       p_DUP_BATCH_ID                NUMBER,
60 	                  p_DUP_BATCH_NAME              VARCHAR2,
61                       p_CREATED_BY                        NUMBER,
62                       p_CREATION_DATE                     DATE,
63                       p_LAST_UPDATE_LOGIN                 NUMBER,
64                       p_LAST_UPDATE_DATE                  DATE,
65                       p_LAST_UPDATED_BY                   NUMBER
66    ) IS
67    BEGIN
68    UPDATE HZ_DUP_BATCH
69    SET
70       DUP_BATCH_NAME   = decode(p_DUP_BATCH_NAME, FND_API.G_MISS_CHAR, NULL,
71                                       p_DUP_BATCH_NAME),
72       CREATED_BY             = CREATED_BY,
73       CREATION_DATE          = CREATION_DATE,
74       LAST_UPDATE_LOGIN      = HZ_UTILITY_V2PUB.LAST_UPDATE_LOGIN,
75       LAST_UPDATE_DATE       = HZ_UTILITY_V2PUB.LAST_UPDATE_DATE,
76       LAST_UPDATED_BY        = HZ_UTILITY_V2PUB.LAST_UPDATED_BY
77     where DUP_batch_id = p_DUP_batch_id;
78 
79 
80     If (SQL%NOTFOUND) then
81         RAISE NO_DATA_FOUND;
82     End If;
83  END Update_Row;
84 
85 PROCEDURE Delete_Row(p_DUP_batch_id NUMBER) IS
86 BEGIN
87    DELETE FROM hz_DUP_batch
88    where DUP_batch_id = p_DUP_batch_id ;
89 
90    If (SQL%NOTFOUND) then
91        RAISE NO_DATA_FOUND;
92    End If;
93  END Delete_Row;
94 
95 PROCEDURE Lock_Row(
96                       p_DUP_BATCH_ID       IN OUT NOCOPY  NUMBER,
97 	                  p_DUP_BATCH_NAME              VARCHAR2,
98                       p_CREATED_BY                        NUMBER,
99                       p_CREATION_DATE                     DATE,
100                       p_LAST_UPDATE_LOGIN                 NUMBER,
101                       p_LAST_UPDATE_DATE                  DATE,
102                       p_LAST_UPDATED_BY                   NUMBER
103  ) IS
104  CURSOR C IS
105  SELECT *
106  FROM hz_DUP_batch
107  WHERE DUP_batch_id  = p_DUP_batch_id
108  FOR UPDATE OF DUP_batch_id NOWAIT;
109  Recinfo C%ROWTYPE;
110  BEGIN
111     OPEN C;
112     FETCH C INTO Recinfo;
113     If (C%NOTFOUND) then
114         CLOSE C;
115         FND_MESSAGE.SET_NAME('FND', 'FORM_RECORD_DELETED');
116         APP_EXCEPTION.RAISE_EXCEPTION;
117     End If;
118     CLOSE C;
119 
120     if (
121           (   (Recinfo.DUP_BATCH_ID = p_DUP_BATCH_ID)
122            OR (     (Recinfo.DUP_BATCH_ID IS NULL)
123                 AND  (p_DUP_BATCH_ID IS NULL )))
124     AND   (   (Recinfo.DUP_BATCH_NAME = p_DUP_BATCH_NAME)
125            OR (      (Recinfo.DUP_BATCH_NAME IS NULL)
126                 AND  (p_DUP_BATCH_NAME IS NULL )))
127     AND    (     (Recinfo.CREATED_BY = p_CREATED_BY )
128              OR (     (Recinfo.CREATED_BY IS NULL)
129                  AND (p_CREATED_BY IS NULL )))
130     AND    (     (Recinfo.CREATION_DATE = p_CREATION_DATE)
131              OR (     (Recinfo.CREATION_DATE IS NULL)
132                  AND (p_CREATION_DATE  IS NULL )))
133     AND    (     (Recinfo.LAST_UPDATE_LOGIN= p_LAST_UPDATE_LOGIN)
134              OR (     (Recinfo.LAST_UPDATE_LOGIN  IS NULL)
135                  AND (p_LAST_UPDATE_LOGIN  IS NULL )))
136     AND    (     (Recinfo.LAST_UPDATE_DATE = p_LAST_UPDATE_DATE)
137              OR (     (Recinfo.LAST_UPDATE_DATE   IS NULL)
138                  AND (p_LAST_UPDATE_DATE  IS NULL )))
139     AND    (      (Recinfo.LAST_UPDATED_BY = p_LAST_UPDATED_BY)
140              OR (     (Recinfo.LAST_UPDATED_BY   IS NULL)
141                   AND (p_LAST_UPDATED_BY   IS NULL )))
142       ) then
143        return;
144    else
145        FND_MESSAGE.SET_NAME('FND', 'FORM_RECORD_DELETED');
146        APP_EXCEPTION.RAISE_EXCEPTION;
147    End If;
148 END Lock_Row;
149 END HZ_DUP_BATCH_PKG;