DBA Data[Home] [Help]

PACKAGE BODY: APPS.PSB_BUDGET_REVISION_ACCTS_PVT

Source


1 PACKAGE BODY PSB_BUDGET_REVISION_ACCTS_PVT AS
2 /* $Header: PSBBACCB.pls 115.7 2002/11/18 10:56:58 msuram ship $ */
3 
4   G_PKG_NAME CONSTANT VARCHAR2(30):= 'PSB_BUDGET_REVISION_ACCTS_PVT';
5 
6 
7 /*=======================================================================+
8  |                       PROCEDURE Insert_Row                            |
9  +=======================================================================*/
10 PROCEDURE Insert_Row
11 (
12   p_api_version                 IN      NUMBER,
13   p_init_msg_list               IN      VARCHAR2 := FND_API.G_FALSE,
14   p_commit                      IN      VARCHAR2 := FND_API.G_FALSE,
15   p_validation_level            IN      NUMBER   := FND_API.G_VALID_LEVEL_FULL,
16   p_return_status              OUT  NOCOPY      VARCHAR2,
17   p_msg_count                  OUT  NOCOPY      NUMBER,
18   p_msg_data                   OUT  NOCOPY      VARCHAR2,
19   --
20   p_budget_revision_id              IN      NUMBER   := FND_API.G_MISS_NUM,
21   p_budget_revision_acct_line_id IN OUT  NOCOPY  NUMBER,
22   p_code_combination_id             IN      NUMBER,
23   p_budget_group_id                 IN      NUMBER,
24   p_gl_period_name                  IN      VARCHAR2,
25   p_gl_budget_version_id            IN      NUMBER := FND_API.G_MISS_NUM,
26   p_currency_code                   IN      VARCHAR2,
27   p_budget_balance                  IN      NUMBER,
28   p_revision_type                   IN      VARCHAR2,
29   p_revision_value_type             IN      VARCHAR2,
30   p_revision_amount                 IN      NUMBER,
31   p_funds_status_code               IN      VARCHAR2,
32   p_funds_result_code               IN      VARCHAR2,
33   p_funds_control_timestamp         IN      DATE,
34   p_note_id                         IN      NUMBER,
35   p_freeze_flag                     IN      VARCHAR2,
36   p_view_line_flag                  IN      VARCHAR2)
37 IS
38   --
39   l_api_name            CONSTANT VARCHAR2(30)   := 'Insert_Row';
40   l_api_version         CONSTANT NUMBER         :=  1.0;
41   --
42   l_return_status VARCHAR2(1);
43   --
44   --
45 
46 
47 BEGIN
48   --
49   SAVEPOINT Insert_Row_Pvt ;
50   --
51   IF NOT FND_API.Compatible_API_Call ( l_api_version,
52 				       p_api_version,
53 				       l_api_name,
54 				       G_PKG_NAME )
55   THEN
56     RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
57   END IF;
58 
59   --
60 
61   IF FND_API.to_Boolean ( p_init_msg_list ) THEN
62     FND_MSG_PUB.initialize ;
63   END IF;
64   --
65   p_return_status := FND_API.G_RET_STS_SUCCESS ;
66 
67     PSB_BUDGET_REVISIONS_PVT.Create_Revision_Accounts
68      ( p_api_version                     => 1.0,
69        p_init_msg_list                   => FND_API.G_FALSE,
70        p_commit                          => FND_API.G_FALSE,
71        p_validation_level                => FND_API.G_VALID_LEVEL_FULL,
72        p_return_status                   => p_return_status,
73        p_msg_count                       => p_msg_count,
74        p_msg_data                        => p_msg_data,
75        p_budget_revision_id              => p_budget_revision_id,
76        p_budget_revision_acct_line_id    => p_budget_revision_acct_line_id,
77        p_code_combination_id             => p_code_combination_id,
78        p_budget_group_id                 => p_budget_group_id,
79        p_gl_period_name                  => p_gl_period_name,
80        p_gl_budget_version_id            => p_gl_budget_version_id,
81        p_currency_code                   => p_currency_code,
82        p_budget_balance                  => p_budget_balance,
83        p_revision_type                   => p_revision_type,
84        p_revision_value_type             => p_revision_value_type,
85        p_revision_amount                 => p_revision_amount,
86        p_note_id                         => p_note_id,
87        p_funds_control_timestamp         => p_funds_control_timestamp,
88        p_funds_status_code               => p_funds_status_code,
89        p_funds_result_code               => p_funds_result_code,
90        p_freeze_flag                     => p_freeze_flag,
91        p_view_line_flag                  => p_view_line_flag);
92 
93 
94 
95       --
96   IF l_return_status = FND_API.G_RET_STS_ERROR THEN
97      fnd_message.set_name('PSB', 'BR_CREATE_ACCT_FAILED_EXC');
98      RAISE FND_API.G_EXC_ERROR ;
99   ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
100      fnd_message.set_name('PSB', 'BR_CREATE_ACCT_FAILED_UNEXC');
101      RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
102   END IF;
103 
104   --
105   IF FND_API.To_Boolean ( p_commit ) THEN
106     COMMIT WORK;
107   END iF;
108   --
109   FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
110 			      p_data  => p_msg_data );
111   --
112 EXCEPTION
113   --
114   WHEN FND_API.G_EXC_ERROR THEN
115     --
116     ROLLBACK TO Insert_Row_Pvt ;
117     p_return_status := FND_API.G_RET_STS_ERROR;
118     FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
119 				p_data  => p_msg_data );
120   --
121   WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
122     --
123     ROLLBACK TO Insert_Row_Pvt ;
124     p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
125     FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
126 				p_data  => p_msg_data );
127   --
128   WHEN OTHERS THEN
129     --
130     ROLLBACK TO Insert_Row_Pvt ;
131     p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
132     --
133     IF FND_MSG_PUB.Check_Msg_Level (FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) THEN
134       FND_MSG_PUB.Add_Exc_Msg ( G_PKG_NAME,
135 				l_api_name);
136     END if;
137     --
138     FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
139 				p_data  => p_msg_data );
140      --
141 END Insert_Row;
142 /*-------------------------------------------------------------------------*/
143 
144 PROCEDURE Update_Row
145 (
146   p_api_version                 IN      NUMBER,
147   p_init_msg_list               IN      VARCHAR2 := FND_API.G_FALSE,
148   p_commit                      IN      VARCHAR2 := FND_API.G_FALSE,
149   p_validation_level            IN      NUMBER   := FND_API.G_VALID_LEVEL_FULL,
150   p_return_status              OUT  NOCOPY      VARCHAR2,
151   p_msg_count                  OUT  NOCOPY      NUMBER,
152   p_msg_data                   OUT  NOCOPY      VARCHAR2,
153   --
154   p_budget_revision_id              IN      NUMBER   := FND_API.G_MISS_NUM,
155   p_budget_revision_acct_line_id IN OUT  NOCOPY  NUMBER,
156   p_code_combination_id             IN      NUMBER,
157   p_budget_group_id                 IN      NUMBER,
158   p_gl_period_name                  IN      VARCHAR2,
159   p_gl_budget_version_id            IN      NUMBER := FND_API.G_MISS_NUM,
160   p_currency_code                   IN      VARCHAR2,
161   p_budget_balance                  IN      NUMBER,
162   p_revision_type                   IN      VARCHAR2,
163   p_revision_value_type             IN      VARCHAR2,
164   p_revision_amount                 IN      NUMBER,
165   p_funds_status_code               IN      VARCHAR2,
166   p_funds_result_code               IN      VARCHAR2,
167   p_funds_control_timestamp         IN      DATE,
168   p_note_id                         IN      NUMBER,
169   p_freeze_flag                     IN      VARCHAR2,
170   p_view_line_flag                  IN      VARCHAR2
171 )
172 IS
173   --
174   l_api_name            CONSTANT VARCHAR2(30)   := 'Update_Row';
175   l_api_version         CONSTANT NUMBER         :=  1.0;
176   --
177   l_return_status       VARCHAR2(1);
178 
179 BEGIN
180   --
181   SAVEPOINT Update_Row_Pvt ;
182   --
183   IF NOT FND_API.Compatible_API_Call ( l_api_version,
184 				       p_api_version,
185 				       l_api_name,
186 				       G_PKG_NAME )
187   THEN
188     RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
189   END IF;
190   --
191 
192   IF FND_API.to_Boolean ( p_init_msg_list ) THEN
193     FND_MSG_PUB.initialize ;
194   END IF;
195   --
196   p_return_status := FND_API.G_RET_STS_SUCCESS ;
197   --
198 
199 
200   PSB_BUDGET_REVISIONS_PVT.Create_Revision_Accounts
201      ( p_api_version                     => 1.0,
202        p_init_msg_list                   => FND_API.G_FALSE,
203        p_commit                          => FND_API.G_FALSE,
204        p_validation_level                => FND_API.G_VALID_LEVEL_FULL,
205        p_return_status                   => p_return_status,
206        p_msg_count                       => p_msg_count,
207        p_msg_data                        => p_msg_data,
208        p_budget_revision_id              => p_budget_revision_id,
209        p_budget_revision_acct_line_id => p_budget_revision_acct_line_id,
210        p_code_combination_id             => p_code_combination_id,
211        p_budget_group_id                 => p_budget_group_id,
212        p_gl_period_name                  => p_gl_period_name,
213        p_gl_budget_version_id            => p_gl_budget_version_id,
214        p_currency_code                   => p_currency_code,
215        p_budget_balance                  => p_budget_balance,
216        p_revision_type                   => p_revision_type,
217        p_revision_value_type             => p_revision_value_type,
218        p_revision_amount                 => p_revision_amount,
219        p_note_id                         => p_note_id,
220        p_funds_control_timestamp         => p_funds_control_timestamp,
221        p_funds_status_code               => p_funds_status_code,
222        p_funds_result_code             => p_funds_result_code,
223        p_freeze_flag                     => p_freeze_flag,
224        p_view_line_flag                  => p_view_line_flag);
225 
226   IF l_return_status = FND_API.G_RET_STS_ERROR THEN
227      RAISE FND_API.G_EXC_ERROR ;
228   ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
229      RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
230   END IF;
231 
232   --
233   IF FND_API.To_Boolean ( p_commit ) THEN
234     COMMIT WORK;
235   END iF;
236   --
237   FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
238 			      p_data  => p_msg_data );
239   --
240 EXCEPTION
241   --
242   WHEN FND_API.G_EXC_ERROR THEN
243     --
244     ROLLBACK TO Update_Row_Pvt ;
245     p_return_status := FND_API.G_RET_STS_ERROR;
246     FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
247 				p_data  => p_msg_data );
248   --
249   WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
250     --
251     ROLLBACK TO Update_Row_Pvt ;
252     p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
253     FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
254 				p_data  => p_msg_data );
255   --
256   WHEN OTHERS THEN
257     --
258     ROLLBACK TO Update_Row_Pvt ;
259     p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
260     --
261     IF FND_MSG_PUB.Check_Msg_Level (FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) THEN
262       FND_MSG_PUB.Add_Exc_Msg ( G_PKG_NAME,
263 				l_api_name);
264     END if;
265     --
266     FND_MSG_PUB.Count_And_Get ( p_count => p_msg_count,
267 				p_data  => p_msg_data );
268   --
269 END Update_Row;
270 /* ----------------------------------------------------------------------- */
271 
272 END PSB_BUDGET_REVISION_ACCTS_PVT;