[Home] [Help]
PACKAGE: APPS.OE_ORDER_COPY_UTIL
Source
1 PACKAGE OE_Order_Copy_Util AUTHID CURRENT_USER AS
2 /* $Header: OEXUCPYS.pls 120.8.12020000.1 2012/06/26 09:26:16 appldev ship $ */
3
4 G_PKG_NAME CONSTANT VARCHAR2(30) := 'OE_ORDER_COPY_UTIL';
5 G_CPY_ORIG_PRICE CONSTANT NUMBER := 1;
6 G_CPY_REPRICE CONSTANT NUMBER := 2;
7 G_CPY_REPRICE_WITH_ORIG_DATE CONSTANT NUMBER := 3;
8 /* Added the following variable to fix the bug 2107810 */
9 G_CPY_REPRICE_PARTIAL CONSTANT NUMBER := 4;
10 G_Canceled_Line_Deleted BOOLEAN;
11 G_Order_Has_Split_Lines BOOLEAN;
12 G_REGULAR_TO_RMA BOOLEAN;
13 /* Added the following line to fix the bug 1923460 */
14 G_ORDER_LEVEL_COPY NUMBER := 0;
15 /* Added to support copy of older versions.. */
16 G_HDR_VER_NUMBER NUMBER := NULL;
17 G_HDR_PHASE_CHANGE_FLAG VARCHAR2(1) := NULL;
18 G_LN_VER_NUMBER NUMBER := NULL;
19 G_LN_PHASE_CHANGE_FLAG VARCHAR2(1) := NULL;
20 G_LINE_PRICE_MODE NUMBER;
21 --R12 CC Encryption
22 G_Create_Payment_Flag VARCHAR2(1) := 'N';
23 G_TRXN_EXTENSION_ID NUMBER;
24 G_Payment_Type_Code VARCHAR2(30);
25 --R12 CC Encryption
26
27 TYPE T_NUM is TABLE OF NUMBER;
28 TYPE T_V30 is TABLE OF VARCHAR(30);
29 TYPE T_V1 is TABLE OF VARCHAR(1);
30
31 TYPE Line_Number_Rec_Type IS RECORD
32 ( line_id T_NUM := T_NUM(),
33 new_line_id T_NUM := T_NUM(),
34 line_number T_NUM := T_NUM(),
35 shipment_number T_NUM := T_NUM(),
36 option_number T_NUM := T_NUM(),
37 component_number T_NUM := T_NUM(),
38 service_number T_NUM := T_NUM(),
39 split_from_line_id T_NUM := T_NUM(),
40 source_document_Line_id T_NUM := T_NUM(),
41 source_document_type_id T_NUM := T_NUM(),
42 split_by T_V30 := T_V30(),
43 line_set_id T_NUM := T_NUM(),
44 item_type_code T_V30 := T_V30(),
45 service_reference_line_id T_NUM := T_NUM(),
46 link_to_line_id T_NUM := T_NUM(),
47 top_model_line_id T_NUM := T_NUM() --9534576
48 );
49
50 G_Line_Num_Rec Line_Number_Rec_Type;
51
52 TYPE Line_Set_Rec_Type IS RECORD
53 ( line_id NUMBER,
54 old_line_id NUMBER,
55 line_index NUMBER,
56 parent_line_index NUMBER,
57 header_id NUMBER,
58 line_type_id NUMBER,
59 line_set_id NUMBER,
60 old_set_id NUMBER,
61 set_count NUMBER
62 );
63
64 TYPE Line_Set_Tbl_Type IS TABLE OF Line_Set_Rec_Type
65 INDEX BY BINARY_INTEGER;
66
67 -- Copy Order IN parameter will be replaced with record type.
68 TYPE Copy_Rec_Type IS RECORD
69 ( api_version_number NUMBER
70 ,init_msg_list VARCHAR2(1) -- := FND_API.G_FALSE
71 ,commit VARCHAR2(1) -- := FND_API.G_FALSE
72 ,copy_order VARCHAR2(1) -- := FND_API.G_TRUE
73 ,hdr_count NUMBER := 0
74 ,append_to_header_id NUMBER := NULL
75 ,hdr_info VARCHAR2(1) -- := FND_API.G_TRUE
76 ,hdr_type NUMBER := NULL
77 ,hdr_descflex VARCHAR2(1) -- := FND_API.G_TRUE
78 ,hdr_scredits VARCHAR2(1) -- := FND_API.G_TRUE
79 ,hdr_attchmnts VARCHAR2(1) -- := FND_API.G_TRUE
80 ,hdr_holds VARCHAR2(1) -- := FND_API.G_TRUE
81 ,hdr_credit_card_details VARCHAR2(1) -- := FND_API.G_FALSE
82 ,version_number NUMBER := NULL
83 ,line_version_number NUMBER := NULL
84 ,copy_transaction_name VARCHAR2(1) -- := FND_API.G_FALSE
85 ,copy_expiration_date VARCHAR2(1) -- := FND_API.G_FALSE
86 ,expiration_date DATE
87 ,transaction_name VARCHAR2(240)
88 ,new_phase VARCHAR2(1) -- N or F
89 ,phase_change_flag VARCHAR2(1) -- N or F
90 ,line_phase_change_flag VARCHAR2(1) -- N or F
91 ,version_reason_code VARCHAR2(30)
92 ,comments VARCHAR2(2000)
93 ,manual_quote_number NUMBER
94 ,manual_order_number NUMBER := NULL
95 ,all_lines VARCHAR2(1) -- := FND_API.G_TRUE
96 ,line_count NUMBER := 0
97 ,line_type NUMBER := NULL
98 ,incl_cancelled VARCHAR2(1) -- := FND_API.G_FALSE
99 ,line_price_mode NUMBER -- := G_CPY_ORIG_PRICE
100 ,line_price_date DATE -- := FND_API.G_MISS_DATE
101 ,line_discount_id NUMBER := NULL
102 ,line_descflex VARCHAR2(1) -- := FND_API.G_TRUE
103 ,line_scredits VARCHAR2(1) -- := FND_API.G_TRUE
104 ,line_attchmnts VARCHAR2(1) -- := FND_API.G_TRUE
105 ,line_holds VARCHAR2(1) -- := FND_API.G_TRUE
106 ,return_reason_code VARCHAR2(30) := NULL
107 ,default_null_values VARCHAR2(1)
108 ,copy_complete_config VARCHAR2(1)
109 ,source_block_type VARCHAR2(30)
110 ,hdr_payments VARCHAR2(1) -- := FND_API.G_FALSE
111 ,line_payments VARCHAR2(1) -- := FND_API.G_FALSE
112 -- Copy Sets ER #2830872 , #1566254.
113 ,line_fulfill_sets VARCHAR2(1) -- := FND_API.G_FALSE
114 ,line_ship_arr_sets VARCHAR2(1) -- := FND_API.G_FALSE
115 -- Copy Sets ER #2830872 , #1566254.
116 --ER 7258165 : Start : Copy accross organizations
117 ,copy_org_id NUMBER --Store new order org context
118 ,source_org_id NUMBER --Store Source block's org context
119 ,source_access_mode VARCHAR2(1) := 'S' --Store Source block's org context
120 --ER 7258165 : End
121 );
122
123 G_COPY_REC copy_rec_type;
124
125 -- Top Model Line record type
126
127 /* Start - Code for Bug 1923460, 3923574 */
128
129 TYPE Top_Model_Rec_Type IS RECORD
130 ( config_header_id NUMBER,
131 config_rev_nbr NUMBER,
132 has_canceled_lines VARCHAR2(1)); -- added new attribute for bug3923574
133
134 TYPE Top_Model_Tbl_Type IS TABLE OF Top_Model_Rec_Type
135 INDEX BY BINARY_INTEGER;
136
137 /* End - Code for Bug 1923460, 3923574 */
138
139
140 Function get_copy_rec
141 RETURN copy_rec_type;
142
143 Function Get_Order_Category
144 ( p_order_type_id IN NUMBER )
145 RETURN VARCHAR2;
146
147 Function Get_Default_line
148 ( p_order_type_id IN NUMBER
149 ,x_line_type_id OUT NOCOPY NUMBER)
150 RETURN VARCHAR2;
151
152 Function Get_Line_Category
153 ( p_Line_type_id IN NUMBER )
154 RETURN VARCHAR2;
155
156 PROCEDURE Copy_Order
157 (p_copy_rec IN copy_rec_type
158 ,p_hdr_id_tbl IN OE_GLOBALS.Selected_Record_Tbl
159 ,p_line_id_tbl IN OE_GLOBALS.Selected_Record_Tbl
160 ,x_header_id OUT NOCOPY NUMBER
161 ,x_return_status OUT NOCOPY VARCHAR2
162 ,x_msg_count OUT NOCOPY NUMBER
163 ,x_msg_data OUT NOCOPY VARCHAR2);
164
165 PROCEDURE copy_line_dff_from_ref
166 (p_ref_line_rec IN OE_Order_PUB.Line_Rec_Type,
167 p_x_line_rec IN OUT NOCOPY OE_Order_PUB.Line_Rec_Type);
168
169 Function CALL_DFF_COPY_EXTN_API(p_org_id IN NUMBER DEFAULT NULL)
170 RETURN BOOLEAN;
171
172 -- Copy Sets ER #2830872 , #1566254 Begin.
173 PROCEDURE COPY_LINE_SETS(
174 p_old_header_id IN NUMBER,
175 p_new_header_id IN NUMBER,
176 p_line_tbl IN OE_Order_PUB.Line_Tbl_Type,
177 p_copy_fulfillment_sets IN BOOLEAN,
178 p_copy_ship_arr_sets IN BOOLEAN,
179 x_result OUT NOCOPY VARCHAR2);
180 -- Copy Sets ER #2830872 , #1566254 End.
181
182 END OE_Order_Copy_Util;