DBA Data[Home] [Help]

PACKAGE: APPS.OKS_IBINT_PUB

Source


1 Package OKS_IBINT_PUB As
2 /* $Header: OKSPIBIS.pls 120.8.12000000.1 2007/01/16 22:06:40 appldev ship $ */
3 
4  ---------------------------------------------------------------------------
5   -- GLOBAL MESSAGE CONSTANTS
6   ---------------------------------------------------------------------------
7   G_REQUIRED_VALUE		CONSTANT VARCHAR2(200) := OKC_API.G_REQUIRED_VALUE;
8   G_INVALID_VALUE		CONSTANT VARCHAR2(200) := OKC_API.G_INVALID_VALUE;
9   G_COL_NAME_TOKEN		CONSTANT VARCHAR2(200) := OKC_API.G_COL_NAME_TOKEN;
10   G_PARENT_TABLE_TOKEN		CONSTANT VARCHAR2(200) := OKC_API.G_PARENT_TABLE_TOKEN;
11   G_CHILD_TABLE_TOKEN		CONSTANT VARCHAR2(200) := OKC_API.G_CHILD_TABLE_TOKEN;
12   G_UNEXPECTED_ERROR            CONSTANT VARCHAR2(200) := 'OKC_CONTRACTS_UNEXP_ERROR';
13   G_SQLERRM_TOKEN               CONSTANT VARCHAR2(200) := 'SQLerrm';
14   G_SQLCODE_TOKEN               CONSTANT VARCHAR2(200) := 'SQLcode';
15   G_UPPERCASE_REQUIRED		CONSTANT VARCHAR2(200) := 'OKC_CONTRACTS_UPPERCASE_REQUIRED';
16 
17   ------------------------------------------------------------------------------------
18   -- GLOBAL EXCEPTION
19   ---------------------------------------------------------------------------
20   G_EXCEPTION_HALT_VALIDATION	EXCEPTION;
21 
22   -- GLOBAL VARIABLES
23   ---------------------------------------------------------------------------
24   G_PKG_NAME			CONSTANT VARCHAR2(200) := 'OKSOMINT';
25   G_APP_NAME			CONSTANT VARCHAR2(3)   := 'OKS';
26   G_FND_LOG_OPTION              CONSTANT VARCHAR2(30)  := NVL(Fnd_Profile.Value('OKS_DEBUG'),'N');
27   ---------------------------------------------------------------------------
28 
29   Type Instance_rec_type Is Record
30  (     old_customer_product_id  Number
31        ,old_quantity            Number
32        ,Bom_explosion_flag      Varchar2(1)
33        ,Old_Unit_of_measure	Varchar2(3)
34        ,Old_Inventory_item_id   Number
35        ,Old_Customer_acct_id    Number
36        ,Organization_id         Number
37        ,Bill_to_site_use_id     Number
38        ,Ship_to_site_use_id     Number
39        ,Org_id	                Number
40        ,Order_line_id           Number
41        ,Shipped_date            Date
42        ,Installation_date       Date
43        ,transaction_date        Date
44 
45 );
46 
47 Type l_instance_tbl is table of instance_Rec_type index by binary_integer;
48 instance_tbl l_instance_tbl;
49 Type txn_instance_rec is record
50 (
51 
52 Old_Customer_product_id	NUMBER,
53 Old_Quantity	NUMBER,
54 Old_Unit_of_measure	VARCHAR2 (3),
55 Old_Inventory_item_id	NUMBER,
56 Old_Customer_acct_id	NUMBER,
57 New_Customer_product_id	NUMBER,
58 New_Quantity	NUMBER,
59 New_Customer_acct_id	NUMBER,
60 New_inventory_item_id	NUMBER,
61 New_Unit_of_measure	VARCHAR2(3),
62 Org_id	NUMBER,
63 Order_line_id	NUMBER,
64 Shipped_date	DATE,
65 Installation_date	DATE,
66 Bill_to_site_use_id	NUMBER,
67 Ship_to_site_use_id	NUMBER,
68 Organization_id	NUMBER,
69 System_id	NUMBER,
70 Bom_explosion_flag	VARCHAR2 (1),
71 Return_reason_code	VARCHAR2 (240),
72 Raise_credit	VARCHAR2 (50),
73 Transaction_date	Date,
74 Transfer_date	Date,
75 Termination_date	Date,
76 TRM	VARCHAR2(1),
77 TRF	VARCHAR2(1),
78 RET	VARCHAR2(1),
79 RPL	VARCHAR2(1),
80 IDC	VARCHAR2(1),
81 UPD	VARCHAR2(1),
82 SPL	VARCHAR2(1),
83 NEW	VARCHAR2(1),
84 RIN	VARCHAR2(1)
85 );
86 Type txn_instance_tbl is table of txn_instance_rec index by binary_integer;
87 /*
88 This api is an interface api, called by IB when any instance operation is performed.
89 For Mass Instance Updates, batch_id and batch_type along with the list of instances
90 is passed to identify the Mass update operation.
91 For Instance transfers, instance terminations and instance installation date change, parent instance as well as the components affected by the transaction are passed
92 */
93 Procedure IB_interface(
94 P_Api_Version	NUMBER,
95 P_init_msg_list	VARCHAR2,
96 P_single_txn_date_flag	VARCHAR2,
97 P_Batch_type	VARCHAR2,
98 P_Batch_ID	NUMBER,
99 P_OKS_Txn_Inst_tbl	TXN_INSTANCE_tbl,
100 x_return_status	OUT NOCOPY VARCHAR2,
101 x_msg_count	OUT NOCOPY NUMBER,
102 x_msg_data	OUT NOCOPY VARCHAR2
103 );
104 
105 
106  l_Header_rec       OKS_EXTWAR_UTIL_PVT.Header_Rec_Type;
107   l_line_rec         OKS_EXTWAR_UTIL_PVT.Line_Rec_Type;
108   War_tbl 	     OKS_EXTWAR_UTIL_PVT.War_tbl;
109   l_Service_tbl      OKS_EXTWAR_UTIL_PVT.Service_tbl;
110   l_extwar_rec       OKS_EXTWARPRGM_PVT .extwar_rec_Type;
111 
112   p_contact_tbl      OKS_EXTWARPRGM_PVT .contact_tbl;
113   l_codv_tbl_in      OKS_COD_PVT.codv_tbl_type;
114   l_codv_tbl_out     OKS_COD_PVT.codv_tbl_type;
115   l_SalesCredit_tbl  OKS_EXTWARPRGM_PVT.SalesCredit_tbl;
116   l_SalesCredit_tbl_hdr  OKS_EXTWARPRGM_PVT.SalesCredit_tbl; --mmadhavi bug 4174921
117   l_pricing_attributes_in     OKS_EXTWARPRGM_PVT.Pricing_attributes_Type;
118 
119   TYPE CP_REC_TYPE Is RECORD
120   (
121    org_id		Number
122   ,customer_product_id  Number
123   ,order_line_id        Number
124   ,SHipped_date         Date
125   ,Installation_date    Date
126   ,Bill_to_site_use_id  Number
127   ,Ship_to_site_use_id  Number
128   ,Quantity             Number
129   ,Unit_of_measure      Varchar2(3)
130   ,Inventory_item_id    Number
131   ,Customer_acct_id     Number
132   ,organization_id      Number
133   ,System_id            Number
134   ,bom_explosion_flag   Varchar2(1)
135   ,return_reason_code   Varchar2(240)
136   ,raise_credit         Varchar2(50)
137    );
138 
139 
140  Type Cp_tbl_type is TABLE of cp_rec_type INDEX BY BINARY_INTEGER;
141 
142 Type Renewal_rec_type Is Record
143 (
144  Chr_id                 Number
145 ,Renewal_type           Varchar2(10)
146 ,po_required_yn         Varchar2(1)
147 ,Renewal_pricing_type   Varchar2(3)
148 ,Markup_percent         Number
149 ,Price_list_id1         Varchar2(40)
150 ,link_chr_id            Number
151 ,contact_id             Number
152 ,email_id               Number
153 ,phone_id               Number
154 ,fax_id                 Number
155 ,site_id                Number
156 ,cod_type               Varchar2(3)
157 ,billing_profile_id     Number   -- new parameter added -vigandhi
158 ,line_renewal_type      Varchar2(3)
159 
160 );
161 l_renewal_rec renewal_rec_type;
162 -- Procedure to delete a batch
163 -- This procedure is called by IB when aInstance Mass update batch is deleted.
164 -- This api deletes the batch rules stored in OKS_BATCH_RULES table for the batch_id.
165 procedure delete_batch
166 (
167  P_Api_Version           IN             NUMBER,
168  P_init_msg_list         IN             VARCHAR2,
169  P_Batch_ID              IN             NUMBER,
170  x_return_status         OUT NOCOPY     VARCHAR2,
171  x_msg_count             OUT NOCOPY     NUMBER,
172  x_msg_data	         OUT NOCOPY     VARCHAR2);
173 
174 -- Procedure to create batch rules. This api is invoked from Instance Mass Update(Form based UI)
175 -- The transfer options as defined in the profile options,
176 -- are stored in OKS_BATCH_RULES_TABLE and are applied to contracts when the batch is submitted for processing.
177 procedure create_batch_rules
178 (
179  P_Api_Version           IN              NUMBER,
180  P_init_msg_list         IN             VARCHAR2,
181  P_Batch_ID              IN             NUMBER,
182  p_batch_type            IN             VARCHAR2,
183  x_return_status         OUT NOCOPY     VARCHAR2,
184  x_msg_count             OUT NOCOPY     NUMBER,
185  x_msg_data	         OUT NOCOPY     VARCHAR2);
186 
187  TYPE txn_tbl_type is TABLE of VARCHAR2(3) INDEX BY BINARY_INTEGER;
188  TYPE NUM_TBL_TYPE is TABLE of NUMBER INDEX BY BINARY_INTEGER;
189  TYPE VAR120_TBL_TYPE is TABLE of VARCHAR2(120) INDEX BY BINARY_INTEGER;
190  TYPE VAR150_TBL_TYPE is TABLE of VARCHAR2(150) INDEX BY BINARY_INTEGER;
191  TYPE VAR300_TBL_TYPE is TABLE of VARCHAR2(300) INDEX BY BINARY_INTEGER;
192  TYPE VAR90_TBL_TYPE is TABLE of VARCHAR2(90) INDEX BY BINARY_INTEGER;
193  TYPE DATE_TBL_TYPE is TABLE of DATE INDEX BY BINARY_INTEGER;
194 
195  TYPE instance_rec is RECORD
196   (      INSTANCE_ID                     NUMBER,
197          INSTANCE_NUMBER                 VARCHAR2(30),
198          EXTERNAL_REFERENCE              VARCHAR2(30),
199          INVENTORY_ITEM_ID               NUMBER,
200          VLD_ORGANIZATION_ID             NUMBER,
201          INVENTORY_REVISION              VARCHAR2(3),
202          SERIAL_NUMBER                   VARCHAR2(30),
203          LOT_NUMBER                      VARCHAR2(30),
204          QUANTITY                        NUMBER,
205          UNIT_OF_MEASURE                 VARCHAR2(3),
206          ACTIVE_START_DATE               DATE,
207          INSTALL_DATE                    DATE,
208          LOCATION_TYPE_CODE              VARCHAR2(30),
209          LOCATION_ID                     NUMBER,
210          CONTEXT                         VARCHAR2(30),
211          ATTRIBUTE1                      VARCHAR2(240),
212          ATTRIBUTE2                      VARCHAR2(240),
213          ATTRIBUTE3                      VARCHAR2(240),
214          ATTRIBUTE4                      VARCHAR2(240),
215          ATTRIBUTE5                      VARCHAR2(240),
216          ATTRIBUTE6                      VARCHAR2(240),
217          ATTRIBUTE7                      VARCHAR2(240),
218          ATTRIBUTE8                      VARCHAR2(240),
219          ATTRIBUTE9                      VARCHAR2(240),
220          ATTRIBUTE10                     VARCHAR2(240),
221          ATTRIBUTE11                     VARCHAR2(240),
222          ATTRIBUTE12                     VARCHAR2(240),
223          ATTRIBUTE13                     VARCHAR2(240),
224          ATTRIBUTE14                     VARCHAR2(240),
225          ATTRIBUTE15                     VARCHAR2(240),
226          INSTALL_LOCATION_TYPE_CODE      VARCHAR2(30),
227          INSTALL_LOCATION_ID             NUMBER,
228          CALL_CONTRACTS                  VARCHAR2(1),
229          Party_Id                        NUMBER,
230          ACCOUNT_ID                      NUMBER
231   );
232 
233  FUNCTION CHECK_SUBSCR_INSTANCE( p_instance_id NUMBER)
234  RETURN VARCHAR2 ;
235 
236  PROCEDURE POPULATE_CHILD_INSTANCES (p_api_version         IN          Number,
237                                     p_init_msg_list       IN          Varchar2 Default OKC_API.G_FALSE,
238                                     p_instance_id         IN          NUMBER,
239                                     p_transaction_type    IN          VARCHAR2,
240                                     x_msg_Count           OUT NOCOPY  Number,
241                                     x_msg_Data            OUT NOCOPY  Varchar2,
242                                     x_return_status       OUT NOCOPY  Varchar2);
243 
244  PROCEDURE CHECK_CONTRACTS_IMPACTED(
245     P_Api_Version        IN              NUMBER,
246     P_init_msg_list      IN              VARCHAR2 Default OKC_API.G_FALSE,
247     P_instance_id        IN              NUMBER,
248     p_parent_instance_yn IN              VARCHAR2,
249     p_transaction_date   IN              DATE,
250     p_new_install_date   IN              DATE,
251     P_txn_tbl            IN              txn_tbl_type,
252     x_contract_exists_yn OUT NOCOPY      VARCHAR2,
253     X_msg_Count          OUT NOCOPY      Number,
254     X_msg_Data           OUT NOCOPY      Varchar2,
255     x_return_status      OUT NOCOPY      Varchar2);
256 
257  PROCEDURE GET_CONTRACTS(p_api_version         IN  Number,
258                             p_init_msg_list       IN  Varchar2 Default OKC_API.G_FALSE,
259                             p_instance_id         IN  NUMBER,
260                             p_validate_yn         IN  VARCHAR2,
261                             x_msg_Count           OUT NOCOPY  Number,
262                             x_msg_Data            OUT NOCOPY  Varchar2,
263                             x_return_status       OUT NOCOPY  Varchar2);
264 
265  PROCEDURE CREATE_ITEM_INSTANCE
266  (
267     p_api_version           IN     NUMBER,
268     p_commit                IN     VARCHAR2,
269     p_init_msg_list         IN     VARCHAR2,
270     p_validation_level      IN     NUMBER,
271     p_instance_rec          IN OUT NOCOPY instance_rec,
272     x_return_status         OUT    NOCOPY VARCHAR2,
273     x_msg_count             OUT    NOCOPY NUMBER,
274     x_msg_data              OUT    NOCOPY VARCHAR2
275  );
276 
277 -- Procedure to validate batch rules before submitting
278 -- the batch for processing.
279 -- In the case where the new owner account is changed
280 -- either in the Forms Mass Edit batch or OA mass edit
281 -- batch without visiting contracts page, the api throws
282 -- an error forcing the user to visit the contracts page
283 -- and change the options.
284 
285 procedure Validate_new_owner
286 (
287  P_Api_Version           IN             NUMBER,
288  P_init_msg_list         IN             VARCHAR2,
289  P_Batch_ID              IN             NUMBER,
290  P_new_owner_id          IN             NUMBER,
291  x_return_status         OUT NOCOPY     VARCHAR2,
292  x_msg_count             OUT NOCOPY     NUMBER,
293  x_msg_data	         OUT NOCOPY     VARCHAR2);
294 
295 
296   End OKS_IBINT_PUB;