[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;