DBA Data[Home] [Help]

PACKAGE: APPS.CSI_UTL_PKG

Source


1 PACKAGE csi_utl_pkg AUTHID CURRENT_USER as
2 /* $Header: csiutls.pls 120.5.12020000.2 2012/11/09 07:18:45 mvaradam ship $ */
3 
4   /*----------------------------------------------------------*/
5   /* Package Name  : csi_utl_pkg                              */
6   /* Description   : used by the order shipment interface     */
7   /*                 to do the validations                    */
8   /*----------------------------------------------------------*/
9 
10   TYPE txn_line_dtl_rec is RECORD
11   ( txn_line_detail_id   NUMBER :=  FND_API.G_MISS_NUM );
12 
13   TYPE txn_line_dtl_tbl is TABLE OF txn_line_dtl_rec INDEX BY BINARY_INTEGER;
14 
15   TYPE txn_ps_rec is RECORD(
16     txn_line_detail_id         number      := fnd_api.g_miss_num,
17     transaction_line_id        number      := fnd_api.g_miss_num,
18     processed_flag             varchar2(1) := fnd_api.g_miss_char,
19     quantity                   number      := fnd_api.g_miss_num,
20     quantity_ratio             number      := fnd_api.g_miss_num,
21     quantity_remaining         number      := fnd_api.g_miss_num);
22 
23   TYPE txn_ps_tbl IS TABLE OF txn_ps_rec INDEX BY binary_integer;
24 
25   FUNCTION Entitledcontracts (
26    p_instance_id IN number)  RETURN  VARCHAR2;
27 
28   FUNCTION get_curr_party(
29     p_instance_id   IN NUMBER,
30     p_rel_type_code IN VARCHAR2) RETURN NUMBER ;
31 
32   PROCEDURE get_ext_attribs(
33     p_instance_id        IN  NUMBER ,
34     p_attribute_id       IN  NUMBER ,
35     x_attribute_value_id OUT NOCOPY NUMBER,
36     x_obj_version_number OUT NOCOPY NUMBER,
37     x_return_status      OUT NOCOPY VARCHAR2);
38 
39   PROCEDURE get_org_assign(
40     p_instance_id        IN  NUMBER ,
41     p_operating_unit_id  IN  NUMBER ,
42     p_rel_type_code      IN  VARCHAR2,
43     x_instance_ou_id     OUT NOCOPY NUMBER,
44     x_obj_version_number OUT NOCOPY NUMBER,
45     x_return_status      OUT NOCOPY VARCHAR2);
46 
47   PROCEDURE get_party_account(
48     p_instance_pty_id    IN  NUMBER ,
49     p_rel_type_code      IN  VARCHAR2,
50     x_ip_account_id      OUT NOCOPY NUMBER,
51     x_obj_version_number OUT NOCOPY NUMBER,
52     x_return_status      OUT NOCOPY VARCHAR2);
53 
54   PROCEDURE get_instance_party(
55     p_instance_id        IN  NUMBER ,
56     p_rel_type_code      IN  VARCHAR2,
57     x_inst_pty_qty       OUT NOCOPY NUMBER,
58     x_obj_version_number OUT NOCOPY NUMBER,
59     x_return_status      OUT NOCOPY VARCHAR2);
60 
61   PROCEDURE get_instance(
62     p_instance_id        IN  NUMBER ,
63     x_obj_version_number OUT NOCOPY NUMBER,
64     x_inst_qty           OUT NOCOPY NUMBER,
65     x_return_status      OUT NOCOPY VARCHAR2 );
66 
67   FUNCTION get_ii_obj_ver_num(
68     p_relationship_id IN NUMBER) RETURN NUMBER ;
69 
70   FUNCTION get_org_obj_ver_num(
71     p_instance_ou_id IN NUMBER) RETURN NUMBER ;
72 
73   FUNCTION get_ext_obj_ver_num(
74     p_attrib_value_id IN NUMBER) RETURN NUMBER;
75 
76   FUNCTION get_pty_obj_ver_num(
77     p_inst_pty_id IN NUMBER) RETURN NUMBER;
78 
79   FUNCTION get_acct_obj_ver_num(
80     p_ip_acct_id  IN NUMBER) RETURN NUMBER;
81 
82   FUNCTION get_primay_uom(
83     p_inv_item_id IN NUMBER,
84     p_inv_org_id  IN NUMBER) RETURN VARCHAR2;
85 
86   FUNCTION Check_relation_exists(
87     p_txn_ii_rltns_tbl   IN csi_t_datastructures_grp.txn_ii_rltns_tbl,
88     p_txn_line_detail_id IN NUMBER) RETURN BOOLEAN;
89 
90   PROCEDURE Get_Pricing_Attribs(
91     p_line_id               IN NUMBER,
92     x_pricing_attb_tbl      IN OUT NOCOPY csi_datastructures_pub.pricing_attribs_tbl,
93     x_return_status         OUT NOCOPY VARCHAR2 );
94 
95   PROCEDURE split_ship_rec(
96     x_upd_txn_line_dtl_tbl    IN OUT NOCOPY csi_t_datastructures_grp.txn_line_detail_tbl
97    ,x_txn_line_detail_tbl     IN OUT NOCOPY csi_t_datastructures_grp.txn_line_detail_tbl
98    ,x_txn_line_detail_rec     IN OUT NOCOPY csi_t_datastructures_grp.txn_line_detail_rec
99    ,p_txn_sub_type_rec        IN csi_order_ship_pub.txn_sub_type_rec
100    ,p_order_shipment_rec      IN csi_order_ship_pub.order_shipment_rec
101    ,p_order_line_rec          IN csi_order_ship_pub.order_line_rec
102    ,p_proc_qty                IN NUMBER
103    ,x_return_status           OUT NOCOPY VARCHAR2);
104 
105 PROCEDURE create_txn_details
106  (  x_txn_line_dtl_rec        IN OUT NOCOPY csi_t_datastructures_grp.txn_line_detail_rec
107    ,p_txn_sub_type_rec        IN csi_order_ship_pub.txn_sub_type_rec
108    ,p_order_shipment_rec      IN csi_order_ship_pub.order_shipment_rec
109    ,p_order_line_rec          IN csi_order_ship_pub.order_line_rec
110    ,x_return_status           OUT NOCOPY VARCHAR2 );
111 
112   PROCEDURE get_party_id(
113     p_cust_acct_id  IN  number,
114     x_party_id      OUT NOCOPY number,
115     x_return_status OUT NOCOPY varchar2);
116 
117 FUNCTION Check_config_exists
118     ( p_txn_ii_rltns_tbl  IN csi_t_datastructures_grp.txn_ii_rltns_tbl,
119       p_txn_detail_id     IN NUMBER ) RETURN BOOLEAN ;
120 
121 
122 FUNCTION validate_inst_party
123     (p_instance_id IN NUMBER,
124      p_inst_party_id IN NUMBER,
125      p_pty_rel_code IN VARCHAR2 ) RETURN BOOLEAN;
126 
127   PROCEDURE get_dflt_inst_status_id(
128     x_instance_status_id   OUT NOCOPY number,
129     x_return_status        OUT NOCOPY varchar2);
130 
131   PROCEDURE get_dflt_sub_type_id(
132     p_transaction_type_id  IN         number,
133     x_sub_type_id          OUT NOCOPY number,
134     x_return_status        OUT NOCOPY varchar2);
135 
136 FUNCTION Get_trx_type_id
137     (p_trx_line_id IN NUMBER ) RETURN NUMBER ;
138 
139 FUNCTION Get_trx_line_id
140     (p_src_trx_id IN NUMBER,
141      p_src_table_name IN VARCHAR2) RETURN NUMBER;
142 
143 
144 FUNCTION get_serial_contl_code
145    ( p_inv_item_id IN NUMBER,
146      p_inv_org_id  IN NUMBER  ) RETURN NUMBER ;
147 
148 
149 FUNCTION get_instance_party_id
150   ( p_instance_id   IN NUMBER )RETURN NUMBER ;
151 
152 FUNCTION get_ip_account_id
153   ( p_instance_party_id   IN NUMBER )RETURN NUMBER ;
154 
155 FUNCTION get_instance
156   ( p_order_line_id IN NUMBER )RETURN NUMBER ;
157 
158 FUNCTION check_relation_exist
159   ( p_model_line_id IN NUMBER ,
160     p_line_id IN NUMBER    )RETURN BOOLEAN ;
161 
162 PROCEDURE get_order_line_dtls
163  ( p_mtl_transaction_id IN NUMBER,
164    x_order_line_rec     OUT NOCOPY  csi_order_ship_pub.order_line_rec,
165    x_return_status      OUT NOCOPY VARCHAR2 );
166 
167 PROCEDURE get_master_organization
168   (p_organization_id          IN  NUMBER,
169    p_master_organization_id   OUT NOCOPY NUMBER,
170    x_return_status            OUT NOCOPY VARCHAR2);
171 
172 /* Added p_order_header_id as part of fix for Bug : 2897324 */
173 
174 PROCEDURE get_split_order_line
175  ( p_order_line_id     IN NUMBER,
176    p_order_header_id   IN NUMBER,
177    x_split_ord_line_id OUT NOCOPY  NUMBER,
178    x_return_status     OUT NOCOPY VARCHAR2 );
179 
180 PROCEDURE get_sub_type_rec
181  ( p_sub_type_id      IN NUMBER,
182    p_trx_type_id      IN NUMBER,
183    x_trx_sub_type_rec OUT NOCOPY csi_order_ship_pub.txn_sub_type_rec,
184    x_return_status    OUT NOCOPY VARCHAR2  );
185 
186 PROCEDURE get_int_party
187  ( x_int_party_id  OUT NOCOPY NUMBER,
188    x_return_status OUT NOCOPY VARCHAR2 );
189 
190 PROCEDURE get_inst_relation
191  (  p_ii_relationship_id IN NUMBER,
192     x_object_id          OUT NOCOPY NUMBER ,
193     x_subject_id         OUT NOCOPY NUMBER ,
194     x_return_status      OUT NOCOPY VARCHAR2 );
195 
196   PROCEDURE get_model_inst_lst(
197     p_parent_line_id  IN  number,
198     x_model_inst_tbl  OUT NOCOPY csi_order_ship_pub.model_inst_tbl,
199     x_return_status   OUT NOCOPY varchar2);
200 
201 PROCEDURE get_qty_ratio --fix for 5096435
202  ( p_order_line_qty   IN NUMBER,
203    p_order_item_id    IN NUMBER,
204    p_model_remnant_flag IN VARCHAR2,
205    p_link_to_line_id  IN NUMBER,
206    x_qty_ratio        OUT NOCOPY NUMBER,
207    x_return_status    OUT NOCOPY VARCHAR2 );
208 
209 PROCEDURE get_link_to_line_id
210  ( x_link_to_line_id  IN OUT NOCOPY NUMBER,
211    x_return_status    OUT NOCOPY    VARCHAR2 );
212 
213 PROCEDURE build_inst_ii_tbl
214     ( p_orig_inst_id     IN NUMBER,
215       p_txn_ii_rltns_tbl IN OUT NOCOPY csi_t_datastructures_grp.txn_ii_rltns_tbl,
216       p_new_instance_tbl IN csi_datastructures_pub.instance_tbl,
217       x_return_status    OUT NOCOPY VARCHAR2);
218 
219 PROCEDURE update_txn_line_dtl
220     ( p_source_trx_id    IN NUMBER,
221       p_source_trx_table IN VARCHAR2,
222       p_api_name         IN VARCHAR2,
223       p_error_message    IN VARCHAR2 );
224 
225   FUNCTION wip_config_exists(
226     p_instance_id         IN NUMBER)
227   RETURN boolean;
228 
229   FUNCTION check_standard_bom(
230     p_order_line_rec      IN csi_order_ship_pub.order_line_rec)
231   RETURN boolean;
232 
233   PROCEDURE create_txn_dtls(
234     p_source_trx_id    IN NUMBER,
235     p_source_trx_table IN VARCHAR2,
236     x_return_status    OUT NOCOPY VARCHAR2 );
237 
238   PROCEDURE conv_to_prim_uom(
239     p_inv_organization_id IN number,
240     p_inventory_item_id   IN number,
241     p_uom                 IN varchar2,
242     x_txn_line_dtl_tbl    IN OUT NOCOPY csi_t_datastructures_grp.txn_line_detail_tbl,
243     x_return_status       OUT NOCOPY    varchar2);
244 
245   PROCEDURE get_source_trx_dtls(
246     p_mtl_transaction_id IN NUMBER,
247     x_mtl_txn_rec        OUT NOCOPY csi_order_ship_pub.MTL_TXN_REC,
248     x_error_message      OUT NOCOPY VARCHAR2,
249     x_return_status      OUT NOCOPY VARCHAR2);
250 
251   PROCEDURE split_txn_dtls(
252     split_txn_dtl_id            IN  NUMBER,
253     x_txn_line_dtls_lst         OUT NOCOPY txn_line_dtl_tbl,
254     x_return_status             OUT NOCOPY varchar2);
255 
256   /* Included for Bug 4354267 */
257   PROCEDURE split_txn_dtls_with_qty(
258     split_txn_dtl_id            IN  NUMBER,
259     p_split_qty			IN NUMBER,
260     x_return_status             OUT NOCOPY varchar2);
261 
262 
263   PROCEDURE get_system_tbl(
264     p_txn_systems_rec            IN  csi_t_datastructures_grp.txn_system_rec,
265     x_cre_systems_rec            OUT NOCOPY csi_datastructures_pub.system_rec );
266 
267   PROCEDURE get_org_assignment_tbl(
268     p_txn_line_detail_rec        IN  csi_t_datastructures_grp.txn_line_detail_rec,
269     p_txn_org_assgn_tbl          IN  csi_t_datastructures_grp.txn_org_assgn_tbl,
270     x_cre_org_units_tbl          OUT NOCOPY csi_datastructures_pub.organization_units_tbl,
271     x_upd_org_units_tbl          OUT NOCOPY csi_datastructures_pub.organization_units_tbl,
272     x_return_status              OUT NOCOPY VARCHAR2        );
273 
274   PROCEDURE get_ext_attribs_tbl(
275     p_txn_line_detail_rec      IN  csi_t_datastructures_grp.txn_line_detail_rec,
276     p_txn_ext_attrib_vals_tbl  IN  csi_t_datastructures_grp.txn_ext_attrib_vals_tbl,
277     x_cre_ext_attrib_val_tbl   OUT NOCOPY csi_datastructures_pub.extend_attrib_values_tbl,
278     x_upd_ext_attrib_val_tbl   OUT NOCOPY csi_datastructures_pub.extend_attrib_values_tbl,
279     x_return_status            OUT NOCOPY VARCHAR2 );
280 
281   /* Added p_trx_rec for ER 2581101 */
282   PROCEDURE get_ii_relation_tbl(
283     p_txn_line_detail_tbl      IN  csi_t_datastructures_grp.txn_line_detail_tbl,
284     p_txn_ii_rltns_tbl         IN  csi_t_datastructures_grp.txn_ii_rltns_tbl,
285     p_trx_rec                  IN  csi_datastructures_pub.transaction_rec,
286     p_order_line_rec           IN csi_order_ship_pub.order_line_rec,
287     x_cre_ii_rltns_tbl         OUT NOCOPY csi_datastructures_pub.ii_relationship_tbl,
288     x_upd_ii_rltns_tbl         OUT NOCOPY csi_datastructures_pub.ii_relationship_tbl,
289     x_return_status            OUT NOCOPY VARCHAR2        );
290 
291   PROCEDURE rebuild_tbls(
292     p_new_instance_id          IN  NUMBER,
293     x_upd_party_tbl            IN  OUT NOCOPY csi_datastructures_pub.party_tbl,
294     x_upd_party_acct_tbl       IN  OUT NOCOPY csi_datastructures_pub.party_account_tbl,
295     x_upd_org_units_tbl        IN  OUT NOCOPY csi_datastructures_pub.organization_units_tbl,
296     x_upd_ext_attrib_val_tbl   IN  OUT NOCOPY csi_datastructures_pub.extend_attrib_values_tbl,
297     x_cre_org_units_tbl        IN  OUT NOCOPY csi_datastructures_pub.organization_units_tbl,
298     x_cre_ext_attrib_val_tbl   IN  OUT NOCOPY csi_datastructures_pub.extend_attrib_values_tbl,
299     x_txn_ii_rltns_tbl         IN  OUT NOCOPY csi_t_datastructures_grp.txn_ii_rltns_tbl,
300     x_txn_line_detail_rec      IN  OUT NOCOPY csi_t_datastructures_grp.txn_line_detail_rec,
301     x_return_status            OUT NOCOPY VARCHAR2 );
302 
303   PROCEDURE cascade_txn_dtls(
304     p_source_trx_id            IN  NUMBER,
305     p_source_trx_table         IN  VARCHAR2,
306     p_ratio                    IN  NUMBER,
307     x_return_status            OUT NOCOPY VARCHAR2);
308 
309   PROCEDURE derive_party_id(
310     p_cust_acct_role_id        IN  NUMBER,
311     x_party_id                 OUT NOCOPY NUMBER,
312     x_return_status            OUT NOCOPY VARCHAR2);
313 
314   PROCEDURE get_party_owner(
315     p_txn_line_detail_rec      IN  csi_t_datastructures_grp.txn_line_detail_rec,
316     p_txn_party_detail_tbl     IN  csi_t_datastructures_grp.txn_party_detail_tbl,
317     p_txn_pty_acct_dtl_tbl     IN  csi_t_datastructures_grp.txn_pty_acct_detail_tbl,
318     x_trx_sub_type_rec         IN  csi_order_ship_pub.txn_sub_type_rec,
319     p_order_line_rec           IN  csi_order_ship_pub.order_line_rec,
320     x_upd_party_tbl            OUT NOCOPY csi_datastructures_pub.party_tbl ,
321     x_upd_party_acct_tbl       OUT NOCOPY csi_datastructures_pub.party_account_tbl,
322     x_cre_party_tbl            OUT NOCOPY csi_datastructures_pub.party_tbl ,
323     x_cre_party_acct_tbl       OUT NOCOPY csi_datastructures_pub.party_account_tbl,
324     x_return_status            OUT NOCOPY VARCHAR2);
325 
326   PROCEDURE make_non_header_tbl(
327     p_instance_header_tbl      IN  csi_datastructures_pub.instance_header_tbl,
328     x_instance_tbl             OUT NOCOPY csi_datastructures_pub.instance_tbl,
329     x_return_status            OUT NOCOPY varchar2);
330 
331   PROCEDURE call_contracts_chk(
332     p_txn_line_detail_id   in  number,
333     p_txn_ii_rltns_tbl     in  csi_t_datastructures_grp.txn_ii_rltns_tbl,
334     x_call_contracts       OUT NOCOPY varchar2,
335     x_return_status        OUT NOCOPY varchar2);
336 
337   PROCEDURE get_item_control_rec(
338     p_mtl_txn_id        IN  number,
339     x_item_control_rec  OUT NOCOPY csi_order_ship_pub.item_control_rec,
340     x_return_status     OUT NOCOPY varchar2);
341 
342   ---Added (Start) for m-to-m enhancements
343   PROCEDURE rltns_xfaced_to_IB (
344     p_xtn_ii_rltns_rec  IN  csi_t_datastructures_grp.txn_ii_rltns_rec,
345     x_xface_to_IB_flag  OUT NOCOPY VARCHAR2,
346     x_return_status     OUT NOCOPY VARCHAR2);
347 
348   PROCEDURE build_txn_relations (
349     p_txn_line_detail_tbl IN csi_t_datastructures_grp.txn_line_detail_tbl ,
350     x_txn_ii_rltns_tbl       OUT NOCOPY csi_t_datastructures_grp.txn_ii_rltns_tbl,
351     x_return_status          OUT NOCOPY VARCHAR2) ;
352 
353 
354   PROCEDURE get_partner_rltns (
355     p_txn_line_detail_rec IN csi_t_datastructures_grp.txn_line_detail_rec ,
356     x_txn_ii_rltns_tbl       OUT NOCOPY csi_t_datastructures_grp.txn_ii_rltns_tbl,
357     x_txn_line_detail_tbl    OUT NOCOPY csi_t_datastructures_grp.txn_line_detail_tbl,
358     x_return_status          OUT NOCOPY VARCHAR2) ;
359   ---Added (End) for m-to-m enhancements
360 
361   PROCEDURE build_parent_relation (
362     p_order_line_rec    IN            csi_order_ship_pub.order_line_rec,
363     x_model_inst_tbl    IN OUT NOCOPY csi_order_ship_pub.model_inst_tbl,
364     x_txn_line_dtl_tbl  IN OUT NOCOPY csi_t_datastructures_grp.txn_line_detail_tbl,
365     x_txn_ii_rltns_tbl  IN OUT NOCOPY csi_t_datastructures_grp.txn_ii_rltns_tbl,
366     x_return_status        OUT NOCOPY VARCHAR2);
367 
368   PROCEDURE build_child_relation(
369     p_order_line_rec     IN csi_order_ship_pub.order_line_rec,
370     p_model_txn_line_rec IN csi_t_datastructures_grp.txn_line_rec,
371     px_csi_txn_rec       IN OUT NOCOPY csi_datastructures_pub.transaction_rec,
372     x_return_status         OUT NOCOPY varchar2);
373 
374   PROCEDURE get_ib_trackable_children(
375     p_order_line_rec     IN csi_order_ship_pub.order_line_rec,
376     x_trackable_line_tbl OUT NOCOPY oe_order_pub.line_tbl_type,
377     x_return_status      OUT NOCOPY varchar2);
378 
379   PROCEDURE amend_contracts(
380     p_relationship_type_code in  varchar2,
381     p_object_instance_id     in  number,
382     p_subject_instance_id    in  number,
383     p_trx_rec                in  csi_datastructures_pub.transaction_rec,
384     x_return_status          OUT NOCOPY varchar2);
385 
386   PROCEDURE get_parties_and_accounts(
387     p_instance_id      IN     number,
388     p_tld_rec          IN     csi_t_datastructures_grp.txn_line_detail_rec,
389     p_t_pty_tbl        IN     csi_t_datastructures_grp.txn_party_detail_tbl,
390     p_t_pty_acct_tbl   IN     csi_t_datastructures_grp.txn_pty_acct_detail_tbl,
391     p_owner_pty_rec    IN     csi_datastructures_pub.party_rec,
392     p_owner_acct_rec   IN     csi_datastructures_pub.party_account_rec,
393     p_order_line_rec   IN     csi_order_ship_pub.order_line_rec,
394     x_i_pty_tbl           OUT nocopy csi_datastructures_pub.party_tbl,
395     x_i_pty_acct_tbl      OUT nocopy csi_datastructures_pub.party_account_tbl,
396     x_return_status       OUT nocopy varchar2);
397 
398   PROCEDURE get_unit_price_in_primary_uom(
399     p_unit_price                IN     number,
400     p_unit_price_uom            IN     varchar2,
401     px_item_control_rec         IN OUT nocopy csi_order_ship_pub.item_control_rec,
402     x_unit_price_in_primary_uom    OUT nocopy number,
403     x_return_status                OUT nocopy varchar2);
404 
405 -- Added for bug#14835893
406  FUNCTION get_lot_ctrl_code(
407     p_transaction_id   IN NUMBER) RETURN NUMBER ;
408 
409 END csi_utl_pkg ;