[Home] [Help]
PACKAGE BODY: APPS.PO_FTE_INTEGRATION_GRP
Source
1 PACKAGE BODY PO_FTE_INTEGRATION_GRP AS
2 /* $Header: POXGFTEB.pls 120.1 2005/06/29 18:35:12 shsiung noship $ */
3
4 --CONSTANTS
5 g_pkg_name CONSTANT VARCHAR2(30) := 'PO_FTE_INTEGRATION_GRP';
6 c_log_head CONSTANT VARCHAR2(50) := 'po.plsql.'|| g_pkg_name || '.';
7 g_fnd_debug VARCHAR2(1) := NVL(FND_PROFILE.VALUE('AFLOG_ENABLED'),'N');
8
9 -------------------------------------------------------------------------------
10 --Start of Comments
11 --Name: get_po_release_attributes
12 --Pre-reqs:
13 -- None.
14 --Modifies:
15 -- None.
16 --Locks:
17 -- None.
18 --Function:
19 -- Get attributes of Standard Purchase Order and Blanket Release for
20 -- Transportation delivery record.
21 --Parameters:
22 --IN:
23 --p_api_version
24 -- Specifies API version.
25 --p_line_location_id
26 -- Corresponding to po_line_location_id
27 --OUT:
28 --x_return_status
29 -- Indicates API return status as 'S', 'E' or 'U'.
30 --x_msg_count
31 -- Error messages number.
32 --x_msg_data
33 -- Error messages body.
34 --x_po_release_attributes
35 --Testing:
36 -- Call this API when only line_location_id exists.
37 --End of Comments
38 -------------------------------------------------------------------------------
39
40
41 PROCEDURE get_po_release_attributes
42 (
43 p_api_version IN NUMBER,
44 x_return_status OUT NOCOPY VARCHAR2,
45 x_msg_count OUT NOCOPY NUMBER,
46 x_msg_data OUT NOCOPY VARCHAR2,
47 p_line_location_id IN NUMBER,
48 x_po_releases_attributes OUT NOCOPY po_release_rec_type
49 )
50 IS
51 l_api_name CONSTANT VARCHAR2(100) := 'get_po_release_attributes';
52 l_api_version CONSTANT NUMBER := 1.0;
53 l_progress VARCHAR2(3) := '001';
54
55 BEGIN
56 IF (g_fnd_debug = 'Y') THEN
57 IF (FND_LOG.G_CURRENT_RUNTIME_LEVEL <= FND_LOG.LEVEL_STATEMENT) THEN
58 FND_LOG.string(
59 log_level => FND_LOG.LEVEL_STATEMENT,
60 module => c_log_head || '.'||l_api_name||'.' || l_progress,
61 message => 'Check API Call Compatibility');
62 END IF;
63 END IF;
64
65 -- Standard call to check for call compatibility.
66 IF NOT FND_API.Compatible_API_Call(
67 p_current_version_number => l_api_version,
68 p_caller_version_number => p_api_version,
69 p_api_name => l_api_name,
70 p_pkg_name => g_pkg_name) THEN
71 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
72 END IF;
73
74 -- Initialize API return status to success
75 x_return_status := FND_API.G_RET_STS_SUCCESS;
76
77 l_progress:='010';
78 IF (g_fnd_debug = 'Y') THEN
79 IF (FND_LOG.G_CURRENT_RUNTIME_LEVEL <= FND_LOG.LEVEL_STATEMENT) THEN
80 FND_LOG.string(
81 log_level => FND_LOG.LEVEL_STATEMENT,
82 module => c_log_head || '.'||l_api_name||'.' || l_progress,
83 message => 'Call PO_FTE_INTEGRATION_PVT.get_po_release_attributes');
84 END IF;
85 END IF;
86
87 PO_FTE_INTEGRATION_PVT.get_po_release_attributes(
88 p_api_version => p_api_version,
89 x_return_status => x_return_status,
90 x_msg_count => x_msg_count,
91 x_msg_data => x_msg_data,
92 p_line_location_id => p_line_location_id,
93 x_po_releases_attributes => x_po_releases_attributes);
94
95 l_progress:='020';
96 IF (g_fnd_debug = 'Y') THEN
97 IF (FND_LOG.G_CURRENT_RUNTIME_LEVEL <= FND_LOG.LEVEL_STATEMENT) THEN
98 FND_LOG.string(
99 log_level => FND_LOG.LEVEL_STATEMENT,
100 module => c_log_head || '.'||l_api_name||'.' || l_progress,
101 message => 'Call returns with status' || x_return_status);
102 END IF;
103 END IF;
104
105 EXCEPTION
106 WHEN OTHERS THEN
107 IF (g_fnd_debug = 'Y') THEN
108 IF (FND_LOG.G_CURRENT_RUNTIME_LEVEL <= FND_LOG.LEVEL_EXCEPTION) THEN
109 FND_LOG.string( log_level => FND_LOG.LEVEL_EXCEPTION,
110 module => c_log_head || '.'||l_api_name,
111 message => 'unexpected error');
112 END IF;
113 END IF;
114 FND_MSG_PUB.add_exc_msg ( G_PKG_NAME, l_api_name );
115 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
116
117 END get_po_release_attributes;
118
119 -- Following wrappers for FTE Team to po_status_check API added in DropShip FPJ project
120
121 -------------------------------------------------------------------------------
122 --Start of Comments
123 --Name: po_status_check
124 --Pre-reqs:
125 -- None.
126 --Modifies:
127 -- None.
128 --Locks:
129 -- None.
130 --Function:
131 -- This is just a wrapper provided for Transportation Team for po_status_check
132 -- This just calls group procedure PO_DOCUMENT_CHECKS_GRP.po_status_check
133 -- Detailed comments maintained in PVT Package Body PO_DOCUMENT_CHECKS_PVT.po_status_check
134 --End of Comments
135 -------------------------------------------------------------------------------
136 PROCEDURE po_status_check (
137 p_api_version IN NUMBER,
138 p_header_id IN PO_TBL_NUMBER,
139 p_release_id IN PO_TBL_NUMBER,
140 p_document_type IN PO_TBL_VARCHAR30,
141 p_document_subtype IN PO_TBL_VARCHAR30,
142 p_document_num IN PO_TBL_VARCHAR30,
143 p_vendor_order_num IN PO_TBL_VARCHAR30,
144 p_line_id IN PO_TBL_NUMBER,
145 p_line_location_id IN PO_TBL_NUMBER,
146 p_distribution_id IN PO_TBL_NUMBER,
147 p_mode IN VARCHAR2,
148 p_lock_flag IN VARCHAR2 := 'N',
149 x_po_status_rec OUT NOCOPY PO_STATUS_REC_TYPE,
150 x_return_status OUT NOCOPY VARCHAR2
151 ) IS
152
153 l_api_name CONSTANT VARCHAR(30) := 'PO_STATUS_CHECK';
154
155 BEGIN
156
157 --Call the group procedure to actually validate and do po status check
158 PO_DOCUMENT_CHECKS_GRP.po_status_check(
159 p_api_version => p_api_version,
160 p_header_id => p_header_id,
161 p_release_id => p_release_id,
162 p_document_type => p_document_type,
163 p_document_subtype => p_document_subtype,
164 p_document_num => p_document_num,
165 p_vendor_order_num => p_vendor_order_num,
166 p_line_id => p_line_id,
167 p_line_location_id => p_line_location_id,
168 p_distribution_id => p_distribution_id,
169 p_mode => p_mode,
170 p_lock_flag => p_lock_flag,
171 x_po_status_rec => x_po_status_rec,
172 x_return_status => x_return_status);
173
174 EXCEPTION
175 WHEN OTHERS THEN
176 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
177 FND_MSG_PUB.add_exc_msg(G_PKG_NAME, l_api_name);
178
179 END po_status_check;
180
181 -------------------------------------------------------------------------------
182 --Start of Comments
183 --Name: po_status_check
184 --Pre-reqs:
185 -- None.
186 --Modifies:
187 -- None.
188 --Locks:
189 -- None.
190 --Function:
191 -- A convenience procedure for a single entity and takes in scalar input IDs.
192 -- This is just a wrapper provided for Transportation Team for po_status_check.
193 -- This just calls group procedure PO_DOCUMENT_CHECKS_GRP.po_status_check.
194 -- Detailed comments maintained in PVT Package Body PO_DOCUMENT_CHECKS_PVT.po_status_check
195 --End of Comments
196 -------------------------------------------------------------------------------
197 PROCEDURE po_status_check (
198 p_api_version IN NUMBER,
199 p_header_id IN NUMBER := NULL,
200 p_release_id IN NUMBER := NULL,
201 p_document_type IN VARCHAR2 := NULL,
202 p_document_subtype IN VARCHAR2 := NULL,
203 p_document_num IN VARCHAR2 := NULL,
204 p_vendor_order_num IN VARCHAR2 := NULL,
205 p_line_id IN NUMBER := NULL,
206 p_line_location_id IN NUMBER := NULL,
207 p_distribution_id IN NUMBER := NULL,
208 p_mode IN VARCHAR2,
209 p_lock_flag IN VARCHAR2 := 'N',
210 x_po_status_rec OUT NOCOPY PO_STATUS_REC_TYPE,
211 x_return_status OUT NOCOPY VARCHAR2
212 ) IS
213
214 l_api_name CONSTANT VARCHAR(30) := 'PO_STATUS_CHECK';
215
216 BEGIN
217
218 --Call the group procedure to actually validate and do po status check
219 PO_DOCUMENT_CHECKS_GRP.po_status_check(
220 p_api_version => p_api_version,
221 p_header_id => p_header_id,
222 p_release_id => p_release_id,
223 p_document_type => p_document_type,
224 p_document_subtype => p_document_subtype,
225 p_document_num => p_document_num,
226 p_vendor_order_num => p_vendor_order_num,
227 p_line_id => p_line_id,
228 p_line_location_id => p_line_location_id,
229 p_distribution_id => p_distribution_id,
230 p_mode => p_mode,
231 p_lock_flag => p_lock_flag,
232 x_po_status_rec => x_po_status_rec,
233 x_return_status => x_return_status);
234
235 EXCEPTION
236 WHEN OTHERS THEN
237 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
238 FND_MSG_PUB.add_exc_msg(G_PKG_NAME, l_api_name);
239
240 END po_status_check;
241
242 END PO_FTE_INTEGRATION_GRP;