DBA Data[Home] [Help]

PACKAGE BODY: APPS.CN_SCENARIOS_PVT

Source


1 PACKAGE BODY CN_SCENARIOS_PVT AS
2 /*$Header: cnvscnb.pls 120.0 2007/07/26 01:11:26 appldev noship $*/
3 
4 G_PKG_NAME         CONSTANT VARCHAR2(30)  :='CN_SCENARIOS_PVT';
5 
6 PROCEDURE delete_scenario_plans
7   (p_api_version                IN      NUMBER                          ,
8    p_init_msg_list              IN      VARCHAR2 := FND_API.G_FALSE     ,
9    p_commit                     IN      VARCHAR2 := FND_API.G_FALSE     ,
10    p_validation_level           IN      NUMBER   := FND_API.G_VALID_LEVEL_FULL,
11    p_role_plan_id               IN      CN_SCENARIO_PLANS_ALL.ROLE_PLAN_ID%TYPE  := NULL,
12    p_comp_plan_id               IN      CN_SCENARIO_PLANS_ALL.COMP_PLAN_ID%TYPE  := NULL,
13    p_role_id                    IN      CN_SCENARIO_PLANS_ALL.ROLE_ID%TYPE  := NULL,
14    x_return_status              OUT NOCOPY     VARCHAR2                        ,
15    x_msg_count                  OUT NOCOPY     NUMBER                          ,
16    x_msg_data                   OUT NOCOPY     VARCHAR2                        ) IS
17 
18    l_api_name                 CONSTANT VARCHAR2(30) := 'delete_scenario_plans';
19    l_api_version              CONSTANT NUMBER       := 1.0;
20 BEGIN
21 
22    -- Standard Start of API savepoint
23    SAVEPOINT   delete_scenario_plans;
24    -- Standard call to check for call compatibility.
25    IF NOT FND_API.Compatible_API_Call
26      (l_api_version           ,
27       p_api_version           ,
28       l_api_name              ,
29       G_PKG_NAME )
30      THEN
31       RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
32    END IF;
33    -- Initialize message list if p_init_msg_list is set to TRUE.
34    IF FND_API.to_Boolean( p_init_msg_list ) THEN
35       FND_MSG_PUB.initialize;
36    END IF;
37    --  Initialize API return status to success
38    x_return_status := FND_API.G_RET_STS_SUCCESS;
39 
40    IF p_role_plan_id is not null then
41      delete from cn_scenario_plans_all where role_plan_id = p_role_plan_id;
42    end if;
43 
44 
45    IF p_role_id is not null then
46      delete from cn_scenario_plans_all where role_id = p_role_id;
47    end if;
48 
49 
50    IF p_comp_plan_id is not null then
51      delete from cn_scenario_plans_all where comp_plan_id = p_comp_plan_id;
52    end if;
53 
54    -- End of API body.
55 
56    -- Standard check of p_commit.
57    IF FND_API.To_Boolean( p_commit ) THEN
58       COMMIT WORK;
59    END IF;
60    -- Standard call to get message count and if count is 1, get message info.
61    FND_MSG_PUB.Count_And_Get
62      (p_count                 =>      x_msg_count             ,
63       p_data                  =>      x_msg_data              ,
64       p_encoded               =>      FND_API.G_FALSE         );
65    EXCEPTION
66    WHEN FND_API.G_EXC_ERROR THEN
67       ROLLBACK TO delete_scenario_plans;
68       x_return_status := FND_API.G_RET_STS_ERROR ;
69       FND_MSG_PUB.count_and_get
70 	(p_count                 =>      x_msg_count             ,
71 	 p_data                  =>      x_msg_data              ,
72 	 p_encoded               =>      FND_API.G_FALSE         );
73    WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
74       ROLLBACK TO delete_scenario_plans;
75       x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
76       FND_MSG_PUB.count_and_get
77 	(p_count                 =>      x_msg_count             ,
78 	 p_data                  =>      x_msg_data              ,
79 	 p_encoded               =>      FND_API.G_FALSE         );
80    WHEN OTHERS THEN
81       ROLLBACK TO delete_scenario_plans;
82       x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
83       IF      FND_MSG_PUB.check_msg_level
84 	(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
85 	THEN
86 	 FND_MSG_PUB.add_exc_msg
87 	   (G_PKG_NAME          ,
88 	    l_api_name           );
89       END IF;
90       FND_MSG_PUB.count_and_get
91 	(p_count                 =>      x_msg_count             ,
92 	 p_data                  =>      x_msg_data              ,
93 	 p_encoded               =>      FND_API.G_FALSE         );
94 END;
95 
96 END CN_SCENARIOS_PVT;