[Home] [Help]
PACKAGE BODY: APPS.OE_BLANKET_PUB
Source
1 PACKAGE BODY OE_Blanket_PUB AS
2 /* $Header: OEXPBSOB.pls 120.0.12010000.5 2009/01/24 01:08:04 smusanna ship $ */
3
4 -- Global constant holding the package name
5
6 G_PKG_NAME CONSTANT VARCHAR2(30) := 'OE_Blanket_PUB';
7
8 PROCEDURE set_context (p_org_id in number) is
9 l_org_id number ;
10 l_return_status varchar2(1);
11 l_debug_level CONSTANT NUMBER := oe_debug_pub.g_debug_level;
12 BEGIN
13 l_org_id := p_org_id;
14 if l_debug_level > 0 then
15 oe_debug_pub.add('Entering set_context');
16 oe_debug_pub.add('Org_id is '||nvl(p_org_id,-1));
17 end if;
18 MO_GLOBAL.set_policy_context('S',l_org_id); -- remove this and next line
19 oe_debug_pub.add('After Set Policy Context ');
20 OE_GLOBALS.Set_Context();
21 END ;
22
23
24 ----------------------------------------------------------
25 PROCEDURE Header_Id_Conversion
26 ----------------------------------------------------------
27 ( p_header_val_rec IN OUT NOCOPY OE_Blanket_PUB.Header_Val_Rec_type
28 , p_header_rec IN OUT NOCOPY OE_Blanket_PUB.Header_Rec_type
29 )IS
30 l_header_val_rec OE_Order_PUB.Header_Val_Rec_Type;
31 l_header_rec OE_Order_PUB.Header_Rec_Type;
32 l_order_type_d INTEGER ;
33 l_debug_level CONSTANT NUMBER := oe_debug_pub.g_debug_level;
34 BEGIN
35 oe_debug_pub.add('In Header Id Conversion ');
36
37 l_header_val_rec.accounting_rule := p_header_val_rec.accounting_rule ;
38 l_header_val_rec.agreement := p_header_val_rec.agreement ;
39 l_header_val_rec.conversion_type := p_header_val_rec.conversion_type ;
40 l_header_val_rec.deliver_to_address1 := p_header_val_rec.deliver_to_address1 ;
41 l_header_val_rec.deliver_to_address2 := p_header_val_rec.deliver_to_address2 ;
42 l_header_val_rec.deliver_to_address3 := p_header_val_rec.deliver_to_address3 ;
43 l_header_val_rec.deliver_to_address4 := p_header_val_rec.deliver_to_address4 ;
44 l_header_val_rec.deliver_to_contact := p_header_val_rec.deliver_to_contact ;
45 l_header_val_rec.deliver_to_location := p_header_val_rec.deliver_to_location ;
46 l_header_val_rec.deliver_to_org := p_header_val_rec.deliver_to_org ;
47 l_header_val_rec.deliver_to_state := p_header_val_rec.deliver_to_state ;
48 l_header_val_rec.deliver_to_city := p_header_val_rec.deliver_to_city ;
49 l_header_val_rec.deliver_to_zip := p_header_val_rec.deliver_to_zip ;
50 l_header_val_rec.deliver_to_country := p_header_val_rec.deliver_to_country ;
51 l_header_val_rec.deliver_to_county := p_header_val_rec.deliver_to_county ;
52 l_header_val_rec.deliver_to_province := p_header_val_rec.deliver_to_province ;
53 l_header_val_rec.freight_terms := p_header_val_rec.freight_terms ;
54 l_header_val_rec.invoice_to_address1 := p_header_val_rec.invoice_to_address1 ;
55 l_header_val_rec.invoice_to_address2 := p_header_val_rec.invoice_to_address2 ;
56 l_header_val_rec.invoice_to_address3 := p_header_val_rec.invoice_to_address3 ;
57 l_header_val_rec.invoice_to_address4 := p_header_val_rec.invoice_to_address4 ;
58 l_header_val_rec.invoice_to_state := p_header_val_rec.invoice_to_state ;
59 l_header_val_rec.invoice_to_city := p_header_val_rec.invoice_to_city ;
60 l_header_val_rec.invoice_to_zip := p_header_val_rec.invoice_to_zip ;
61 l_header_val_rec.invoice_to_country := p_header_val_rec.invoice_to_country ;
62 l_header_val_rec.invoice_to_county := p_header_val_rec.invoice_to_county ;
63 l_header_val_rec.invoice_to_province := p_header_val_rec.invoice_to_province ;
64 l_header_val_rec.invoice_to_contact := p_header_val_rec.invoice_to_contact ;
65 l_header_val_rec.invoice_to_contact_first_name := p_header_val_rec.invoice_to_contact_first_name ;
66 l_header_val_rec.invoice_to_contact_last_name := p_header_val_rec.invoice_to_contact_last_name ;
67 l_header_val_rec.invoice_to_location := p_header_val_rec.invoice_to_location ;
68 l_header_val_rec.invoice_to_org := p_header_val_rec.invoice_to_org ;
69 l_header_val_rec.invoicing_rule := p_header_val_rec.invoicing_rule ;
70 l_header_val_rec.order_source := p_header_val_rec.order_source ;
71 l_header_val_rec.order_type := p_header_val_rec.order_type ;
72 l_header_val_rec.payment_term := p_header_val_rec.payment_term ;
73 l_header_val_rec.price_list := p_header_val_rec.price_list ;
74 l_header_val_rec.salesrep := p_header_val_rec.salesrep ;
75 l_header_val_rec.ship_from_address1 := p_header_val_rec.ship_from_address1 ;
76 l_header_val_rec.ship_from_address2 := p_header_val_rec.ship_from_address2 ;
77 l_header_val_rec.ship_from_address3 := p_header_val_rec.ship_from_address3 ;
78 l_header_val_rec.ship_from_address4 := p_header_val_rec.ship_from_address4 ;
79 l_header_val_rec.ship_from_location := p_header_val_rec.ship_from_location ;
80 l_header_val_rec.SHIP_FROM_CITY := p_header_val_rec.SHIP_FROM_CITY ;
81 l_header_val_rec.SHIP_FROM_POSTAL_CODE := p_header_val_rec.SHIP_FROM_POSTAL_CODE ;
82 l_header_val_rec.SHIP_FROM_COUNTRY := p_header_val_rec.SHIP_FROM_COUNTRY ;
83 l_header_val_rec.SHIP_FROM_REGION1 := p_header_val_rec.SHIP_FROM_REGION1 ;
84 l_header_val_rec.SHIP_FROM_REGION2 := p_header_val_rec.SHIP_FROM_REGION2 ;
85 l_header_val_rec.SHIP_FROM_REGION3 := p_header_val_rec.SHIP_FROM_REGION3 ;
86 l_header_val_rec.ship_from_org := p_header_val_rec.ship_from_org ;
87 l_header_val_rec.sold_to_address1 := p_header_val_rec.sold_to_address1 ;
88 l_header_val_rec.sold_to_address2 := p_header_val_rec.sold_to_address2 ;
89 l_header_val_rec.sold_to_address3 := p_header_val_rec.sold_to_address3 ;
90 l_header_val_rec.sold_to_address4 := p_header_val_rec.sold_to_address4 ;
91 l_header_val_rec.sold_to_state := p_header_val_rec.sold_to_state ;
92 l_header_val_rec.sold_to_country := p_header_val_rec.sold_to_country ;
93 l_header_val_rec.sold_to_zip := p_header_val_rec.sold_to_zip ;
94 l_header_val_rec.sold_to_county := p_header_val_rec.sold_to_county ;
95 l_header_val_rec.sold_to_province := p_header_val_rec.sold_to_province ;
96 l_header_val_rec.sold_to_city := p_header_val_rec.sold_to_city ;
100 l_header_val_rec.ship_to_address2 := p_header_val_rec.ship_to_address2 ;
97 l_header_val_rec.sold_to_contact_last_name := p_header_val_rec.sold_to_contact_last_name ;
98 l_header_val_rec.sold_to_contact_first_name := p_header_val_rec.sold_to_contact_first_name ;
99 l_header_val_rec.ship_to_address1 := p_header_val_rec.ship_to_address1 ;
101 l_header_val_rec.ship_to_address3 := p_header_val_rec.ship_to_address3 ;
102 l_header_val_rec.ship_to_address4 := p_header_val_rec.ship_to_address4 ;
103 l_header_val_rec.ship_to_state := p_header_val_rec.ship_to_state ;
104 l_header_val_rec.ship_to_country := p_header_val_rec.ship_to_country ;
105 l_header_val_rec.ship_to_zip := p_header_val_rec.ship_to_zip ;
106 l_header_val_rec.ship_to_county := p_header_val_rec.ship_to_county ;
107 l_header_val_rec.ship_to_province := p_header_val_rec.ship_to_province ;
108 l_header_val_rec.ship_to_city := p_header_val_rec.ship_to_city ;
109 l_header_val_rec.ship_to_contact := p_header_val_rec.ship_to_contact ;
110 l_header_val_rec.ship_to_contact_last_name := p_header_val_rec.ship_to_contact_last_name ;
111 l_header_val_rec.ship_to_contact_first_name := p_header_val_rec.ship_to_contact_first_name ;
112 l_header_val_rec.ship_to_location := p_header_val_rec.ship_to_location ;
113 l_header_val_rec.ship_to_org := p_header_val_rec.ship_to_org ;
114 l_header_val_rec.sold_to_contact := p_header_val_rec.sold_to_contact ;
115 l_header_val_rec.sold_to_org := p_header_val_rec.sold_to_org ;
116 l_header_val_rec.sold_from_org := p_header_val_rec.sold_from_org ;
117 l_header_val_rec.tax_exempt := p_header_val_rec.tax_exempt ;
118 l_header_val_rec.tax_exempt_reason := p_header_val_rec.tax_exempt_reason ;
119 l_header_val_rec.tax_point := p_header_val_rec.tax_point ;
120 l_header_val_rec.customer_payment_term := p_header_val_rec.customer_payment_term ;
121 l_header_val_rec.freight_carrier := p_header_val_rec.freight_carrier ;
122 l_header_val_rec.shipping_method := p_header_val_rec.shipping_method ;
123 l_header_val_rec.customer_number := p_header_val_rec.customer_number ;
124 l_header_val_rec.ship_to_customer_name := p_header_val_rec.ship_to_customer_name ;
125 l_header_val_rec.invoice_to_customer_name := p_header_val_rec.invoice_to_customer_name ;
126 l_header_val_rec.ship_to_customer_number := p_header_val_rec.ship_to_customer_number ;
127 l_header_val_rec.invoice_to_customer_number := p_header_val_rec.invoice_to_customer_number ;
128 l_header_val_rec.deliver_to_customer_number := p_header_val_rec.deliver_to_customer_number ;
129 l_header_val_rec.deliver_to_customer_name := p_header_val_rec.deliver_to_customer_name ;
130 l_header_val_rec.blanket_agreement_name := p_header_val_rec.blanket_agreement_name ;
131 l_header_val_rec.contract_template := p_header_val_rec.contract_template ;
132
133
134
135 l_header_rec.order_category_code := p_header_rec.order_category_code;
136 l_header_rec.deliver_to_org_id:= p_header_rec.deliver_to_org_id;
137 l_header_rec.invoice_to_org_id:= p_header_rec.invoice_to_org_id;
138 l_header_rec.ship_to_org_id := p_header_rec.ship_to_org_id;
139 l_header_rec.accounting_rule_id := p_header_rec.accounting_rule_id;
140 l_header_rec.agreement_id := p_header_rec.agreement_id;
141 l_header_rec.price_list_id := p_header_rec.price_list_id;
142 l_header_rec.deliver_to_org_id:= p_header_rec.deliver_to_org_id;
143 l_header_rec.invoice_to_org_id:= p_header_rec.invoice_to_org_id;
144 l_header_rec.ship_to_org_id := p_header_rec.ship_to_org_id;
145 l_header_rec.salesrep_id := p_header_rec.salesrep_id;
146 l_header_rec.order_type_id := p_header_rec.order_type_id;
147 l_header_rec.invoicing_rule_id:= p_header_rec.invoicing_rule_id;
148 l_header_rec.payment_term_id := p_header_rec.payment_term_id;
149 l_header_rec.contract_template_id:= p_header_rec.contract_template_id ;
150 l_header_rec.conversion_type_code:= p_header_rec.conversion_type_code ;
151 l_header_rec.sold_to_org_id:= p_header_rec.sold_to_org_id ;
152 l_header_rec.ship_from_org_id := p_header_rec.ship_from_org_id ;
153 l_header_rec.shipping_method_code := p_header_rec.shipping_method_code;
154 l_header_rec.freight_terms_code := p_header_rec.freight_terms_code;
155
156 OE_Header_Util.Get_Ids(p_header_val_rec => l_header_val_rec
157 , p_x_header_rec => l_header_rec);
158 -- p_header_rec.order_type_d := l_order_type_id;
159
160
161 p_header_rec.order_category_code := l_header_rec.order_category_code;
162 p_header_rec.deliver_to_org_id:= l_header_rec.deliver_to_org_id;
163 p_header_rec.invoice_to_org_id:= l_header_rec.invoice_to_org_id;
164 p_header_rec.ship_to_org_id := l_header_rec.ship_to_org_id;
165 p_header_rec.accounting_rule_id := l_header_rec.accounting_rule_id;
166 p_header_rec.agreement_id := l_header_rec.agreement_id;
167 p_header_rec.price_list_id := l_header_rec.price_list_id;
168 p_header_rec.deliver_to_org_id:= l_header_rec.deliver_to_org_id;
169 p_header_rec.invoice_to_org_id:= l_header_rec.invoice_to_org_id;
170 p_header_rec.ship_to_org_id := l_header_rec.ship_to_org_id;
171 p_header_rec.salesrep_id := l_header_rec.salesrep_id;
172 p_header_rec.order_type_id := l_header_rec.order_type_id;
173 p_header_rec.invoicing_rule_id:= l_header_rec.invoicing_rule_id;
174 p_header_rec.payment_term_id := l_header_rec.payment_term_id;
175 p_header_rec.contract_template_id:= l_header_rec.contract_template_id ;
176 p_header_rec.conversion_type_code:= l_header_rec.conversion_type_code ;
177 p_header_rec.sold_to_org_id:= l_header_rec.sold_to_org_id ;
178 p_header_rec.ship_from_org_id := l_header_rec.ship_from_org_id ;
179 p_header_rec.shipping_method_code := l_header_rec.shipping_method_code;
180 p_header_rec.freight_terms_code := l_header_rec.freight_terms_code;
181
182 oe_debug_pub.add(' Price List :'|| p_header_val_rec.price_list);
183 oe_debug_pub.add(' Price List Id :'|| p_header_rec.price_list_id);
184 oe_debug_pub.add(' Invoice to org id :'|| p_header_rec.invoice_to_org_id );
185 oe_debug_pub.add(' Ship to org id :'|| p_header_rec.ship_to_org_id);
186 oe_debug_pub.add(' Deliver to Org id :'|| p_header_rec.deliver_to_org_id );
187
188 EXCEPTION
189
190
191 WHEN OTHERS THEN
192
193 IF OE_MSG_PUB.Check_Msg_Level(OE_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
194 THEN
195 OE_MSG_PUB.Add_Exc_Msg
196 ( G_PKG_NAME
197 , 'Header_Id_Conversion'
198 );
199 END IF;
200
201 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
202
203 END Header_Id_Conversion;
204
205
206
207 ----------------------------------------------------------
208 PROCEDURE Line_Id_Conversion
209 ----------------------------------------------------------
210 ( p_line_val_rec IN OUT NOCOPY OE_Blanket_PUB.Line_Val_Rec_Type
211 , p_line_rec IN OUT NOCOPY OE_Blanket_PUB.Line_Rec_Type
212 )IS
213 l_line_val_rec OE_Order_PUB.Line_Val_Rec_Type;
214 l_line_rec OE_Order_PUB.Line_Rec_Type;
215 l_organization_id NUMBER := OE_Sys_Parameters.VALUE('MASTER_ORGANIZATION_ID');
216 l_debug_level CONSTANT NUMBER := oe_debug_pub.g_debug_level;
217 BEGIN
218 oe_debug_pub.add('In Line Id Conversion ');
219
220
221 l_line_val_rec.accounting_rule := p_line_val_rec.accounting_rule ;
222 l_line_val_rec.agreement := p_line_val_rec.agreement ;
223 l_line_val_rec.deliver_to_address1 := p_line_val_rec.deliver_to_address1 ;
224 l_line_val_rec.deliver_to_address2 := p_line_val_rec.deliver_to_address2 ;
225 l_line_val_rec.deliver_to_address3 := p_line_val_rec.deliver_to_address3 ;
226 l_line_val_rec.deliver_to_address4 := p_line_val_rec.deliver_to_address4 ;
227 l_line_val_rec.deliver_to_contact := p_line_val_rec.deliver_to_contact ;
228 l_line_val_rec.deliver_to_location := p_line_val_rec.deliver_to_location ;
229 l_line_val_rec.deliver_to_org := p_line_val_rec.deliver_to_org ;
230 l_line_val_rec.deliver_to_state := p_line_val_rec.deliver_to_state ;
231 l_line_val_rec.deliver_to_city := p_line_val_rec.deliver_to_city ;
232 l_line_val_rec.deliver_to_zip := p_line_val_rec.deliver_to_zip ;
233 l_line_val_rec.deliver_to_country := p_line_val_rec.deliver_to_country ;
234 l_line_val_rec.deliver_to_county := p_line_val_rec.deliver_to_county ;
235 l_line_val_rec.deliver_to_province := p_line_val_rec.deliver_to_province ;
236 l_line_val_rec.freight_terms := p_line_val_rec.freight_terms ;
237 l_line_val_rec.inventory_item := p_line_val_rec.inventory_item ;
238 l_line_val_rec.invoice_to_address1 := p_line_val_rec.invoice_to_address1 ;
239 l_line_val_rec.invoice_to_address2 := p_line_val_rec.invoice_to_address2 ;
240 l_line_val_rec.invoice_to_address3 := p_line_val_rec.invoice_to_address3 ;
241 l_line_val_rec.invoice_to_address4 := p_line_val_rec.invoice_to_address4 ;
242 l_line_val_rec.invoice_to_contact := p_line_val_rec.invoice_to_contact ;
243 l_line_val_rec.invoice_to_location := p_line_val_rec.invoice_to_location ;
244 l_line_val_rec.invoice_to_org := p_line_val_rec.invoice_to_org ;
245 l_line_val_rec.invoice_to_state := p_line_val_rec.invoice_to_state ;
246 l_line_val_rec.invoice_to_city := p_line_val_rec.invoice_to_city ;
247 l_line_val_rec.invoice_to_zip := p_line_val_rec.invoice_to_zip ;
248 l_line_val_rec.invoice_to_country := p_line_val_rec.invoice_to_country ;
249 l_line_val_rec.invoice_to_county := p_line_val_rec.invoice_to_county ;
250 l_line_val_rec.invoice_to_province := p_line_val_rec.invoice_to_province ;
254 l_line_val_rec.price_list := p_line_val_rec.price_list ;
251 l_line_val_rec.invoicing_rule := p_line_val_rec.invoicing_rule ;
252 l_line_val_rec.line_type := p_line_val_rec.line_type ;
253 l_line_val_rec.payment_term := p_line_val_rec.payment_term ;
255 l_line_val_rec.salesrep := p_line_val_rec.salesrep ;
256 l_line_val_rec.ship_from_address1 := p_line_val_rec.ship_from_address1 ;
257 l_line_val_rec.ship_from_address2 := p_line_val_rec.ship_from_address2 ;
258 l_line_val_rec.ship_from_address3 := p_line_val_rec.ship_from_address3 ;
259 l_line_val_rec.ship_from_address4 := p_line_val_rec.ship_from_address4 ;
260 l_line_val_rec.ship_from_location := p_line_val_rec.ship_from_location ;
261 l_line_val_rec.SHIP_FROM_CITY := p_line_val_rec.SHIP_FROM_CITY ;
262 l_line_val_rec.SHIP_FROM_POSTAL_CODE := p_line_val_rec.SHIP_FROM_POSTAL_CODE ;
263 l_line_val_rec.SHIP_FROM_COUNTRY := p_line_val_rec.SHIP_FROM_COUNTRY ;
264 l_line_val_rec.SHIP_FROM_REGION1 := p_line_val_rec.SHIP_FROM_REGION1 ;
265 l_line_val_rec.SHIP_FROM_REGION2 := p_line_val_rec.SHIP_FROM_REGION2 ;
266 l_line_val_rec.SHIP_FROM_REGION3 := p_line_val_rec.SHIP_FROM_REGION3 ;
267 l_line_val_rec.ship_from_org := p_line_val_rec.ship_from_org ;
268 l_line_val_rec.ship_to_address1 := p_line_val_rec.ship_to_address1 ;
269 l_line_val_rec.ship_to_address2 := p_line_val_rec.ship_to_address2 ;
270 l_line_val_rec.ship_to_address3 := p_line_val_rec.ship_to_address3 ;
271 l_line_val_rec.ship_to_address4 := p_line_val_rec.ship_to_address4 ;
272 l_line_val_rec.ship_to_state := p_line_val_rec.ship_to_state ;
273 l_line_val_rec.ship_to_country := p_line_val_rec.ship_to_country ;
274 l_line_val_rec.ship_to_zip := p_line_val_rec.ship_to_zip ;
275 l_line_val_rec.ship_to_county := p_line_val_rec.ship_to_county ;
276 l_line_val_rec.ship_to_province := p_line_val_rec.ship_to_province ;
277 l_line_val_rec.ship_to_city := p_line_val_rec.ship_to_city ;
278 l_line_val_rec.ship_to_contact := p_line_val_rec.ship_to_contact ;
279 l_line_val_rec.ship_to_contact_last_name := p_line_val_rec.ship_to_contact_last_name ;
280 l_line_val_rec.ship_to_contact_first_name := p_line_val_rec.ship_to_contact_first_name ;
281 l_line_val_rec.ship_to_location := p_line_val_rec.ship_to_location ;
282 l_line_val_rec.ship_to_org := p_line_val_rec.ship_to_org ;
283 l_line_val_rec.source_type := p_line_val_rec.source_type ;
284 l_line_val_rec.sold_to_org := p_line_val_rec.sold_to_org ;
285 l_line_val_rec.sold_from_org := p_line_val_rec.sold_from_org ;
286 l_line_val_rec.ship_to_customer_name := p_line_val_rec.ship_to_customer_name ;
287 l_line_val_rec.invoice_to_customer_name := p_line_val_rec.invoice_to_customer_name ;
288 l_line_val_rec.ship_to_customer_number := p_line_val_rec.ship_to_customer_number ;
289 l_line_val_rec.invoice_to_customer_number := p_line_val_rec.invoice_to_customer_number ;
290 l_line_val_rec.deliver_to_customer_number := p_line_val_rec.deliver_to_customer_number ;
291 l_line_val_rec.deliver_to_customer_name := p_line_val_rec.deliver_to_customer_name ;
292 l_line_val_rec.blanket_agreement_name := p_line_val_rec.blanket_agreement_name ;
293
294
295 l_line_rec.accounting_rule_id := p_line_rec.accounting_rule_id;
296 l_line_rec.agreement_id := p_line_rec.agreement_id;
297 l_line_rec.price_list_id := p_line_rec.price_list_id;
298 l_line_rec.deliver_to_org_id:= p_line_rec.deliver_to_org_id;
299 l_line_rec.invoice_to_org_id:= p_line_rec.invoice_to_org_id;
300 l_line_rec.ship_to_org_id := p_line_rec.ship_to_org_id;
301 l_line_rec.salesrep_id := p_line_rec.salesrep_id;
302 l_line_rec.invoicing_rule_id:= p_line_rec.invoicing_rule_id;
303 l_line_rec.payment_term_id := p_line_rec.payment_term_id;
304 l_line_rec.sold_to_org_id := p_line_rec.sold_to_org_id ;
305 l_line_rec.ship_from_org_id := p_line_rec.ship_from_org_id ;
306 l_line_rec.shipping_method_code := p_line_rec.shipping_method_code;
307 l_line_rec.freight_terms_code := p_line_rec.freight_terms_code;
308 l_line_rec.deliver_to_org_id:= p_line_rec.deliver_to_org_id;
309 l_line_rec.invoice_to_org_id:= p_line_rec.invoice_to_org_id;
310 l_line_rec.ship_to_org_id := p_line_rec.ship_to_org_id;
311 l_line_rec.inventory_item_id := p_line_rec.inventory_item_id;
312
313 oe_debug_pub.add(' inventory_item_id :'|| p_line_rec.inventory_item_id, 1);
314 oe_debug_pub.add(' ordered_item_id :'|| p_line_rec.ordered_item_id, 1);
315 -- 7695556
316
317 IF p_line_rec.inventory_item_id IS NOT NULL
318 OR p_line_rec.ordered_item_id IS NOT NULL THEN
319 OE_ID_TO_VALUE.Ordered_Item
320 (p_Item_Identifier_type => p_line_rec.item_identifier_type
321 ,p_inventory_item_id => p_line_rec.inventory_item_id
322 ,p_organization_id => l_organization_id
323 ,p_ordered_item_id => p_line_rec.ordered_item_id
324 ,p_sold_to_org_id => p_line_rec.sold_to_org_id
325 ,p_ordered_item => p_line_rec.ordered_item
326 ,x_ordered_item => l_line_rec.ordered_item
327 ,x_inventory_item => l_line_val_rec.inventory_item);
328
329 END IF;
330 oe_debug_pub.add(' ordered_item :'|| l_line_rec.ordered_item, 1);
334 , p_x_line_rec => l_line_rec);
331 oe_debug_pub.add(' inventory_item :'|| l_line_val_rec.inventory_item, 1);
332
333 OE_Line_Util.Get_Ids(p_line_val_rec => l_line_val_rec
335
336 p_line_rec.ordered_item := l_line_rec.ordered_item;
337
338 oe_debug_pub.add(' ordered_item :'|| p_line_rec.ordered_item, 1);
339
340 p_line_rec.accounting_rule_id := l_line_rec.accounting_rule_id;
341 p_line_rec.agreement_id := l_line_rec.agreement_id;
342 p_line_rec.price_list_id := l_line_rec.price_list_id;
343 p_line_rec.deliver_to_org_id:= l_line_rec.deliver_to_org_id;
344 p_line_rec.invoice_to_org_id:= l_line_rec.invoice_to_org_id;
345 p_line_rec.ship_to_org_id := l_line_rec.ship_to_org_id;
346 p_line_rec.salesrep_id := l_line_rec.salesrep_id;
347 p_line_rec.invoicing_rule_id:= l_line_rec.invoicing_rule_id;
348 p_line_rec.payment_term_id := l_line_rec.payment_term_id;
349 p_line_rec.sold_to_org_id:= l_line_rec.sold_to_org_id ;
350 p_line_rec.ship_from_org_id := l_line_rec.ship_from_org_id ;
351 p_line_rec.shipping_method_code := l_line_rec.shipping_method_code;
352 p_line_rec.freight_terms_code := l_line_rec.freight_terms_code;
353 p_line_rec.deliver_to_org_id:= l_line_rec.deliver_to_org_id;
354 p_line_rec.invoice_to_org_id:= l_line_rec.invoice_to_org_id;
355 p_line_rec.ship_to_org_id := l_line_rec.ship_to_org_id;
356
357
358 oe_debug_pub.add(' Price List :'|| p_line_val_rec.price_list);
359 oe_debug_pub.add(' Price List Id :'|| p_line_rec.price_list_id);
360 oe_debug_pub.add(' Invoice to org id :'|| p_line_rec.invoice_to_org_id);
361 oe_debug_pub.add(' Ship to org id :'|| p_line_rec.ship_to_org_id);
362 oe_debug_pub.add(' Deliver to Org id :'|| p_line_rec.deliver_to_org_id);
363 oe_debug_pub.add(' ordered_item :'|| p_line_rec.ordered_item, 1);
364 EXCEPTION
365
366
367
368 WHEN OTHERS THEN
369 IF OE_MSG_PUB.Check_Msg_Level(OE_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
370 THEN
371 OE_MSG_PUB.Add_Exc_Msg
372 ( G_PKG_NAME
373 , 'Line_Id_Conversion'
374 );
375 END IF;
376
377 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
378
379 null;
380 END Line_Id_Conversion;
381
382 -- Public Blanket order API
383 /*#
384 * Use this procedure to create Blanket Agreement in the Order Management system.
385 * @param p_org_id Input OU Organization Id
386 * @param p_operating_unit Input Operating Unit Name
387 * @param p_api_version_number API version used to check call compatibility
388 * @param x_return_status Return status of API call
389 * @param x_msg_count Number of stored processing messages
390 * @param x_msg_data Processing message data
391 * @param p_header_rec Input record structure containing current header-level information for an Agreement
392 * @param p_line_tbl Input table containing current line-level information for an Agreement
393 * @param p_control_rec Input record structure containing current control information for the API call
394 * @param x_header_rec Output record structure containing current header-level information for an Agreement
395 * @param x_line_tbl Output table containing current line-level information for an Agreement
396 * @rep:scope public
397 * @rep:lifecycle active
398 * @rep:category BUSINESS_ENTITY ONT_SALES_AGREEMENT
399 * @rep:displayname Sales Agreement API
400 */
401
402 PROCEDURE Process_Blanket
403 ( p_org_id IN NUMBER := NULL --MOAC
404 , p_operating_unit IN VARCHAR2 := NULL -- MOAC
405 , p_api_version_number IN NUMBER := 1.0
406 , x_return_status OUT NOCOPY VARCHAR2
407 , x_msg_count OUT NOCOPY NUMBER
408 , x_msg_data OUT NOCOPY VARCHAR2
409 , p_header_rec IN header_Rec_type :=
410 G_MISS_header_rec
411 , p_header_val_rec IN Header_Val_Rec_Type :=
412 G_MISS_header_Val_rec
413 , p_line_tbl IN line_tbl_Type :=
414 G_MISS_line_tbl
415 , p_line_val_tbl IN line_Val_tbl_Type :=
416 G_MISS_line_Val_tbl
417 , p_control_rec IN Control_rec_type :=
418 G_MISS_CONTROL_REC
419 , x_header_rec OUT NOCOPY header_Rec_type
420 , x_line_tbl OUT NOCOPY line_tbl_Type
421 ) IS
422
423 l_control_rec OE_Blanket_Pub.control_rec_type;
424 l_header_rec OE_Blanket_Pub.header_Rec_type;
425 l_header_val_rec OE_Blanket_Pub.Header_Val_Rec_Type := OE_Blanket_Pub.G_MISS_HEADER_VAL_REC;
426 l_line_rec OE_Blanket_Pub.Line_Rec_Type := OE_Blanket_Pub.G_MISS_BLANKET_LINE_REC;
427 l_line_val_rec OE_Blanket_Pub.Line_Val_Rec_Type := OE_Blanket_Pub.G_MISS_BLANKET_LINE_VAL_REC;
428 l_org_id NUMBER;
429 l_line_tbl line_tbl_Type := p_line_tbl;
430 l_line_val_tbl line_val_tbl_Type := p_line_val_tbl;
431 l_count INTEGER;
432 BEGIN
433 l_header_rec := p_header_rec ;
434 l_header_val_rec := p_header_val_rec;
435 -- Logic added for MOAC
436
437 IF (p_org_id IS NOT NULL AND p_org_id <> FND_API.G_MISS_NUM) THEN
438 l_org_id := p_org_id;
439 IF (p_operating_unit IS NOT NULL AND p_operating_unit <> FND_API.G_MISS_CHAR)
440 THEN
441 IF OE_MSG_PUB.Check_Msg_Level(OE_MSG_PUB.G_MSG_LVL_SUCCESS)
445 OE_MSG_PUB.Add;
442 THEN
443 fnd_message.set_name('ONT','OE_BOTH_VAL_AND_ID_EXIST');
444 FND_MESSAGE.SET_TOKEN('ATTRIBUTE','operating_unit');
446 END IF;
447 END IF;
448
449 ELSE
450 IF (p_operating_unit IS NOT NULL AND p_operating_unit <> FND_API.G_MISS_CHAR)
451 THEN
452 -- call value_to_id to get org_id
453 l_org_id := OE_Value_To_Id.OPERATING_UNIT(p_operating_unit);
454
455 END IF;
456 END IF;
457
458 IF l_header_rec.operation NOT IN ( 'INSERT','CREATE') THEN
459 FND_MESSAGE.SET_NAME('ONT','ONT_BSA_BATCH');
460 OE_MSG_PUB.Add;
461 x_return_status := FND_API.G_RET_STS_ERROR;
462 RAISE FND_API.G_EXC_ERROR;
463 END IF;
464
465
466 set_context(p_org_id =>l_org_id);
467
468 oe_debug_pub.add('After Set Context');
469
470
471 IF l_header_rec.operation = OE_Globals.G_OPR_CREATE THEN
472 -- Pre-default header_id for proper message display
473 SELECT OE_ORDER_HEADERS_S.NEXTVAL
474 INTO l_header_rec.header_id
475 FROM DUAL;
476 oe_debug_pub.add('Set Message Context');
477
478 OE_MSG_PUB.set_msg_context(
479 p_entity_code => 'BLANKET_HEADER'
480 ,p_entity_id => l_header_rec.header_id
481 ,p_header_id => l_header_rec.header_id
482 ,p_line_id => null
483 ,p_orig_sys_document_ref => null
484 ,p_orig_sys_document_line_ref => null
485 ,p_change_sequence => null
486 ,p_source_document_id => null
487 ,p_source_document_line_id => null
488 ,p_order_source_id => l_header_rec.source_document_id
489 ,p_source_document_type_id => null);
490
491 x_return_status := FND_API.G_RET_STS_SUCCESS;
492
493
494 oe_debug_pub.add('3');
495 oe_debug_pub.add (' Price List :'|| l_header_val_rec.price_list );
496 oe_debug_pub.add (' Price List id :'|| l_header_rec.price_list_id );
497
498 Header_Id_Conversion ( p_header_val_rec => l_header_val_rec
499 , p_header_rec => l_header_rec) ;
500
501 END IF;
502
503 OE_MSG_PUB.set_msg_context(
504 p_entity_code => 'BLANKET_HEADER'
505 ,p_entity_id => l_header_rec.header_id
506 ,p_header_id => l_header_rec.header_id
507 ,p_line_id => null
508 ,p_orig_sys_document_ref => null
509 ,p_orig_sys_document_line_ref => null
510 ,p_change_sequence => null
511 ,p_source_document_id => null
512 ,p_source_document_line_id => null
513 ,p_order_source_id => l_header_rec.source_document_id
514 ,p_source_document_type_id => null);
515
516 x_return_status := FND_API.G_RET_STS_SUCCESS;
517
518 FOR l_count in 1..l_line_tbl.COUNT LOOP
519
520 oe_debug_pub.add('In Lines Loop', 1);
521 oe_debug_pub.add(' Operation :'|| l_line_rec.operation,1);
522
523 IF l_line_tbl(l_count).operation = OE_Globals.G_OPR_CREATE THEN
524 oe_debug_pub.add(' Operation :'|| l_line_tbl(l_count).operation,1);
525 l_line_tbl(l_count).header_id := l_header_rec.header_id;
526
527 l_line_rec := l_line_tbl(l_count);
528 l_line_val_rec := l_line_val_tbl(l_count);
529
530 oe_debug_pub.add(' Call Line_Id_Conversion' ,1);
531
532 Line_Id_Conversion ( p_line_val_rec => l_line_val_rec
533 , p_line_rec => l_line_rec );
534
535 l_line_tbl(l_count) := l_line_rec;
536
537 -- Pre-default header_id for proper message display
538 SELECT OE_ORDER_LINES_S.NEXTVAL
539 INTO l_line_tbl(l_count).line_id
540 FROM DUAL;
541
542 END IF;
543
544 oe_debug_pub.add('In Lines Loop');
545 oe_debug_pub.add(' ordered item :'|| l_line_tbl(l_count).ordered_item, 1);
546
547 OE_MSG_PUB.set_msg_context(
548 p_entity_code => 'BLANKET_LINE'
549 ,p_entity_id => l_line_tbl(l_count).line_id
550 ,p_header_id => l_line_tbl(l_count).header_id
551 ,p_line_id => l_line_tbl(l_count).line_id
552 ,p_orig_sys_document_ref => null
553 ,p_orig_sys_document_line_ref => null
554 ,p_change_sequence => null
555 ,p_source_document_id => l_line_tbl(l_count).source_document_id
556 ,p_source_document_line_id => l_line_tbl(l_count).source_document_line_id
557 ,p_order_source_id => null
558 ,p_source_document_type_id => null);
559
560 IF l_line_tbl(l_count).operation NOT IN ( 'INSERT','CREATE') THEN
561 FND_MESSAGE.SET_NAME('ONT','ONT_BSA_BATCH');
562 OE_MSG_PUB.Add;
563 x_return_status := FND_API.G_RET_STS_ERROR;
564 RAISE FND_API.G_EXC_ERROR;
565 END IF;
566
567 END LOOP;
568 -- Prepare control record
569 l_control_rec.UI_CALL := FALSE;
570 l_control_rec.validate_attributes := TRUE;
571 l_control_rec.validate_entity := TRUE;
572 l_control_rec.check_security := TRUE;
573 l_control_rec.default_from_header := TRUE;
574
575 oe_debug_pub.add('Call OE_BLANKET_PVT.Process_Blanket');
576 -- E_GLOBALS.g_validate_desc_flex := p_validate_desc_flex ;
577
578
579 OE_BLANKET_PVT.Process_Blanket
580 ( p_org_id => p_org_id --MOAC
581 , p_operating_unit => p_operating_unit -- MOAC
582 , p_api_version_number => p_api_version_number
583 , x_return_status => x_return_status
584 , x_msg_count => x_msg_count
585 , x_msg_data => x_msg_data
586 , p_header_rec => l_header_rec
587 , p_line_tbl => l_line_tbl
588 , p_control_rec => l_control_rec
589 , x_header_rec => x_header_rec
590 , x_line_tbl => x_line_tbl
591 );
592
593 EXCEPTION
594
595 WHEN FND_API.G_EXC_ERROR THEN
596
597 x_return_status := FND_API.G_RET_STS_ERROR;
598
599 -- Get message count and data
600
601 OE_MSG_PUB.Count_And_Get
602 ( p_count => x_msg_count
603 , p_data => x_msg_data
604 );
605
606 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
607
608 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
609
610 -- Get message count and data
611
612 OE_MSG_PUB.Count_And_Get
613 ( p_count => x_msg_count
614 , p_data => x_msg_data
615 );
616
617 WHEN OTHERS THEN
618
619 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
620
621 IF OE_MSG_PUB.Check_Msg_Level(OE_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
622 THEN
623 OE_MSG_PUB.Add_Exc_Msg
624 ( G_PKG_NAME
625 , 'Process_Blanket'
626 );
627 END IF;
628
629 OE_MSG_PUB.Count_And_Get
630 ( p_count => x_msg_count
631 , p_data => x_msg_data
632 );
633
634
635 END Process_Blanket;
636
637 End OE_BLANKET_PUB;
638