[Home] [Help]
PACKAGE BODY: APPS.AST_COLLTRL_ORDER_PKG
Source
1 PACKAGE BODY ast_colltrl_order_pkg AS
2 /* $Header: astclrqb.pls 115.22 2002/12/05 20:00:50 rramacha ship $ */
3
4
5 g_qte_header_rec ASO_QUOTE_PUB.Qte_Header_Rec_Type;
6 g_qte_line_tbl ASO_QUOTE_PUB.Qte_Line_Tbl_Type;
7 g_hd_shipment_tbl ASO_QUOTE_PUB.Shipment_tbl_Type;
8 g_ln_shipment_tbl ASO_QUOTE_PUB.Shipment_Tbl_Type;
9
10 PROCEDURE open_order (
11 p_cust_party_id IN NUMBER
12 , p_cust_account_id IN NUMBER
13 , p_sold_to_contact_id IN NUMBER
14 , p_inv_party_id IN NUMBER
15 , p_inv_party_site_id IN NUMBER
16 , p_ship_party_site_id IN NUMBER
17 , p_source_code IN VARCHAR2
18 , p_order_type_id IN NUMBER
19 , p_employee_id IN NUMBER
20 , p_campaign_id IN NUMBER
21 , p_quote_header_id IN NUMBER
22 ) IS
23 BEGIN
24 -- reinitialize the order header record types
25 g_qte_header_rec := ASO_QUOTE_PUB.G_MISS_QTE_HEADER_REC;
26 g_hd_shipment_tbl := ASO_QUOTE_PUB.G_MISS_Shipment_TBL;
27
28 -- assign parameters passed to the quote header record
29 g_qte_header_rec.quote_source_code := p_source_code ;
30 g_qte_header_rec.party_id := p_cust_party_id;
31 g_qte_header_rec.cust_account_id := p_cust_account_id;
32
33 -- Begin Mod. Raam on 09.15.2001
34 IF p_sold_to_contact_id IS NOT NULL THEN
35 g_qte_header_rec.org_contact_id := p_sold_to_contact_id;
36 END IF;
37 -- End Mod.
38
39 g_qte_header_rec.invoice_to_party_id := p_inv_party_id;
40 g_qte_header_rec.invoice_to_party_site_id := p_inv_party_site_id;
41 g_qte_header_rec.order_type_id := p_order_type_id;
42 g_qte_header_rec.marketing_source_code_id := p_campaign_id;
43 g_qte_header_rec.employee_person_id := p_employee_id;
44
45 g_hd_shipment_tbl(1).ship_to_party_site_id := p_ship_party_site_id;
46
47 -- reinitialize the order line table types
48 g_qte_line_tbl := ASO_QUOTE_PUB.G_MISS_QTE_LINE_TBL;
49 g_ln_shipment_tbl := ASO_QUOTE_PUB.G_MISS_Shipment_TBL;
50 END open_order;
51
52 PROCEDURE add_order_line (
53 p_ship_party_id IN NUMBER
54 , p_ship_party_site_id IN NUMBER
55 , p_inventory_item_id IN NUMBER
56 , p_quantity IN NUMBER
57 , p_ship_method_code IN VARCHAR2
58 , p_uom_code IN VARCHAR2
59 , p_line_category_code IN VARCHAR2
60 ) IS
61 l_order_line_ndx NUMBER;
62 l_ship_line_ndx NUMBER;
63 BEGIN
64 l_order_line_ndx := g_qte_line_tbl.COUNT + 1;
65 l_ship_line_ndx := g_ln_shipment_tbl.COUNT + 1;
66
67 IF l_order_line_ndx = 1 THEN
68 g_qte_line_tbl(l_order_line_ndx).inventory_item_id := p_inventory_item_id;
69 g_qte_line_tbl(l_order_line_ndx).UOM_code := p_uom_code;
70 g_qte_line_tbl(l_order_line_ndx).line_category_code := p_line_category_code;
71 END IF;
72
73 g_ln_shipment_tbl(l_ship_line_ndx).qte_line_index := 1;
74 g_ln_shipment_tbl(l_ship_line_ndx).quantity := p_quantity;
75 g_ln_shipment_tbl(l_ship_line_ndx).ship_to_party_id := p_ship_party_id;
76 g_ln_shipment_tbl(l_ship_line_ndx).ship_to_party_site_id := p_ship_party_site_id;
77 g_ln_shipment_tbl(l_ship_line_ndx).ship_method_code := p_ship_method_code;
78 END add_order_line;
79
80 PROCEDURE submit_order (
81 x_return_status OUT NOCOPY VARCHAR2
82 , x_order_header_rec OUT NOCOPY ASO_ORDER_INT.Order_Header_rec_type
83 , x_order_line_tbl OUT NOCOPY ASO_ORDER_INT.Order_Line_tbl_type
84 ) IS
85 l_control_rec ASO_ORDER_INT.control_rec_type;
86 l_api_ver NUMBER := 1.0;
87 l_init_msg_list VARCHAR2(1) := FND_API.G_TRUE;
88 l_commit VARCHAR2(1) := FND_API.G_TRUE;
89 x_msg_count NUMBER;
90 x_msg_data VARCHAR2(2000);
91 BEGIN
92 l_control_rec.book_flag := FND_API.G_TRUE;
93 l_control_rec.calculate_price := FND_API.G_TRUE;
94
95 -- initialize the message stack
96 FND_MSG_PUB.Initialize;
97
98 ASO_ORDER_INT.create_order(
99 p_api_version_number => l_api_ver
100 , p_init_msg_list => l_init_msg_list
101 , p_commit => l_commit
102 , p_qte_rec => g_qte_header_rec
103 , p_qte_line_tbl => g_qte_line_tbl
104 , p_header_shipment_tbl => g_hd_shipment_tbl
105
106 , p_line_shipment_tbl => g_ln_shipment_tbl
107 , p_control_rec => l_control_rec
108 , x_order_header_rec => x_order_header_rec
109 , x_order_line_tbl => x_order_line_tbl
110 , x_return_status => x_return_status
111 , x_msg_count => x_msg_count
112 , x_msg_data => x_msg_data
113 );
114
115 END submit_order;
116 -- ***************************************************
117 PROCEDURE start_request(l_request_id OUT NOCOPY NUMBER,
118 l_return_status OUT NOCOPY VARCHAR2,
119 l_msg_count OUT NOCOPY NUMBER,
120 l_msg_data OUT NOCOPY VARCHAR2) IS
121 l_api_version NUMBER := 1.0;
122 BEGIN
123 -- Start the fulfillment request. The output request_id must be passed
124 -- to all subsequent calls made for this request.
125 JTF_FM_REQUEST_GRP.STart_Request
126 (
127 p_api_version => l_api_version,
128 x_return_status => l_return_status,
129 x_msg_count => l_msg_count,
130 x_msg_data => l_msg_data,
131 x_request_id => l_request_id
132 );
133 END start_request;
134 -- ***************************************************
135 PROCEDURE xml_request(l_content_id IN NUMBER,
136 l_request_type IN VARCHAR2,
137 l_user_note IN VARCHAR2,
138 l_email IN VARCHAR2,
139 l_party_id IN NUMBER,
140 l_return_status OUT NOCOPY VARCHAR2,
141 l_content_xml OUT NOCOPY VARCHAR2,
142 l_msg_count OUT NOCOPY NUMBER,
143 l_msg_data OUT NOCOPY VARCHAR2,
144 l_request_id IN NUMBER) IS
145 BEGIN
146 xml_request(p_content_id => l_content_id,
147 p_request_type => l_request_type,
148 p_media_type => 'EMAIL',
149 p_user_note => l_user_note,
150 p_email => l_email,
151 p_fax => NULL,
152 p_printer => NULL,
153 p_party_id => l_party_id,
154 x_return_status => l_return_status,
155 x_content_xml => l_content_xml,
156 x_msg_count => l_msg_count,
157 x_msg_data => l_msg_data,
158 p_request_id => l_request_id);
159 END xml_request;
160
161 PROCEDURE xml_request(p_content_id IN NUMBER,
162 p_request_type IN VARCHAR2,
163 p_media_type IN VARCHAR2,
164 p_user_note IN VARCHAR2,
165 p_email IN VARCHAR2,
166 p_fax IN VARCHAR2,
167 p_printer IN VARCHAR2,
168 p_party_id IN NUMBER,
169 x_return_status OUT NOCOPY VARCHAR2,
170 x_content_xml OUT NOCOPY VARCHAR2,
171 x_msg_count OUT NOCOPY NUMBER,
172 x_msg_data OUT NOCOPY VARCHAR2,
173 p_request_id IN NUMBER) IS
174
175 l_api_version NUMBER := 1.0;
176 --
177 l_content_nm VARCHAR2(100);
178 l_document_type VARCHAR2(150);
179 l_bind_var JTF_FM_REQUEST_GRP.G_VARCHAR_TBL_TYPE ;
180 l_bind_val JTF_FM_REQUEST_GRP.G_VARCHAR_TBL_TYPE ;
181 l_bind_var_type JTF_FM_REQUEST_GRP.G_VARCHAR_TBL_TYPE ;
182 BEGIN
183 -- Initialize the parameters for Master Document.
184 --NewChange
185 IF p_party_id IS NOT NULL THEN
186 l_bind_var(1) := 'id';
187 l_bind_var_type(1) := 'NUMBER';
188 l_bind_val(1) := p_party_id;
189 END IF;
190 --l_document_type := 'zip';
191
192 -- This call gets the XML string for the content(Master Document) with
193 -- the parameters as defined above
194 JTF_FM_REQUEST_GRP.Get_Content_XML
195 (
196 p_api_version => l_api_version,
197 p_content_id => p_content_id,
198 p_content_nm => l_content_nm,
199 --p_document_type => l_document_type,
200 p_media_type => p_media_type,
201 p_printer => p_printer,
202 p_email => p_email,
203 --p_file_path => l_file_path,
204 p_fax => p_fax,
205 p_user_note => p_user_note,
206 p_content_type => p_request_type,
207 p_bind_var => l_bind_var,
208 p_bind_val => l_bind_val,
209 p_bind_var_type => l_bind_var_type,
210 p_request_id => p_request_id,
211 x_content_xml => x_content_xml,
212 x_return_status => x_return_status,
213 x_msg_count => x_msg_count,
214 x_msg_data => x_msg_data
215 );
216 END xml_request;
217 -- ***************************************************
218 PROCEDURE submit_request(l_commit IN VARCHAR2,
219 l_return_status OUT NOCOPY VARCHAR2,
220 l_msg_count OUT NOCOPY NUMBER,
221 l_msg_data OUT NOCOPY VARCHAR2,
222 l_subject IN VARCHAR2,
223 l_source_code_id IN NUMBER,
224 l_party_id IN NUMBER,
225 l_user_id IN NUMBER,
226 l_extended_header IN VARCHAR2,
227 l_content_xml IN VARCHAR2,
228 l_request_id IN NUMBER) IS
229 l_api_version NUMBER := 1.0;
230 BEGIN
231
232 -- Submit the fulfillment request
233 JTF_FM_REQUEST_GRP.Submit_Request
234 ( p_api_version => l_api_version,
235 p_commit => l_commit,
236 x_return_status => l_return_status,
237 x_msg_count => l_msg_count,
238 x_msg_data => l_msg_data,
239 p_subject => l_subject,
240 p_source_code_id => l_source_code_id,
241 p_party_id => l_party_id,
242 p_user_id => l_user_id,
243 p_queue_response => FND_API.G_TRUE,
244 p_extended_header => l_extended_header,
245 p_content_xml => l_content_xml,
246 p_request_id => l_request_id
247 );
248 END submit_request;
249 -- ***************************************************
250 END ast_colltrl_order_pkg;