DBA Data[Home] [Help]

PACKAGE BODY: APPS.POS_AP_SUPPLIER_SITE_BO_PKG

Source


1 PACKAGE BODY pos_ap_supplier_site_bo_pkg AS
2 /* $Header: POSSPSTB.pls 120.2.12020000.4 2013/02/09 13:22:58 hvutukur ship $ */
3   /*#
4   * Use this routine to create supplier contact
5   * @param p_api_version The version of API
6   * @param p_init_msg_list The Initialization message list
7   * @param p_vendor_contact_rec The supplier contact record
8   * @param x_vendor_contact_id The Vendor Contact Id
9   * @param x_per_party_id  The Person Party ID
10   * @param x_rel_party_id  The Rel Party Id
11   * @param x_org_contact_id  The Organization contact id
12   * @param x_party_site_id The Party Site Id
13   * @param x_return_status The return status
14   * @param x_msg_count The message count
15   * @param x_msg_data The message data
16   * @rep:scope public
17   * @rep:lifecycle active
18   * @rep:displayname Create Vendor Site
19   * @rep:catagory BUSSINESS_ENTITY AP_SUPPLIER
20   */
21   PROCEDURE create_vendor_site
22   (
23     p_site_rec      IN ap_vendor_pub_pkg.r_vendor_site_rec_type,
24     ext_payee_rec   IN OUT NOCOPY iby_disbursement_setup_pub.external_payee_rec_type,
25     x_return_status OUT NOCOPY VARCHAR2,
26     x_msg_count     OUT NOCOPY NUMBER,
27     x_msg_data      OUT NOCOPY VARCHAR2
28   ) IS
29     l_api_name CONSTANT VARCHAR2(30) := 'CREATE_VENDOR_SITE';
30     l_request_id NUMBER := fnd_global.conc_request_id;
31 
32     l_return_status  VARCHAR2(2000);
33     l_msg_count      NUMBER;
34     l_msg_data       VARCHAR2(2000);
35     l_vendor_site_id NUMBER;
36     l_party_site_id  NUMBER;
37     l_location_id    NUMBER;
38 
39     /* Variable Declaration for IBY */
40 
41     ext_payee_tab iby_disbursement_setup_pub.external_payee_tab_type;
42 
43     ext_payee_id_tab iby_disbursement_setup_pub.ext_payee_id_tab_type;
44 
45     ext_payee_create_tab iby_disbursement_setup_pub.ext_payee_create_tab_type;
46     l_temp_ext_acct_id   NUMBER;
47     ext_response_rec     iby_fndcpt_common_pub.result_rec_type;
48 
49     l_ext_payee_id NUMBER;
50     l_bank_acct_id NUMBER;
51 
52     CURSOR iby_ext_accts_cur(p_unique_ref IN NUMBER) IS
53       SELECT temp_ext_bank_acct_id
54       FROM   iby_temp_ext_bank_accts
55       WHERE  calling_app_unique_ref2 = p_unique_ref
56       AND    nvl(status, 'NEW') <> 'PROCESSED';
57 
58     l_debug_info           VARCHAR2(500);
59     l_rollback_vendor_site VARCHAR2(1) := 'N';
60     l_payee_msg_count      NUMBER;
61     l_payee_msg_data       VARCHAR2(4000);
62     l_error_code           VARCHAR2(4000);
63 
64   BEGIN
65     x_return_status := fnd_api.g_ret_sts_success;
66 
67     fnd_file.put_line(fnd_file.log,
68                       ' Message: Inside PROCEDURE CREATE_VENDOR_SITE' ||
69                       ' Parameters  vendor_id: ' || p_site_rec.vendor_id ||
70                       ' vendor_site_interface_id: ' ||
71                       p_site_rec.vendor_site_interface_id);
72 
73     SAVEPOINT import_vendor_sites_pub2;
74 
75     ap_vendor_pub_pkg.create_vendor_site(p_api_version      => 1.0,
76                                          p_init_msg_list    => fnd_api.g_false,
77                                          p_commit           => fnd_api.g_false,
78                                          p_validation_level => fnd_api.g_valid_level_full,
79                                          x_return_status    => l_return_status,
80                                          x_msg_count        => l_msg_count,
81                                          x_msg_data         => l_msg_data,
82                                          p_vendor_site_rec  => p_site_rec,
83                                          x_vendor_site_id   => l_vendor_site_id,
84                                          x_party_site_id    => l_party_site_id,
85                                          x_location_id      => l_location_id);
86 
87     IF l_return_status = fnd_api.g_ret_sts_success THEN
88 
89       ext_payee_rec.supplier_site_id    := l_vendor_site_id;
90       ext_payee_rec.payee_party_site_id := l_party_site_id;
91 
92       SELECT org_id
93       INTO   ext_payee_rec.payer_org_id
94       FROM   po_vendor_sites_all
95       WHERE  vendor_site_id = l_vendor_site_id;
96 
97       SELECT party_id,
98              'PAYABLES_DISB'
99       INTO   ext_payee_rec.payee_party_id,
100              ext_payee_rec.payment_function
101       FROM   po_vendors
102       WHERE  vendor_id = p_site_rec.vendor_id;
103 
104       /* Calling IBY Payee Validation API */
105       iby_disbursement_setup_pub.validate_external_payee(p_api_version   => 1.0,
106                                                          p_init_msg_list => fnd_api.g_false,
107                                                          p_ext_payee_rec => ext_payee_rec,
108                                                          x_return_status => l_return_status,
109                                                          x_msg_count     => l_msg_count,
110                                                          x_msg_data      => l_msg_data);
111 
112       IF l_return_status = fnd_api.g_ret_sts_success THEN
113         ext_payee_tab(1) := ext_payee_rec;
114 
115         /* Calling IBY Payee Creation API */
116         iby_disbursement_setup_pub.create_external_payee(p_api_version          => 1.0,
117                                                          p_init_msg_list        => fnd_api.g_false,
118                                                          p_ext_payee_tab        => ext_payee_tab,
119                                                          x_return_status        => l_return_status,
120                                                          x_msg_count            => l_msg_count,
121                                                          x_msg_data             => l_msg_data,
122                                                          x_ext_payee_id_tab     => ext_payee_id_tab,
123                                                          x_ext_payee_status_tab => ext_payee_create_tab);
124 
125         IF l_return_status = fnd_api.g_ret_sts_success THEN
126           l_ext_payee_id := ext_payee_id_tab(1).ext_payee_id;
127 
128           UPDATE iby_temp_ext_bank_accts
129           SET    ext_payee_id           = l_ext_payee_id,
130                  account_owner_party_id = ext_payee_rec.payee_party_id --bug 6753331
131           WHERE  calling_app_unique_ref2 =
132                  p_site_rec.vendor_site_interface_id;
133 
134           -- Cursor processing for iby temp bank account record
135           OPEN iby_ext_accts_cur(p_site_rec.vendor_site_interface_id);
136           LOOP
137 
138             FETCH iby_ext_accts_cur
139               INTO l_temp_ext_acct_id;
140             EXIT WHEN iby_ext_accts_cur%NOTFOUND;
141 
142             /* Calling IBY Bank Account Validation API */
143             iby_disbursement_setup_pub.validate_temp_ext_bank_acct(p_api_version      => 1.0,
144                                                                    p_init_msg_list    => fnd_api.g_false,
145                                                                    x_return_status    => l_return_status,
146                                                                    x_msg_count        => l_msg_count,
147                                                                    x_msg_data         => l_msg_data,
148                                                                    p_temp_ext_acct_id => l_temp_ext_acct_id);
149 
150             IF l_return_status = fnd_api.g_ret_sts_success THEN
151               /* Calling IBY Bank Account Creation API */
152 
153               iby_disbursement_setup_pub.create_temp_ext_bank_acct(p_api_version       => 1.0,
154                                                                    p_init_msg_list     => fnd_api.g_false,
155                                                                    x_return_status     => l_return_status,
156                                                                    x_msg_count         => l_msg_count,
157                                                                    x_msg_data          => l_msg_data,
158                                                                    p_temp_ext_acct_id  => l_temp_ext_acct_id,
159                                                                    p_association_level => 'SS',
160                                                                    p_supplier_site_id  => l_vendor_site_id,
161                                                                    p_party_site_id     => ext_payee_rec.payee_party_site_id,
162                                                                    p_org_id            => ext_payee_rec.payer_org_id,
163                                                                    p_org_type          => 'OPERATING_UNIT',
164                                                                    x_bank_acc_id       => l_bank_acct_id,
165                                                                    x_response          => ext_response_rec);
166 
167               IF l_return_status = fnd_api.g_ret_sts_success THEN
168                 UPDATE iby_temp_ext_bank_accts
169                 SET    status = 'PROCESSED'
170                 WHERE  temp_ext_bank_acct_id = l_temp_ext_acct_id;
171 
172               ELSE
173                 l_rollback_vendor_site := 'Y';
174 
175                 fnd_message.set_name('SQLAP', 'AP_BANK_ACCT_CREATION');
176                 fnd_msg_pub.add;
177 
178               END IF; -- Bank Account Creation API
179 
180             ELSE
181               l_rollback_vendor_site := 'Y';
182 
183               fnd_message.set_name('SQLAP', 'AP_INVALID_BANK_ACCT_INFO');
184               fnd_msg_pub.add;
185 
186             END IF; -- Bank Account Validation API
187 
188           END LOOP;
189           CLOSE iby_ext_accts_cur;
190 
191           /*Rollback if bank account creation fails*/
192           IF l_rollback_vendor_site = 'Y' THEN
193 
194             ROLLBACK TO import_vendor_sites_pub2;
195 
196           END IF;
197 
198           -- Payee Creation API
199 
200         END IF;
201 
202       END IF;
203     END IF; -- Supplier Site Creation API
204   EXCEPTION
205     WHEN OTHERS THEN
206       x_return_status := fnd_api.g_ret_sts_unexp_error;
207 
208       fnd_msg_pub.count_and_get(p_count => x_msg_count,
209                                 p_data  => x_msg_data);
210   END;
211   /* $Header: POSSPSTB.pls 120.2.12020000.4 2013/02/09 13:22:58 hvutukur ship $ */
212   /*#
213   * Use this routine to create supplier contact
214   * @param p_api_version The version of API
215   * @param p_init_msg_list The Initialization message list
216   * @param p_vendor_contact_rec The supplier contact record
217   * @param x_vendor_contact_id The Vendor Contact Id
218   * @param x_per_party_id  The Person Party ID
219   * @param x_rel_party_id  The Rel Party Id
220   * @param x_org_contact_id  The Organization contact id
221   * @param x_party_site_id The Party Site Id
222   * @param x_return_status The return status
223   * @param x_msg_count The message count
224   * @param x_msg_data The message data
225   * @rep:scope public
226   * @rep:lifecycle active
227   * @rep:displayname Get Supplier Sites
228   * @rep:catagory BUSSINESS_ENTITY AP_SUPPLIER
229   */
230   PROCEDURE get_pos_supplier_sites_bo_tbl
231   (
232     p_api_version           IN NUMBER DEFAULT NULL,
233     p_init_msg_list         IN VARCHAR2 DEFAULT NULL,
234     p_party_id              IN NUMBER,
235     p_orig_system           IN VARCHAR2,
236     p_orig_system_reference IN VARCHAR2,
237     x_ap_supplier_sites_bo  OUT NOCOPY pos_supplier_sites_all_bo_tbl,
238     x_return_status         OUT NOCOPY VARCHAR2,
239     x_msg_count             OUT NOCOPY NUMBER,
240     x_msg_data              OUT NOCOPY VARCHAR2
241   ) IS
242 
243     l_pos_ap_supplier_sites_bo_tbl pos_supplier_sites_all_bo_tbl := pos_supplier_sites_all_bo_tbl();
244     l_pos_supplier_uda             pos_supplier_uda_bo;
245     l_party_id                     NUMBER := 0;
246 
247   BEGIN
248     IF p_party_id IS NULL THEN
249       l_party_id := pos_supplier_bo_dep_pkg.get_party_id(p_orig_system,
250                                                          p_orig_system_reference);
251       --l_party_id:=p_party_id;
252     ELSE
253 
254       l_party_id := p_party_id;
255     END IF;
256     SELECT pos_supplier_sites_all_bo(aps.vendor_site_id,
257                                      aps.last_update_date,
258                                      aps.last_updated_by,
259                                      aps.vendor_id,
260                                      aps.vendor_site_code,
261                                      aps.vendor_site_code_alt,
262                                      aps.last_update_login,
263                                      aps.creation_date,
264                                      aps.created_by,
265                                      aps.purchasing_site_flag,
266                                      aps.rfq_only_site_flag,
267                                      aps.pay_site_flag,
268                                      aps.attention_ar_flag,
269                                      aps.address_line1,
270                                      aps.address_lines_alt,
271                                      aps.address_line2,
272                                      aps.address_line3,
273                                      aps.city,
274                                      aps.state,
275                                      aps.zip,
276                                      aps.province,
277                                      aps.country,
278                                      aps.area_code,
279                                      aps.phone,
280                                      aps.customer_num,
281                                      aps.ship_to_location_id,
282                                      aps.bill_to_location_id,
283                                      aps.ship_via_lookup_code,
284                                      aps.freight_terms_lookup_code,
285                                      aps.fob_lookup_code,
286                                      aps.inactive_date,
287                                      aps.fax,
288                                      aps.fax_area_code,
289                                      aps.telex,
290                                      aps.payment_method_lookup_code,
291                                      aps.bank_account_name,
292                                      aps.bank_account_num,
293                                      aps.bank_num,
294                                      aps.bank_account_type,
295                                      aps.terms_date_basis,
296                                      aps.current_catalog_num,
297                                      aps.vat_code,
298                                      aps.distribution_set_id,
299                                      aps.accts_pay_code_combination_id,
300                                      aps.prepay_code_combination_id,
301                                      aps.pay_group_lookup_code,
302                                      aps.payment_priority,
303                                      aps.terms_id,
304                                      aps.invoice_amount_limit,
305                                      aps.pay_date_basis_lookup_code,
306                                      aps.always_take_disc_flag,
307                                      aps.invoice_currency_code,
308                                      aps.payment_currency_code,
309                                      aps.hold_all_payments_flag,
310                                      aps.hold_future_payments_flag,
311                                      aps.hold_reason,
312                                      aps.hold_unmatched_invoices_flag,
313                                      aps.ap_tax_rounding_rule,
314                                      aps.auto_tax_calc_flag,
315                                      aps.auto_tax_calc_override,
316                                      aps.amount_includes_tax_flag,
317                                      aps.exclusive_payment_flag,
318                                      aps.tax_reporting_site_flag,
319                                      aps.attribute_category,
320                                      aps.attribute1,
321                                      aps.attribute2,
322                                      aps.attribute3,
323                                      aps.attribute4,
324                                      aps.attribute5,
325                                      aps.attribute6,
326                                      aps.attribute7,
327                                      aps.attribute8,
328                                      aps.attribute9,
329                                      aps.attribute10,
330                                      aps.attribute11,
331                                      aps.attribute12,
332                                      aps.attribute13,
333                                      aps.attribute14,
334                                      aps.attribute15,
335                                      aps.request_id,
336                                      aps.program_application_id,
337                                      aps.program_id,
338                                      aps.program_update_date,
339                                      aps.validation_number,
340                                      aps.exclude_freight_from_discount,
341                                      aps.vat_registration_num,
342                                      aps.offset_vat_code,
343                                      aps.org_id,
344                                      aps.check_digits,
345                                      aps.bank_number,
346                                      aps.address_line4,
347                                      aps.county,
348                                      aps.address_style,
349                                      aps.language,
350                                      aps.allow_awt_flag,
351                                      aps.awt_group_id,
352                                      aps.global_attribute1,
353                                      aps.global_attribute2,
354                                      aps.global_attribute3,
355                                      aps.global_attribute4,
356                                      aps.global_attribute5,
357                                      aps.global_attribute6,
358                                      aps.global_attribute7,
359                                      aps.global_attribute8,
360                                      aps.global_attribute9,
361                                      aps.global_attribute10,
362                                      aps.global_attribute11,
363                                      aps.global_attribute12,
364                                      aps.global_attribute13,
365                                      aps.global_attribute14,
366                                      aps.global_attribute15,
367                                      aps.global_attribute16,
368                                      aps.global_attribute17,
369                                      aps.global_attribute18,
370                                      aps.global_attribute19,
371                                      aps.global_attribute20,
372                                      aps.global_attribute_category,
373                                      aps.edi_transaction_handling,
374                                      aps.edi_id_number,
375                                      aps.edi_payment_method,
376                                      aps.edi_payment_format,
377                                      aps.edi_remittance_method,
378                                      aps.bank_charge_bearer,
379                                      aps.edi_remittance_instruction,
380                                      aps.bank_branch_type,
381                                      aps.pay_on_code,
382                                      aps.default_pay_site_id,
383                                      aps.pay_on_receipt_summary_code,
384                                      aps.tp_header_id,
385                                      aps.ece_tp_location_code,
386                                      aps.pcard_site_flag,
387                                      aps.match_option,
388                                      aps.country_of_origin_code,
389                                      aps.future_dated_payment_ccid,
390                                      aps.create_debit_memo_flag,
391                                      aps.offset_tax_flag,
392                                      aps.supplier_notif_method,
393                                      aps.email_address,
394                                      aps.remittance_email,
395                                      aps.primary_pay_site_flag,
396                                      aps.shipping_control,
397                                      aps.selling_company_identifier,
398                                      aps.gapless_inv_num_flag,
399                                      aps.duns_number,
400                                      aps.tolerance_id,
401                                      aps.location_id,
402                                      aps.party_site_id,
403                                      NULL,
404                                      NULL,
405                                      aps.services_tolerance_id,
406                                      aps.retainage_rate,
407                                      aps.tca_sync_state,
408                                      aps.tca_sync_province,
409                                      aps.tca_sync_county,
410                                      aps.tca_sync_city,
411                                      aps.tca_sync_zip,
412                                      aps.tca_sync_country,
413                                      aps.pay_awt_group_id,
414                                      NULL,
415                                      NULL,
416                                      NULL,
417                                      NULL,
418                                      NULL,
419                                      NULL,
420                                      NULL,
421                                      NULL,
422                                      NULL,
423                                      NULL,
424                                      NULL,
425                                      NULL,
426                                      NULL,
427                                      NULL,
428                                      NULL,
429                                      terms.name,  -- Bug 12979867: Add term's name
430                                      NULL,
431                                      NULL,
432                                      /* NULL,*/
433                                      pos_supplier_uda_bo_pkg.get_uda_for_supplier_site(l_party_id,
434                                                                                       --Bug 15992883: change the positions of the following two arguments
435                                                                                        aps.party_site_id,
436                                                                                        aps.vendor_site_id,
437                                                                                       --end of Bug 15992883
438                                                                                        'SUPP_ADDR_SITE_LEVEL')) BULK COLLECT
439     INTO   x_ap_supplier_sites_bo
440     FROM   ap_supplier_sites_all aps,
441            ap_suppliers          ap,
442            ap_terms              terms
443     WHERE  ap.party_id = l_party_id
444     AND    aps.vendor_id = ap.vendor_id
445     AND    aps.terms_id = terms.term_id(+);  -- Bug 12979867/16067074: OUTER Join ap_terms to get term's name
446 
447  --Commented by BVAMSI on 07/Oct/2010 as it is already handled in the above Select query
448   /*
449     FOR i IN x_ap_supplier_sites_bo.first .. x_ap_supplier_sites_bo.last LOOP
450 
451       x_ap_supplier_sites_bo(i).p_pos_supp_uda_obj_tbl := pos_supplier_uda_bo_pkg.get_uda_for_supplier_site(l_party_id,
452                                                                                                             x_ap_supplier_sites_bo(i)
453                                                                                                             .vendor_site_id,
454                                                                                                             x_ap_supplier_sites_bo(i)
455                                                                                                             .party_site_id,
456                                                                                                             'SUPP_ADDR_SITE_LEVEL');
457 
458     END LOOP;
459     */
460   -- Comment by BVAMSI Ends here
461 
462     /*pos_supplier_uda_bo_pkg.get_uda_data(p_api_version,
463                                              p_init_msg_list,
464                                              NULL,
465                                              NULL,
466                                              p_party_id,
467                                              'SUPP_ADDR_SITE_LEVEL',
468                                              l_pos_supplier_uda,
469                                              x_return_status,
470                                              x_msg_count,
471                                              x_msg_data);
472     */
473     --    x_ap_supplier_sites_bo := l_pos_ap_supplier_sites_bo_tbl; /* pos_supplier_sites_all_bo(l_pos_ap_supplier_sites_bo_tbl,
474     --                                                                      l_pos_supplier_uda);*/
475     /* x_ap_supplier_sites_bo.p_pos_supplier_sites_obj := pos_supplier_sites_all_bo_tbl();
476     x_ap_supplier_sites_bo.p_pos_supplier_sites_obj  := l_pos_ap_supplier_sites_bo_tbl;*/
477 
478     -- SELECT pos_supplier_sites_all_object(l_pos_ap_supplier_sites_bo_tbl) INTO x_ap_supplier_sites_bo FROM dual;
479   EXCEPTION
480     WHEN fnd_api.g_exc_error THEN
481 
482       x_return_status := fnd_api.g_ret_sts_error;
483       fnd_msg_pub.count_and_get(p_count => x_msg_count,
484                                 p_data  => x_msg_data);
485     WHEN fnd_api.g_exc_unexpected_error THEN
486 
487       x_return_status := fnd_api.g_ret_sts_unexp_error;
488       fnd_msg_pub.count_and_get(p_count => x_msg_count,
489                                 p_data  => x_msg_data);
490     WHEN OTHERS THEN
491 
492       x_return_status := fnd_api.g_ret_sts_unexp_error;
493 
494       fnd_msg_pub.count_and_get(p_count => x_msg_count,
495                                 p_data  => x_msg_data);
496 
497   END get_pos_supplier_sites_bo_tbl;
498   /*#
499   * Use this routine to create supplier contact
500   * @param p_api_version The version of API
501   * @param p_init_msg_list The Initialization message list
502   * @param p_vendor_contact_rec The supplier contact record
503   * @param x_vendor_contact_id The Vendor Contact Id
504   * @param x_per_party_id  The Person Party ID
505   * @param x_rel_party_id  The Rel Party Id
506   * @param x_org_contact_id  The Organization contact id
507   * @param x_party_site_id The Party Site Id
508   * @param x_return_status The return status
509   * @param x_msg_count The message count
510   * @param x_msg_data The message data
511   * @rep:scope public
512   * @rep:lifecycle active
513   * @rep:displayname Create Supplier Site
514   * @rep:catagory BUSSINESS_ENTITY AP_SUPPLIER
515   */
516   PROCEDURE create_pos_supplier_site_bo
517   (
518     p_api_version               IN NUMBER,
519     p_init_msg_list             IN VARCHAR2 := fnd_api.g_false,
520     p_pos_supp_sites_all_bo_tbl IN pos_supplier_sites_all_bo_tbl,
521     p_party_id                  IN NUMBER,
522     p_orig_system               IN VARCHAR2,
523     p_orig_system_reference     IN VARCHAR2,
524     p_create_update_flag        IN VARCHAR2,
525     x_vendor_site_id            OUT NOCOPY NUMBER,
526     x_party_site_id             OUT NOCOPY NUMBER,
527     x_location_id               OUT NOCOPY NUMBER,
528     x_return_status             OUT NOCOPY VARCHAR2,
529     x_msg_count                 OUT NOCOPY NUMBER,
530     x_msg_data                  OUT NOCOPY VARCHAR2
531   ) IS
532     v_row_exists    NUMBER := 0;
533     l_party_id      NUMBER;
534     vendor_site_rec ap_vendor_pub_pkg.r_vendor_site_rec_type;
535   BEGIN
536     v_row_exists := 0;
537     IF p_party_id IS NULL THEN
538       l_party_id := pos_supplier_bo_dep_pkg.get_party_id(p_orig_system,
539                                                          p_orig_system_reference);
540     ELSE
541       l_party_id := p_party_id;
542     END IF;
543 
544     FOR i IN p_pos_supp_sites_all_bo_tbl.first .. p_pos_supp_sites_all_bo_tbl.last LOOP
545       /* FOR i IN p_vendor_site_rec.first..p_vendor_site_rec.last LOOP*/
546       /*  BEGIN
547 
548           SELECT 1
549           INTO   v_row_exists
550           FROM   ap_supplier_sites_all
551           WHERE  vendor_id = p_vendor_site_rec.vendor_id
552           AND    rownum < 2;
553       EXCEPTION
554           WHEN OTHERS THEN
555               v_row_exists := 0;
556       END;*/
557 
558       vendor_site_rec.area_code                     := p_pos_supp_sites_all_bo_tbl(i)
559                                                        .area_code;
560       vendor_site_rec.phone                         := p_pos_supp_sites_all_bo_tbl(i)
561                                                        .phone;
562       vendor_site_rec.customer_num                  := p_pos_supp_sites_all_bo_tbl(i)
563                                                        .customer_num;
564       vendor_site_rec.ship_to_location_id           := p_pos_supp_sites_all_bo_tbl(i)
565                                                        .ship_to_location_id;
566       vendor_site_rec.bill_to_location_id           := p_pos_supp_sites_all_bo_tbl(i)
567                                                        .bill_to_location_id;
568       vendor_site_rec.ship_via_lookup_code          := p_pos_supp_sites_all_bo_tbl(i)
569                                                        .ship_via_lookup_code;
570       vendor_site_rec.freight_terms_lookup_code     := p_pos_supp_sites_all_bo_tbl(i)
571                                                        .freight_terms_lookup_code;
572       vendor_site_rec.fob_lookup_code               := p_pos_supp_sites_all_bo_tbl(i)
573                                                        .fob_lookup_code;
574       vendor_site_rec.inactive_date                 := p_pos_supp_sites_all_bo_tbl(i)
575                                                        .inactive_date;
576       vendor_site_rec.fax                           := p_pos_supp_sites_all_bo_tbl(i).fax;
577       vendor_site_rec.fax_area_code                 := p_pos_supp_sites_all_bo_tbl(i)
578                                                        .fax_area_code;
579       vendor_site_rec.telex                         := p_pos_supp_sites_all_bo_tbl(i)
580                                                        .telex;
581       vendor_site_rec.terms_date_basis              := p_pos_supp_sites_all_bo_tbl(i)
582                                                        .terms_date_basis;
583       vendor_site_rec.distribution_set_id           := p_pos_supp_sites_all_bo_tbl(i)
584                                                        .distribution_set_id;
585       vendor_site_rec.accts_pay_code_combination_id := p_pos_supp_sites_all_bo_tbl(i)
586                                                        .accts_pay_code_combination_id;
587       vendor_site_rec.prepay_code_combination_id    := p_pos_supp_sites_all_bo_tbl(i)
588                                                        .prepay_code_combination_id;
589       vendor_site_rec.pay_group_lookup_code         := p_pos_supp_sites_all_bo_tbl(i)
590                                                        .pay_group_lookup_code;
591       vendor_site_rec.payment_priority              := p_pos_supp_sites_all_bo_tbl(i)
592                                                        .payment_priority;
593       vendor_site_rec.terms_id                      := p_pos_supp_sites_all_bo_tbl(i)
594                                                        .terms_id;
595       vendor_site_rec.invoice_amount_limit          := p_pos_supp_sites_all_bo_tbl(i)
596                                                        .invoice_amount_limit;
597       vendor_site_rec.pay_date_basis_lookup_code    := p_pos_supp_sites_all_bo_tbl(i)
598                                                        .pay_date_basis_lookup_code;
599       vendor_site_rec.always_take_disc_flag         := p_pos_supp_sites_all_bo_tbl(i)
600                                                        .always_take_disc_flag;
601       vendor_site_rec.invoice_currency_code         := p_pos_supp_sites_all_bo_tbl(i)
602                                                        .invoice_currency_code;
603       vendor_site_rec.payment_currency_code         := p_pos_supp_sites_all_bo_tbl(i)
604                                                        .payment_currency_code;
605       vendor_site_rec.vendor_site_id                := p_pos_supp_sites_all_bo_tbl(i)
606                                                        .vendor_site_id;
607       vendor_site_rec.last_update_date              := p_pos_supp_sites_all_bo_tbl(i)
608                                                        .last_update_date;
609       vendor_site_rec.last_updated_by               := p_pos_supp_sites_all_bo_tbl(i)
610                                                        .last_updated_by;
611       vendor_site_rec.vendor_id                     := p_pos_supp_sites_all_bo_tbl(i)
612                                                        .vendor_id;
613       IF (vendor_site_rec.vendor_id IS NULL) THEN
614         BEGIN
615           SELECT vendor_id
616           INTO   vendor_site_rec.vendor_id
617           FROM   ap_suppliers supp
618           WHERE  supp.party_id = l_party_id;
619 
620         EXCEPTION
621           WHEN OTHERS THEN
622             x_return_status := fnd_api.g_ret_sts_error;
623             x_msg_count     := 1;
624             x_msg_data      := SQLCODE || SQLERRM;
625             RETURN;
626         END;
627       END IF;
628 
629       vendor_site_rec.vendor_site_code              := p_pos_supp_sites_all_bo_tbl(i)
630                                                        .vendor_site_code;
631       vendor_site_rec.vendor_site_code_alt          := p_pos_supp_sites_all_bo_tbl(i)
632                                                        .vendor_site_code_alt;
633       vendor_site_rec.purchasing_site_flag          := p_pos_supp_sites_all_bo_tbl(i)
634                                                        .purchasing_site_flag;
635       vendor_site_rec.rfq_only_site_flag            := p_pos_supp_sites_all_bo_tbl(i)
636                                                        .rfq_only_site_flag;
637       vendor_site_rec.pay_site_flag                 := p_pos_supp_sites_all_bo_tbl(i)
638                                                        .pay_site_flag;
639       vendor_site_rec.attention_ar_flag             := p_pos_supp_sites_all_bo_tbl(i)
640                                                        .attention_ar_flag;
641       vendor_site_rec.hold_all_payments_flag        := p_pos_supp_sites_all_bo_tbl(i)
642                                                        .hold_all_payments_flag;
643       vendor_site_rec.hold_future_payments_flag     := p_pos_supp_sites_all_bo_tbl(i)
644                                                        .hold_future_payments_flag;
645       vendor_site_rec.hold_reason                   := p_pos_supp_sites_all_bo_tbl(i)
646                                                        .hold_reason;
647       vendor_site_rec.hold_unmatched_invoices_flag  := p_pos_supp_sites_all_bo_tbl(i)
648                                                        .hold_unmatched_invoices_flag;
649       vendor_site_rec.tax_reporting_site_flag       := p_pos_supp_sites_all_bo_tbl(i)
650                                                        .tax_reporting_site_flag;
651       vendor_site_rec.attribute_category            := p_pos_supp_sites_all_bo_tbl(i)
652                                                        .attribute_category;
653       vendor_site_rec.attribute1                    := p_pos_supp_sites_all_bo_tbl(i)
654                                                        .attribute1;
655       vendor_site_rec.attribute2                    := p_pos_supp_sites_all_bo_tbl(i)
656                                                        .attribute2;
657       vendor_site_rec.attribute3                    := p_pos_supp_sites_all_bo_tbl(i)
658                                                        .attribute3;
659       vendor_site_rec.attribute4                    := p_pos_supp_sites_all_bo_tbl(i)
660                                                        .attribute4;
661       vendor_site_rec.attribute5                    := p_pos_supp_sites_all_bo_tbl(i)
662                                                        .attribute5;
663       vendor_site_rec.attribute6                    := p_pos_supp_sites_all_bo_tbl(i)
664                                                        .attribute6;
665       vendor_site_rec.attribute7                    := p_pos_supp_sites_all_bo_tbl(i)
666                                                        .attribute7;
667       vendor_site_rec.attribute8                    := p_pos_supp_sites_all_bo_tbl(i)
668                                                        .attribute8;
669       vendor_site_rec.attribute9                    := p_pos_supp_sites_all_bo_tbl(i)
670                                                        .attribute9;
671       vendor_site_rec.attribute10                   := p_pos_supp_sites_all_bo_tbl(i)
672                                                        .attribute10;
673       vendor_site_rec.attribute11                   := p_pos_supp_sites_all_bo_tbl(i)
674                                                        .attribute11;
675       vendor_site_rec.attribute12                   := p_pos_supp_sites_all_bo_tbl(i)
676                                                        .attribute12;
677       vendor_site_rec.attribute13                   := p_pos_supp_sites_all_bo_tbl(i)
678                                                        .attribute13;
679       vendor_site_rec.attribute14                   := p_pos_supp_sites_all_bo_tbl(i)
680                                                        .attribute14;
681       vendor_site_rec.attribute15                   := p_pos_supp_sites_all_bo_tbl(i)
682                                                        .attribute15;
683       vendor_site_rec.validation_number             := p_pos_supp_sites_all_bo_tbl(i)
684                                                        .validation_number;
685       vendor_site_rec.exclude_freight_from_discount := p_pos_supp_sites_all_bo_tbl(i)
686                                                        .exclude_freight_from_discount;
687       vendor_site_rec.bank_charge_bearer            := p_pos_supp_sites_all_bo_tbl(i)
688                                                        .bank_charge_bearer;
689       vendor_site_rec.org_id                        := p_pos_supp_sites_all_bo_tbl(i)
690                                                        .org_id;
691       vendor_site_rec.check_digits                  := p_pos_supp_sites_all_bo_tbl(i)
692                                                        .check_digits;
693       vendor_site_rec.allow_awt_flag                := p_pos_supp_sites_all_bo_tbl(i)
694                                                        .allow_awt_flag;
695       vendor_site_rec.awt_group_id                  := p_pos_supp_sites_all_bo_tbl(i)
696                                                        .awt_group_id;
697       vendor_site_rec.pay_awt_group_id              := p_pos_supp_sites_all_bo_tbl(i)
698                                                        .pay_awt_group_id;
699       vendor_site_rec.default_pay_site_id           := p_pos_supp_sites_all_bo_tbl(i)
700                                                        .default_pay_site_id;
701       vendor_site_rec.pay_on_code                   := p_pos_supp_sites_all_bo_tbl(i)
702                                                        .pay_on_code;
703       vendor_site_rec.pay_on_receipt_summary_code   := p_pos_supp_sites_all_bo_tbl(i)
704                                                        .pay_on_receipt_summary_code;
705       vendor_site_rec.global_attribute_category     := p_pos_supp_sites_all_bo_tbl(i)
706                                                        .global_attribute_category;
707       vendor_site_rec.global_attribute1             := p_pos_supp_sites_all_bo_tbl(i)
708                                                        .global_attribute1;
709       vendor_site_rec.global_attribute2             := p_pos_supp_sites_all_bo_tbl(i)
710                                                        .global_attribute2;
711       vendor_site_rec.global_attribute3             := p_pos_supp_sites_all_bo_tbl(i)
712                                                        .global_attribute3;
713       vendor_site_rec.global_attribute4             := p_pos_supp_sites_all_bo_tbl(i)
714                                                        .global_attribute4;
715       vendor_site_rec.global_attribute5             := p_pos_supp_sites_all_bo_tbl(i)
716                                                        .global_attribute5;
717       vendor_site_rec.global_attribute6             := p_pos_supp_sites_all_bo_tbl(i)
718                                                        .global_attribute6;
719       vendor_site_rec.global_attribute7             := p_pos_supp_sites_all_bo_tbl(i)
720                                                        .global_attribute7;
721       vendor_site_rec.global_attribute8             := p_pos_supp_sites_all_bo_tbl(i)
722                                                        .global_attribute8;
723       vendor_site_rec.global_attribute9             := p_pos_supp_sites_all_bo_tbl(i)
724                                                        .global_attribute9;
725       vendor_site_rec.global_attribute1             := p_pos_supp_sites_all_bo_tbl(i)
726                                                        .global_attribute1;
727       vendor_site_rec.global_attribute1             := p_pos_supp_sites_all_bo_tbl(i)
728                                                        .global_attribute1;
729       vendor_site_rec.global_attribute1             := p_pos_supp_sites_all_bo_tbl(i)
730                                                        .global_attribute1;
731       vendor_site_rec.global_attribute1             := p_pos_supp_sites_all_bo_tbl(i)
732                                                        .global_attribute1;
733       vendor_site_rec.global_attribute1             := p_pos_supp_sites_all_bo_tbl(i)
734                                                        .global_attribute1;
735       vendor_site_rec.global_attribute1             := p_pos_supp_sites_all_bo_tbl(i)
736                                                        .global_attribute1;
737       vendor_site_rec.global_attribute16            := p_pos_supp_sites_all_bo_tbl(i)
738                                                        .global_attribute16;
739       vendor_site_rec.global_attribute17            := p_pos_supp_sites_all_bo_tbl(i)
740                                                        .global_attribute17;
741       vendor_site_rec.global_attribute18            := p_pos_supp_sites_all_bo_tbl(i)
742                                                        .global_attribute18;
743       vendor_site_rec.global_attribute19            := p_pos_supp_sites_all_bo_tbl(i)
744                                                        .global_attribute19;
745       vendor_site_rec.global_attribute20            := p_pos_supp_sites_all_bo_tbl(i)
746                                                        .global_attribute20;
747       vendor_site_rec.tp_header_id                  := p_pos_supp_sites_all_bo_tbl(i)
748                                                        .tp_header_id;
749       vendor_site_rec.ece_tp_location_code          := p_pos_supp_sites_all_bo_tbl(i)
750                                                        .ece_tp_location_code;
751       vendor_site_rec.pcard_site_flag               := p_pos_supp_sites_all_bo_tbl(i)
752                                                        .pcard_site_flag;
753       vendor_site_rec.match_option                  := p_pos_supp_sites_all_bo_tbl(i)
754                                                        .match_option;
755       vendor_site_rec.country_of_origin_code        := p_pos_supp_sites_all_bo_tbl(i)
756                                                        .country_of_origin_code;
757       vendor_site_rec.future_dated_payment_ccid     := p_pos_supp_sites_all_bo_tbl(i)
758                                                        .future_dated_payment_ccid;
759       vendor_site_rec.create_debit_memo_flag        := p_pos_supp_sites_all_bo_tbl(i)
760                                                        .create_debit_memo_flag;
761       vendor_site_rec.supplier_notif_method         := p_pos_supp_sites_all_bo_tbl(i)
762                                                        .supplier_notif_method;
763       vendor_site_rec.email_address                 := p_pos_supp_sites_all_bo_tbl(i)
764                                                        .email_address;
765       vendor_site_rec.primary_pay_site_flag         := p_pos_supp_sites_all_bo_tbl(i)
766                                                        .primary_pay_site_flag;
767       vendor_site_rec.shipping_control              := p_pos_supp_sites_all_bo_tbl(i)
768                                                        .shipping_control;
769       vendor_site_rec.selling_company_identifier    := p_pos_supp_sites_all_bo_tbl(i)
770                                                        .selling_company_identifier;
771       vendor_site_rec.gapless_inv_num_flag          := p_pos_supp_sites_all_bo_tbl(i)
772                                                        .gapless_inv_num_flag;
773       vendor_site_rec.location_id                   := p_pos_supp_sites_all_bo_tbl(i)
774                                                        .location_id;
775       vendor_site_rec.party_site_id                 := p_pos_supp_sites_all_bo_tbl(i)
776                                                        .party_site_id;
777       /* Suchita Change */
778       IF (vendor_site_rec.party_site_id IS NULL) THEN
779         BEGIN
780           SELECT owner_table_id
781           INTO   vendor_site_rec.party_site_id
782           FROM   hz_orig_sys_references hr
783           WHERE  hr.owner_table_name = 'HZ_PARTY_SITES'
784           AND    hr.orig_system = p_pos_supp_sites_all_bo_tbl(i)
785                 .party_site_orig_system
786           AND    hr.orig_system_reference = p_pos_supp_sites_all_bo_tbl(i)
787                 .party_site_orig_sys_ref
788           AND    hr.status = 'A'
789           AND    nvl(hr.end_date_active, SYSDATE) >= SYSDATE;
790 
791         EXCEPTION
792           WHEN OTHERS THEN
793             x_return_status := fnd_api.g_ret_sts_error;
794             x_msg_count     := 1;
795             x_msg_data      := 'Party Site ID Invalid';
796             RETURN;
797         END;
798       END IF;
799 
800       vendor_site_rec.org_name                                   := p_pos_supp_sites_all_bo_tbl(i)
801                                                                     .org_name;
802       vendor_site_rec.duns_number                                := p_pos_supp_sites_all_bo_tbl(i)
803                                                                     .duns_number;
804       vendor_site_rec.address_style                              := p_pos_supp_sites_all_bo_tbl(i)
805                                                                     .address_style;
806       vendor_site_rec.language                                   := p_pos_supp_sites_all_bo_tbl(i)
807                                                                     .language;
808       vendor_site_rec.province                                   := p_pos_supp_sites_all_bo_tbl(i)
809                                                                     .province;
810       vendor_site_rec.country                                    := p_pos_supp_sites_all_bo_tbl(i)
811                                                                     .country;
812       vendor_site_rec.address_line1                              := p_pos_supp_sites_all_bo_tbl(i)
813                                                                     .address_line1;
814       vendor_site_rec.address_line2                              := p_pos_supp_sites_all_bo_tbl(i)
815                                                                     .address_line2;
816       vendor_site_rec.address_line3                              := p_pos_supp_sites_all_bo_tbl(i)
817                                                                     .address_line3;
818       vendor_site_rec.address_line4                              := p_pos_supp_sites_all_bo_tbl(i)
819                                                                     .address_line4;
820       vendor_site_rec.address_lines_alt                          := p_pos_supp_sites_all_bo_tbl(i)
821                                                                     .address_lines_alt;
822       vendor_site_rec.county                                     := p_pos_supp_sites_all_bo_tbl(i)
823                                                                     .county;
824       vendor_site_rec.city                                       := p_pos_supp_sites_all_bo_tbl(i).city;
825       vendor_site_rec.state                                      := p_pos_supp_sites_all_bo_tbl(i)
826                                                                     .state;
827       vendor_site_rec.zip                                        := p_pos_supp_sites_all_bo_tbl(i).zip;
828       vendor_site_rec.terms_name                                 := p_pos_supp_sites_all_bo_tbl(i)
829                                                                     .terms_name;
830       vendor_site_rec.default_terms_id                           := p_pos_supp_sites_all_bo_tbl(i)
831                                                                     .default_terms_id;
832       vendor_site_rec.awt_group_name                             := p_pos_supp_sites_all_bo_tbl(i)
833                                                                     .awt_group_name;
834       vendor_site_rec.pay_awt_group_name                         := p_pos_supp_sites_all_bo_tbl(i)
835                                                                     .pay_awt_group_name;
836       vendor_site_rec.distribution_set_name                      := p_pos_supp_sites_all_bo_tbl(i)
837                                                                     .distribution_set_name;
838       vendor_site_rec.ship_to_location_code                      := p_pos_supp_sites_all_bo_tbl(i)
839                                                                     .ship_to_location_code;
840       vendor_site_rec.bill_to_location_code                      := p_pos_supp_sites_all_bo_tbl(i)
841                                                                     .bill_to_location_code;
842       vendor_site_rec.default_dist_set_id                        := p_pos_supp_sites_all_bo_tbl(i)
843                                                                     .default_dist_set_id;
844       vendor_site_rec.default_ship_to_loc_id                     := p_pos_supp_sites_all_bo_tbl(i)
845                                                                     .default_ship_to_loc_id;
846       vendor_site_rec.default_bill_to_loc_id                     := p_pos_supp_sites_all_bo_tbl(i)
847                                                                     .default_bill_to_loc_id;
848       vendor_site_rec.tolerance_id                               := p_pos_supp_sites_all_bo_tbl(i)
849                                                                     .tolerance_id;
850       vendor_site_rec.tolerance_name                             := p_pos_supp_sites_all_bo_tbl(i)
851                                                                     .tolerance_name;
852       vendor_site_rec.vendor_interface_id                        := p_pos_supp_sites_all_bo_tbl(i)
853                                                                     .vendor_interface_id;
854       vendor_site_rec.vendor_site_interface_id                   := p_pos_supp_sites_all_bo_tbl(i)
855                                                                     .vendor_site_interface_id;
856       vendor_site_rec.ext_payee_rec.payee_party_id               := p_pos_supp_sites_all_bo_tbl(i)
857                                                                     .p_pos_external_payee_bo.payee_party_id;
858       vendor_site_rec.ext_payee_rec.payment_function             := p_pos_supp_sites_all_bo_tbl(i)
859                                                                     .p_pos_external_payee_bo.payment_function;
860       vendor_site_rec.ext_payee_rec.exclusive_pay_flag           := p_pos_supp_sites_all_bo_tbl(i)
861                                                                     .p_pos_external_payee_bo.exclusive_pay_flag;
862       vendor_site_rec.ext_payee_rec.payee_party_site_id          := p_pos_supp_sites_all_bo_tbl(i)
863                                                                     .p_pos_external_payee_bo.payee_party_site_id;
864       vendor_site_rec.ext_payee_rec.supplier_site_id             := p_pos_supp_sites_all_bo_tbl(i)
865                                                                     .p_pos_external_payee_bo.supplier_site_id;
866       vendor_site_rec.ext_payee_rec.payer_org_id                 := p_pos_supp_sites_all_bo_tbl(i)
867                                                                     .p_pos_external_payee_bo.payer_org_id;
868       vendor_site_rec.ext_payee_rec.payer_org_type               := p_pos_supp_sites_all_bo_tbl(i)
869                                                                     .p_pos_external_payee_bo.payer_org_type;
870       vendor_site_rec.ext_payee_rec.default_pmt_method           := p_pos_supp_sites_all_bo_tbl(i)
871                                                                     .p_pos_external_payee_bo.default_pmt_method;
872       vendor_site_rec.ext_payee_rec.ece_tp_loc_code              := p_pos_supp_sites_all_bo_tbl(i)
873                                                                     .p_pos_external_payee_bo.ece_tp_loc_code;
874       vendor_site_rec.ext_payee_rec.bank_charge_bearer           := p_pos_supp_sites_all_bo_tbl(i)
875                                                                     .p_pos_external_payee_bo.bank_charge_bearer;
876       vendor_site_rec.ext_payee_rec.bank_instr1_code             := p_pos_supp_sites_all_bo_tbl(i)
877                                                                     .p_pos_external_payee_bo.bank_instr1_code;
878       vendor_site_rec.ext_payee_rec.bank_instr2_code             := p_pos_supp_sites_all_bo_tbl(i)
879                                                                     .p_pos_external_payee_bo.bank_instr2_code;
880       vendor_site_rec.ext_payee_rec.bank_instr_detail            := p_pos_supp_sites_all_bo_tbl(i)
881                                                                     .p_pos_external_payee_bo.bank_instr_detail;
882       vendor_site_rec.ext_payee_rec.pay_reason_code              := p_pos_supp_sites_all_bo_tbl(i)
883                                                                     .p_pos_external_payee_bo.pay_reason_code;
884       vendor_site_rec.ext_payee_rec.pay_reason_com               := p_pos_supp_sites_all_bo_tbl(i)
885                                                                     .p_pos_external_payee_bo.pay_reason_com;
886       vendor_site_rec.ext_payee_rec.inactive_date                := p_pos_supp_sites_all_bo_tbl(i)
887                                                                     .p_pos_external_payee_bo.inactive_date;
888       vendor_site_rec.ext_payee_rec.pay_message1                 := p_pos_supp_sites_all_bo_tbl(i)
889                                                                     .p_pos_external_payee_bo.pay_message1;
890       vendor_site_rec.ext_payee_rec.pay_message2                 := p_pos_supp_sites_all_bo_tbl(i)
891                                                                     .p_pos_external_payee_bo.pay_message2;
892       vendor_site_rec.ext_payee_rec.pay_message3                 := p_pos_supp_sites_all_bo_tbl(i)
893                                                                     .p_pos_external_payee_bo.pay_message3;
894       vendor_site_rec.ext_payee_rec.delivery_channel             := p_pos_supp_sites_all_bo_tbl(i)
895                                                                     .p_pos_external_payee_bo.delivery_channel;
896       vendor_site_rec.ext_payee_rec.pmt_format                   := p_pos_supp_sites_all_bo_tbl(i)
897                                                                     .p_pos_external_payee_bo.pmt_format;
898       vendor_site_rec.ext_payee_rec.settlement_priority          := p_pos_supp_sites_all_bo_tbl(i)
899                                                                     .p_pos_external_payee_bo.settlement_priority;
900       vendor_site_rec.ext_payee_rec.remit_advice_delivery_method := p_pos_supp_sites_all_bo_tbl(i)
901                                                                     .p_pos_external_payee_bo.remit_advice_delivery_method;
902       vendor_site_rec.ext_payee_rec.remit_advice_email           := p_pos_supp_sites_all_bo_tbl(i)
903                                                                     .p_pos_external_payee_bo.remit_advice_email;
904       vendor_site_rec.ext_payee_rec.edi_payment_format           := p_pos_supp_sites_all_bo_tbl(i)
905                                                                     .p_pos_external_payee_bo.edi_payment_format;
906       vendor_site_rec.ext_payee_rec.edi_transaction_handling     := p_pos_supp_sites_all_bo_tbl(i)
907                                                                     .p_pos_external_payee_bo.edi_transaction_handling;
908       vendor_site_rec.ext_payee_rec.edi_payment_method           := p_pos_supp_sites_all_bo_tbl(i)
909                                                                     .p_pos_external_payee_bo.edi_payment_method;
910       vendor_site_rec.ext_payee_rec.edi_remittance_method        := p_pos_supp_sites_all_bo_tbl(i)
911                                                                     .p_pos_external_payee_bo.edi_remittance_method;
912       vendor_site_rec.ext_payee_rec.edi_remittance_instruction   := p_pos_supp_sites_all_bo_tbl(i)
913                                                                     .p_pos_external_payee_bo.edi_remittance_instruction;
914       vendor_site_rec.retainage_rate                             := p_pos_supp_sites_all_bo_tbl(i)
915                                                                     .retainage_rate;
916       vendor_site_rec.services_tolerance_id                      := p_pos_supp_sites_all_bo_tbl(i)
917                                                                     .services_tolerance_id;
918       vendor_site_rec.services_tolerance_name                    := p_pos_supp_sites_all_bo_tbl(i)
919                                                                     .services_tolerance_name;
920       vendor_site_rec.shipping_location_id                       := p_pos_supp_sites_all_bo_tbl(i)
921                                                                     .shipping_location_id;
922       vendor_site_rec.vat_code                                   := p_pos_supp_sites_all_bo_tbl(i)
923                                                                     .vat_code;
924       vendor_site_rec.vat_registration_num                       := p_pos_supp_sites_all_bo_tbl(i)
925                                                                     .vat_registration_num;
926       vendor_site_rec.edi_id_number                              := p_pos_supp_sites_all_bo_tbl(i)
927                                                                     .edi_id_number;
928       vendor_site_rec.edi_payment_format                         := p_pos_supp_sites_all_bo_tbl(i)
929                                                                     .edi_payment_format;
930       vendor_site_rec.edi_transaction_handling                   := p_pos_supp_sites_all_bo_tbl(i)
931                                                                     .edi_transaction_handling;
932       vendor_site_rec.edi_payment_method                         := p_pos_supp_sites_all_bo_tbl(i)
933                                                                     .edi_payment_method;
934       vendor_site_rec.edi_remittance_method                      := p_pos_supp_sites_all_bo_tbl(i)
935                                                                     .edi_remittance_method;
936       vendor_site_rec.edi_remittance_instruction                 := p_pos_supp_sites_all_bo_tbl(i)
937                                                                     .edi_remittance_instruction;
938       vendor_site_rec.party_site_name                            := p_pos_supp_sites_all_bo_tbl(i)
939                                                                     .party_site_name;
940       vendor_site_rec.offset_tax_flag                            := p_pos_supp_sites_all_bo_tbl(i)
941                                                                     .offset_tax_flag;
942       vendor_site_rec.auto_tax_calc_flag                         := p_pos_supp_sites_all_bo_tbl(i)
943                                                                     .auto_tax_calc_flag;
944       --vendor_site_rec
945 
946       IF p_create_update_flag = 'C' THEN
947 
948         create_vendor_site(vendor_site_rec,
949                            vendor_site_rec.ext_payee_rec,
950                            x_return_status,
951                            x_msg_count,
952                            x_msg_data);
953 
954       ELSIF p_create_update_flag = 'U' THEN
955         ap_vendor_pub_pkg.update_vendor_site(p_api_version,
956                                              p_init_msg_list,
957                                              fnd_api.g_false,
958                                              fnd_api.g_valid_level_full,
959                                              x_return_status,
960                                              x_msg_count,
961                                              x_msg_data,
962                                              vendor_site_rec,
963                                              vendor_site_rec.vendor_site_id,
964                                              'NOT ISETUP');
965       ELSE
966         x_return_status := fnd_api.g_ret_sts_unexp_error;
967         x_msg_data      := 'Create update flag is neither C nor U, exiting';
968         RETURN;
969       END IF;
970     END LOOP;
971 
972   EXCEPTION
973     WHEN fnd_api.g_exc_error THEN
974 
975       x_return_status := fnd_api.g_ret_sts_error;
976       fnd_msg_pub.count_and_get(p_count => x_msg_count,
977                                 p_data  => x_msg_data);
978     WHEN fnd_api.g_exc_unexpected_error THEN
979 
980       x_return_status := fnd_api.g_ret_sts_unexp_error;
981       fnd_msg_pub.count_and_get(p_count => x_msg_count,
982                                 p_data  => x_msg_data);
983     WHEN OTHERS THEN
984 
985       x_return_status := fnd_api.g_ret_sts_unexp_error;
986 
987       fnd_msg_pub.count_and_get(p_count => x_msg_count,
988                                 p_data  => x_msg_data);
989   END create_pos_supplier_site_bo;
990 
991 END pos_ap_supplier_site_bo_pkg;