DBA Data[Home] [Help]

PACKAGE BODY: APPS.IGI_DUN_LETTER_SETS_PKG

Source


1 PACKAGE BODY IGI_DUN_LETTER_SETS_PKG as
2   /* $Header: igidunob.pls 120.4.12000000.1 2007/10/26 13:30:19 gigupta ship $ */
3 
4 --following variables added for bug 3199481: fnd logging changes: sdixit
5    l_debug_level number	:=	FND_LOG.G_CURRENT_RUNTIME_LEVEL;
6    l_state_level number	:=	FND_LOG.LEVEL_STATEMENT;
7    l_proc_level number	:=	FND_LOG.LEVEL_PROCEDURE;
8    l_event_level number	:=	FND_LOG.LEVEL_EVENT;
9    l_excep_level number	:=	FND_LOG.LEVEL_EXCEPTION;
10    l_error_level number	:=	FND_LOG.LEVEL_ERROR;
11    l_unexp_level number	:=	FND_LOG.LEVEL_UNEXPECTED;
12 
13     PROCEDURE Insert_Row(X_Rowid                IN OUT NOCOPY VARCHAR2,
14         X_Dunning_Letter_Set_Id              NUMBER,
15         X_Use_Dunning_Flag                   VARCHAR2,
16         X_Charge_Per_Invoice_Flag            VARCHAR2,
17         X_Created_By                         NUMBER,
18         X_Creation_Date                      DATE,
19         X_Last_Updated_By                    NUMBER,
20         X_Last_Update_Date                   DATE,
21         X_Last_Update_Login                  NUMBER
22 
23 
24       ) IS
25         CURSOR C IS SELECT rowid FROM igi_dun_letter_sets
26               WHERE dunning_letter_set_id = X_Dunning_Letter_Set_Id;
27 
28 
29       BEGIN
30 
31 
32        INSERT INTO igi_dun_letter_sets(
33         dunning_letter_set_id,
34         use_dunning_flag,
35         charge_per_invoice_flag,
36         created_by,
37         creation_date,
38         last_updated_by,
39         last_update_date,
40         last_update_login
41               ) VALUES (
42         X_Dunning_Letter_Set_Id,
43         X_Use_Dunning_Flag,
44         X_Charge_Per_Invoice_Flag,
45         X_Created_By,
46         X_Creation_Date,
47         X_Last_Updated_By,
48         X_Last_Update_Date,
49         X_Last_Update_Login
50 
51              );
52      OPEN C;
53      FETCH C INTO X_Rowid;
54      if (C%NOTFOUND) then
55        CLOSE C;
56        Raise NO_DATA_FOUND;
57      end if;
58      CLOSE C;
59    END Insert_Row;
60 
61 
62 
63      PROCEDURE Lock_Row(X_Rowid                            VARCHAR2,
64         X_Dunning_Letter_Set_Id              NUMBER,
65         X_Use_Dunning_Flag                   VARCHAR2,
66         X_Charge_Per_Invoice_Flag            VARCHAR2
67 
68      ) IS
69        CURSOR C IS
70           SELECT *
71          FROM   igi_dun_letter_sets
72          WHERE  rowid = X_Rowid
73          FOR UPDATE of Dunning_Letter_Set_Id NOWAIT;
74      Recinfo C%ROWTYPE;
75 
76 
77    BEGIN
78      OPEN C;
79      FETCH C INTO Recinfo;
80      if (C%NOTFOUND) then
81        CLOSE C;
82        FND_MESSAGE.Set_Name('FND', 'FORM_RECORD_DELETED');
83    --bug 3199481 fnd logging changes: sdixit: start block
84        IF (l_excep_level >=  l_debug_level ) THEN
85           FND_LOG.MESSAGE (l_excep_level , 'igi.plsql.igidunob.IGI_DUN_LETTER_SETS_PKG.Lock_Row',FALSE);
86        END IF;
87    --bug 3199481 fnd logging changes: sdixit: end block
88        APP_EXCEPTION.Raise_Exception;
89      end if;
90      CLOSE C;
91      if (
92              (Recinfo.dunning_letter_set_id =  X_Dunning_Letter_Set_Id)
93          AND (Recinfo.use_dunning_flag =  X_Use_Dunning_Flag)
94          AND (Recinfo.charge_per_invoice_flag =  X_Charge_Per_Invoice_Flag)
95 
96         ) then
97         return;
98       else
99         FND_MESSAGE.Set_Name('FND', 'FORM_RECORD_CHANGED');
100    --bug 3199481 fnd logging changes: sdixit: start block
101        IF (l_excep_level >=  l_debug_level ) THEN
102           FND_LOG.MESSAGE (l_excep_level , 'igi.plsql.igidunob.IGI_DUN_LETTER_SETS_PKG.Lock_Row',FALSE);
103        END IF;
104    --bug 3199481 fnd logging changes: sdixit: end block
105         APP_EXCEPTION.Raise_Exception;
106       end if;
107     END Lock_Row;
108 
109 
110       PROCEDURE Update_Row(X_Rowid                          VARCHAR2,
111          X_Dunning_Letter_Set_Id               NUMBER,
112          X_Use_Dunning_Flag                    VARCHAR2,
113          X_Charge_Per_Invoice_Flag             VARCHAR2,
114          X_Last_Updated_By                     NUMBER,
115          X_Last_Update_Date                    DATE,
116          X_Last_Update_Login                   NUMBER
117 
118      ) IS
119      BEGIN
120        UPDATE igi_dun_letter_sets
121        SET
122          dunning_letter_set_id              =  X_Dunning_Letter_Set_Id,
123          use_dunning_flag                   =  X_Use_Dunning_Flag,
124          charge_per_invoice_flag            =  X_Charge_Per_Invoice_Flag,
125          last_updated_by                    =  X_Last_Updated_By,
126          last_update_date                   =  X_Last_Update_Date,
127          last_update_login                  =  X_Last_Update_Login
128        WHERE rowid = X_Rowid;
129 
130        if (SQL%NOTFOUND) then
131          Raise NO_DATA_FOUND;
132        end if;
133      END Update_Row;
134 
135      PROCEDURE Delete_Row(X_Rowid VARCHAR2) IS
136      BEGIN
137        DELETE FROM igi_dun_letter_sets
138        WHERE rowid = X_Rowid;
139 
140        if (SQL%NOTFOUND) then
141          Raise NO_DATA_FOUND;
142        end if;
143      END Delete_Row;
144 
145 
146   END IGI_DUN_LETTER_SETS_PKG;