DBA Data[Home] [Help]

PACKAGE: APPS.OE_ORDER_COPY_UTIL

Source


1 PACKAGE OE_Order_Copy_Util AS
2 /* $Header: OEXUCPYS.pls 120.2.12010000.6 2008/10/24 09:58:37 haagarwa 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 );
48 
49 G_Line_Num_Rec Line_Number_Rec_Type;
50 
51 TYPE Line_Set_Rec_Type IS RECORD
52 (  line_id                 NUMBER,
53    old_line_id             NUMBER,
54    line_index              NUMBER,
55    parent_line_index       NUMBER,
56    header_id               NUMBER,
57    line_type_id            NUMBER,
58    line_set_id             NUMBER,
59    old_set_id              NUMBER,
60    set_count               NUMBER
61 );
62 
63 TYPE Line_Set_Tbl_Type IS TABLE OF Line_Set_Rec_Type
64     INDEX BY BINARY_INTEGER;
65 
66 -- Copy Order IN parameter will be replaced with record type.
67 TYPE Copy_Rec_Type IS RECORD
68 ( api_version_number  NUMBER
69  ,init_msg_list       VARCHAR2(1)  --  := FND_API.G_FALSE
70  ,commit              VARCHAR2(1)  --  := FND_API.G_FALSE
71  ,copy_order          VARCHAR2(1)  --  := FND_API.G_TRUE
72  ,hdr_count           NUMBER         := 0
73  ,append_to_header_id NUMBER         := NULL
74  ,hdr_info            VARCHAR2(1)  --  := FND_API.G_TRUE
75  ,hdr_type            NUMBER         := NULL
76  ,hdr_descflex        VARCHAR2(1)  --  := FND_API.G_TRUE
77  ,hdr_scredits        VARCHAR2(1)  --  := FND_API.G_TRUE
78  ,hdr_attchmnts       VARCHAR2(1)  --  := FND_API.G_TRUE
79  ,hdr_holds           VARCHAR2(1)  --  := FND_API.G_TRUE
80  ,hdr_credit_card_details VARCHAR2(1) -- := FND_API.G_FALSE
81  ,version_number      NUMBER := NULL
82  ,line_version_number NUMBER := NULL
83  ,copy_transaction_name VARCHAR2(1) -- := FND_API.G_FALSE
84  ,copy_expiration_date VARCHAR2(1)  -- := FND_API.G_FALSE
85  ,expiration_date     DATE
86  ,transaction_name    VARCHAR2(240)
87  ,new_phase           VARCHAR2(1) -- N or F
88  ,phase_change_flag   VARCHAR2(1) -- N or F
89  ,line_phase_change_flag   VARCHAR2(1) -- N or F
90  ,version_reason_code VARCHAR2(30)
91  ,comments            VARCHAR2(2000)
92  ,manual_quote_number NUMBER
93  ,manual_order_number NUMBER         := NULL
94  ,all_lines           VARCHAR2(1)  --  := FND_API.G_TRUE
95  ,line_count          NUMBER         := 0
96  ,line_type           NUMBER         := NULL
97  ,incl_cancelled      VARCHAR2(1)  --  := FND_API.G_FALSE
98  ,line_price_mode     NUMBER       --  := G_CPY_ORIG_PRICE
99  ,line_price_date     DATE         --  := FND_API.G_MISS_DATE
100  ,line_discount_id    NUMBER         := NULL
101  ,line_descflex       VARCHAR2(1)  --  := FND_API.G_TRUE
102  ,line_scredits       VARCHAR2(1)  --  := FND_API.G_TRUE
103  ,line_attchmnts      VARCHAR2(1)  --  := FND_API.G_TRUE
104  ,line_holds          VARCHAR2(1)  --  := FND_API.G_TRUE
105  ,return_reason_code  VARCHAR2(30)   := NULL
106  ,default_null_values VARCHAR2(1)
107  ,copy_complete_config  VARCHAR2(1)
108  ,source_block_type   VARCHAR2(30)
109  ,hdr_payments        VARCHAR2(1)  --  := FND_API.G_FALSE
110  ,line_payments       VARCHAR2(1)  --  := FND_API.G_FALSE
111  -- Copy Sets ER #2830872 , #1566254.
112  ,line_fulfill_sets   VARCHAR2(1)  --  := FND_API.G_FALSE
113  ,line_ship_arr_sets  VARCHAR2(1)  --  := FND_API.G_FALSE
114  -- Copy Sets ER #2830872 , #1566254.
115  --ER 7258165 : Start : Copy accross organizations
116  ,copy_org_id NUMBER --Store new order org context
117  ,source_org_id NUMBER --Store Source block's org context
118  ,source_access_mode VARCHAR2(1) := 'S'  --Store Source block's org context
119  --ER 7258165 : End
120  );
121 
122 G_COPY_REC copy_rec_type;
123 
124 --  Top Model Line record type
125 
126 /* Start - Code for Bug 1923460, 3923574 */
127 
128 TYPE Top_Model_Rec_Type IS RECORD
129 (  config_header_id        NUMBER,
130    config_rev_nbr          NUMBER,
131    has_canceled_lines      VARCHAR2(1)); -- added new attribute for bug3923574
132 
133 TYPE Top_Model_Tbl_Type IS TABLE OF Top_Model_Rec_Type
134     INDEX BY BINARY_INTEGER;
135 
136 /* End - Code for Bug 1923460, 3923574 */
137 
138 
139 Function get_copy_rec
140 RETURN copy_rec_type;
141 
142 Function Get_Order_Category
143 ( p_order_type_id IN NUMBER )
144 RETURN VARCHAR2;
145 
146 Function Get_Default_line
147 ( p_order_type_id IN  NUMBER
148 ,x_line_type_id OUT NOCOPY NUMBER)
149 RETURN VARCHAR2;
150 
151 Function Get_Line_Category
152 ( p_Line_type_id IN NUMBER )
153 RETURN VARCHAR2;
154 
155 PROCEDURE Copy_Order
156  (p_copy_rec	 IN  copy_rec_type
157 ,p_hdr_id_tbl    IN  OE_GLOBALS.Selected_Record_Tbl
158 ,p_line_id_tbl   IN  OE_GLOBALS.Selected_Record_Tbl
159 ,x_header_id     OUT NOCOPY NUMBER
160 ,x_return_status OUT NOCOPY VARCHAR2
161 ,x_msg_count     OUT NOCOPY NUMBER
162 ,x_msg_data      OUT NOCOPY VARCHAR2);
163 
164 PROCEDURE copy_line_dff_from_ref
165 (p_ref_line_rec IN OE_Order_PUB.Line_Rec_Type,
166  p_x_line_rec   IN OUT NOCOPY OE_Order_PUB.Line_Rec_Type);
167 
168 Function CALL_DFF_COPY_EXTN_API(p_org_id IN NUMBER DEFAULT NULL)
169 RETURN BOOLEAN;
170 
171 -- Copy Sets ER #2830872 , #1566254 Begin.
172 PROCEDURE COPY_LINE_SETS(
173 p_old_header_id         IN NUMBER,
174 p_new_header_id         IN NUMBER,
175 p_line_tbl              IN OE_Order_PUB.Line_Tbl_Type,
176 p_copy_fulfillment_sets IN BOOLEAN,
177 p_copy_ship_arr_sets    IN BOOLEAN,
178 x_result               OUT NOCOPY VARCHAR2);
179 -- Copy Sets ER #2830872 , #1566254 End.
180 
181 END OE_Order_Copy_Util;