DBA Data[Home] [Help]

PACKAGE BODY: APPS.WIP_WORK_ORDER_PUB

Source


1 PACKAGE BODY WIP_Work_Order_PUB AS
2 /* $Header: WIPPWORB.pls 115.10 2002/12/01 16:07:49 rmahidha ship $ */
3 
4 --  Global constant holding the package name
5 
6 G_PKG_NAME                    CONSTANT VARCHAR2(30) := 'WIP_Work_Order_PUB';
7 
8 --  Start of Comments
9 
10 --  Start of Comments
11 --  API name    Get_Work_Order
12 --  Type        Public
13 --  Function
14 --
15 --  Pre-reqs
16 --
17 --  Parameters
18 --
19 --  Version     Current version = 1.0
20 --              Initial version = 1.0
21 --
22 --  Notes
23 --
24 --  End of Comments
25 
26 PROCEDURE Get_Work_Order
27 (   p_api_version_number            IN  NUMBER
28 ,   p_init_msg_list                 IN  VARCHAR2
29 ,   p_return_values                 IN  VARCHAR2
30 ,   x_return_status                 OUT NOCOPY VARCHAR2
31 ,   x_msg_count                     OUT NOCOPY NUMBER
32 ,   x_msg_data                      OUT NOCOPY VARCHAR2
33 ,   p_wip_entity_id                 IN  NUMBER
34 ,   x_Wip_Entities_tbl              OUT NOCOPY Wip_Entities_Tbl_Type
35 ,   x_Wip_Entities_val_tbl          OUT NOCOPY Wip_Entities_Val_Tbl_Type
36 ,   x_FlowSchedule_tbl              OUT NOCOPY Flowschedule_Tbl_Type
37 ,   x_FlowSchedule_val_tbl          OUT NOCOPY Flowschedule_Val_Tbl_Type
38 ,   x_DiscreteJob_tbl               OUT NOCOPY Discretejob_Tbl_Type
39 ,   x_DiscreteJob_val_tbl           OUT NOCOPY Discretejob_Val_Tbl_Type
40 ,   x_RepSchedule_tbl               OUT NOCOPY Repschedule_Tbl_Type
41 ,   x_RepSchedule_val_tbl           OUT NOCOPY Repschedule_Val_Tbl_Type
42 )
43 IS
44 l_api_version_number          CONSTANT NUMBER := 1.0;
45 l_api_name                    CONSTANT VARCHAR2(30):= 'Get_Work_Order';
46 l_wip_entity_id               NUMBER := p_wip_entity_id;
47 l_Wip_Entities_tbl            WIP_Work_Order_PUB.Wip_Entities_Tbl_Type;
48 l_FlowSchedule_tbl            WIP_Work_Order_PUB.Flowschedule_Tbl_Type;
49 l_DiscreteJob_tbl             WIP_Work_Order_PUB.Discretejob_Tbl_Type;
50 l_RepSchedule_tbl             WIP_Work_Order_PUB.Repschedule_Tbl_Type;
51 BEGIN
52 
53     --  Standard call to check for call compatibility
54 
55     IF NOT FND_API.Compatible_API_Call
56            (   l_api_version_number
57            ,   p_api_version_number
58            ,   l_api_name
59            ,   G_PKG_NAME
60            )
61     THEN
62         RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
63     END IF;
64 
65     --  Standard check for Val/ID conversion
66 
67     IF p_wip_entity_id <> FND_API.G_MISS_NUM THEN
68 
69         l_wip_entity_id := p_wip_entity_id;
70 
71     ELSE
72 
73        IF FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_ERROR)
74 	 THEN
75 	  FND_MESSAGE.SET_NAME('WIP','Invalid Business Object Value');
76 	  FND_MESSAGE.SET_TOKEN('ATTRIBUTE','wip_entity');
77 	  FND_MSG_PUB.Add;
78        END IF;
79 
80         RAISE FND_API.G_EXC_ERROR;
81     END IF;
82 
83 
84     --  Call WIP_Work_Order_PVT.Get_Work_Order
85 
86     WIP_Work_Order_PVT.Get_Work_Order
87     (   p_api_version_number          => 1.0
88     ,   p_init_msg_list               => p_init_msg_list
89     ,   x_return_status               => x_return_status
90     ,   x_msg_count                   => x_msg_count
91     ,   x_msg_data                    => x_msg_data
92     ,   p_wip_entity_id               => l_wip_entity_id
93     ,   x_Wip_Entities_tbl            => l_Wip_Entities_tbl
94     ,   x_FlowSchedule_tbl            => l_FlowSchedule_tbl
95     ,   x_DiscreteJob_tbl             => l_DiscreteJob_tbl
96     ,   x_RepSchedule_tbl             => l_RepSchedule_tbl
97     );
98 
99     --  Load Id OUT parameters.
100 
101     x_Wip_Entities_tbl             := l_Wip_Entities_tbl;
102     x_FlowSchedule_tbl             := l_FlowSchedule_tbl;
103     x_DiscreteJob_tbl              := l_DiscreteJob_tbl;
104     x_RepSchedule_tbl              := l_RepSchedule_tbl;
105 
106     --  Set return status
107 
108     x_return_status := FND_API.G_RET_STS_SUCCESS;
109 
110     --  Get message count and data
111 
112     FND_MSG_PUB.Count_And_Get
113     (   p_count                       => x_msg_count
114     ,   p_data                        => x_msg_data
115     );
116 
117 
118 EXCEPTION
119 
120     WHEN FND_API.G_EXC_ERROR THEN
121 
122         x_return_status := FND_API.G_RET_STS_ERROR;
123 
124         --  Get message count and data
125 
126         FND_MSG_PUB.Count_And_Get
127         (   p_count                       => x_msg_count
128         ,   p_data                        => x_msg_data
129         );
130 
131     WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
132 
133         x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
134 
135         --  Get message count and data
136 
137         FND_MSG_PUB.Count_And_Get
138         (   p_count                       => x_msg_count
139         ,   p_data                        => x_msg_data
140         );
141 
142     WHEN OTHERS THEN
143 
144         x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
145 
146         IF FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
147         THEN
148             FND_MSG_PUB.Add_Exc_Msg
149             (   G_PKG_NAME
150             ,   'Get_Work_Order'
151             );
152         END IF;
153 
154         --  Get message count and data
155 
156         FND_MSG_PUB.Count_And_Get
157         (   p_count                       => x_msg_count
158         ,   p_data                        => x_msg_data
159         );
160 
161 END Get_Work_Order;
162 
163 END WIP_Work_Order_PUB;