AP*更新供应商地点

 

 

 

--更新供应商地点
  PROCEDURE update_vendor_site(p_init_msg_list  IN VARCHAR2 DEFAULT fnd_api.g_false,
                               x_return_status  OUT NOCOPY VARCHAR2,
                               x_msg_count      OUT NOCOPY NUMBER,
                               x_msg_data       OUT NOCOPY VARCHAR2,
                               p_cust_vendor_id IN NUMBER) IS
    l_api_name       CONSTANT VARCHAR2(30) := 'UPDATE_VENDOR_SITE';
    l_savepoint_name CONSTANT VARCHAR2(30) := 'UPDATE_VENDOR_SITE';
    l_return_status VARCHAR2(1);
    l_msg_count     NUMBER;
    l_msg_data      VARCHAR2(4000);
    v_return_mes    VARCHAR2(4000);
    l_message       VARCHAR2(4000);
  
    lv_vendor_site_id NUMBER := 0;
  
    lv_vendor_site_rec_c ap_vendor_pub_pkg.r_vendor_site_rec_type;
    lv_vendor_site_rec   ap_vendor_pub_pkg.r_vendor_site_rec_type;
  
    l_vendor_site_id NUMBER;
    l_party_site_id  NUMBER;
    l_location_id    NUMBER;
  
    l_success_count NUMBER := 0;
    l_error_count   NUMBER := 0;
  
    l_party_id NUMBER;
  
  BEGIN
    x_return_status := hss_api.start_activity(p_pkg_name      => g_pkg_name,
                                              p_api_name      => l_api_name,
                                              p_init_msg_list => p_init_msg_list);
    IF (x_return_status = fnd_api.g_ret_sts_unexp_error) THEN
      RAISE fnd_api.g_exc_unexpected_error;
    ELSIF (x_return_status = fnd_api.g_ret_sts_error) THEN
      RAISE fnd_api.g_exc_error;
    END IF;
  
    FOR rec_pt IN (SELECT cva.party_id,
                          cva.party_name,
                          cva.attribute15,
                          cia.org_id
                     FROM cux_dis_cust_vendor_all cva,
                          cux_dis_org_info_all    cia
                    WHERE cva.cust_vendor_id = p_cust_vendor_id
                      AND cva.party_id = cia.party_id
                      AND cva.attribute15 = cia.attribute15
                      AND cia.new_discription_flag = 'Y')
    LOOP
    
      FOR i IN (SELECT *
                  FROM (SELECT pvs.*
                          FROM po_vendors          pv,
                               po_vendor_sites_all pvs
                         WHERE pvs.vendor_id = pv.vendor_id
                           AND pv.vendor_name = rec_pt.party_name
                         ORDER BY pvs.last_update_date DESC)
                 WHERE rownum = 1)
      LOOP
      
        --log('org_id' || l_line.org_id);
        --log('vendor_site_code' || l_line.vendor_site_code);
        --log('vendor_id' || l_line.vendor_id);
      
        lv_vendor_site_rec := lv_vendor_site_rec_c;
      
        fnd_global.apps_initialize(user_id      => fnd_global.user_id,
                                   resp_id      => fnd_global.resp_id,
                                   resp_appl_id => fnd_global.resp_appl_id);
      
        mo_global.set_policy_context('S',
                                     rec_pt.org_id);
      
        --========================================================================
        lv_vendor_site_id                                := i.vendor_site_id; -- 供应商地点ID
        lv_vendor_site_rec.vendor_site_id                := i.vendor_site_id;
        lv_vendor_site_rec.vendor_id                     := i.vendor_id; -- 供应商ID
        lv_vendor_site_rec.vendor_site_code              := i.vendor_site_code;
        lv_vendor_site_rec.vendor_site_code_alt          := i.vendor_site_code_alt;
        lv_vendor_site_rec.inactive_date                 := trunc(SYSDATE); -- 失效日期
        lv_vendor_site_rec.org_id                        := rec_pt.org_id;
        lv_vendor_site_rec.location_id                   := i.location_id;
        lv_vendor_site_rec.party_site_id                 := i.party_site_id;
        lv_vendor_site_rec.address_style                 := i.address_style;
        lv_vendor_site_rec.address_line1                 := i.address_line1;
        lv_vendor_site_rec.address_line2                 := i.address_line2;
        lv_vendor_site_rec.address_line3                 := i.address_line3;
        lv_vendor_site_rec.address_line4                 := i.address_line4;
        lv_vendor_site_rec.address_lines_alt             := i.address_lines_alt;
        lv_vendor_site_rec.province                      := i.province;
        lv_vendor_site_rec.country                       := i.country;
        lv_vendor_site_rec.county                        := i.county;
        lv_vendor_site_rec.city                          := i.city;
        lv_vendor_site_rec.state                         := i.state;
        lv_vendor_site_rec.area_code                     := i.area_code;
        lv_vendor_site_rec.ship_to_location_id           := i.ship_to_location_id;
        lv_vendor_site_rec.bill_to_location_id           := i.bill_to_location_id;
        lv_vendor_site_rec.terms_date_basis              := i.terms_date_basis;
        lv_vendor_site_rec.accts_pay_code_combination_id := i.accts_pay_code_combination_id;
        lv_vendor_site_rec.prepay_code_combination_id    := i.prepay_code_combination_id;
        lv_vendor_site_rec.payment_priority              := i.payment_priority;
        lv_vendor_site_rec.terms_id                      := i.terms_id;
        lv_vendor_site_rec.pay_date_basis_lookup_code    := i.pay_date_basis_lookup_code;
        lv_vendor_site_rec.fax                           := i.fax;
        lv_vendor_site_rec.phone                         := i.phone;
        lv_vendor_site_rec.pcard_site_flag               := i.pcard_site_flag;
        lv_vendor_site_rec.match_option                  := i.match_option;
        lv_vendor_site_rec.country_of_origin_code        := i.country_of_origin_code;
        lv_vendor_site_rec.future_dated_payment_ccid     := i.future_dated_payment_ccid;
        lv_vendor_site_rec.email_address                 := i.email_address;
        lv_vendor_site_rec.primary_pay_site_flag         := i.primary_pay_site_flag;
        lv_vendor_site_rec.ship_via_lookup_code          := i.ship_via_lookup_code;
        lv_vendor_site_rec.freight_terms_lookup_code     := i.freight_terms_lookup_code;
        lv_vendor_site_rec.fob_lookup_code               := i.fob_lookup_code;
        lv_vendor_site_rec.pay_group_lookup_code         := i.pay_group_lookup_code;
        lv_vendor_site_rec.invoice_currency_code         := i.invoice_currency_code;
        lv_vendor_site_rec.payment_currency_code         := i.payment_currency_code;
        lv_vendor_site_rec.vat_code                      := i.vat_code;
        lv_vendor_site_rec.auto_tax_calc_flag            := i.auto_tax_calc_flag;
        lv_vendor_site_rec.pay_site_flag                 := 'Y'; --i.pay_site_flag;
        lv_vendor_site_rec.purchasing_site_flag          := 'Y'; --i.purchasing_site_flag;
      
        pos_vendor_pub_pkg.create_vendor_site(x_return_status   => l_return_status,
                                              x_msg_count       => l_msg_count,
                                              x_msg_data        => l_msg_data,
                                              p_vendor_site_rec => lv_vendor_site_rec,
                                              x_vendor_site_id  => l_vendor_site_id,
                                              x_party_site_id   => l_party_site_id,
                                              x_location_id     => l_location_id);
      
        IF (x_return_status <> fnd_api.g_ret_sts_success) THEN
        
          l_msg_data   := fnd_message.get || l_msg_data;
          v_return_mes := cux_dis_cust_vdr_ipt_pkg.get_return_message(l_msg_count,
                                                                      l_msg_data);
          l_message    := l_message || '.' || '新增地点:' || v_return_mes;
          l_msg_data   := l_message || '创建供应商地点失败!';
        
          -- cux_conc_utl.log_msg('创建供应商地点失败!' || '-' || l_vendor_site_id || '-' || l_party_site_id || '-' || l_location_id || '-' || l_msg_data);
        
          log('创建供应商地点失败!' || '-' || l_vendor_site_id || '-' || l_party_site_id || '-' || l_location_id || '-' || l_msg_data);
          RAISE fnd_api.g_exc_error;
        ELSE
          --导入后将party_id回写到客制化表中,并将状态更新为'已导入'
          UPDATE cux_dis_cust_vendor_all cva
             SET cva.status_code = 'ENABLED',
                 cva.attribute15 = 'Y'
           WHERE cva.cust_vendor_id = p_cust_vendor_id;
        
          log('party_id:=' || '-' || rec_pt.party_id || '-' || 'org_id:=-' || '-' || rec_pt.org_id);
        
          UPDATE cux_dis_org_info_all cia
             SET cia.discription_flag     = 'Y',
                 cia.new_discription_flag = NULL,
                 cia.attribute15          = 'Y'
           WHERE cia.party_id = rec_pt.party_id
             AND cia.org_id = rec_pt.org_id
             AND cia.new_discription_flag = 'Y';
        END IF;
      
      END LOOP;
    END LOOP;
    --============================================================================
  
    l_return_status := hss_api.end_activity(p_pkg_name  => g_pkg_name,
                                            p_api_name  => l_api_name,
                                            x_msg_count => x_msg_count,
                                            x_msg_data  => x_msg_data);
  EXCEPTION
    WHEN fnd_api.g_exc_error THEN
      ROLLBACK;
      UPDATE cux_dis_cust_vendor_all cva
         SET cva.status_code = 'IMPORT_FAILED'
       WHERE cva.cust_vendor_id = p_cust_vendor_id;
      x_return_status := hss_api.handle_exceptions(p_pkg_name       => g_pkg_name,
                                                   p_api_name       => l_api_name,
                                                   p_savepoint_name => l_savepoint_name,
                                                   p_exc_name       => hss_api.g_exc_name_error,
                                                   x_msg_count      => x_msg_count,
                                                   x_msg_data       => x_msg_data);
      x_msg_data      := x_msg_data || l_msg_data;
    
    WHEN fnd_api.g_exc_unexpected_error THEN
      ROLLBACK;
      UPDATE cux_dis_cust_vendor_all cva
         SET cva.status_code = 'IMPORT_FAILED'
       WHERE cva.cust_vendor_id = p_cust_vendor_id;
      x_return_status := hss_api.handle_exceptions(p_pkg_name       => g_pkg_name,
                                                   p_api_name       => l_api_name,
                                                   p_savepoint_name => l_savepoint_name,
                                                   p_exc_name       => hss_api.g_exc_name_unexp,
                                                   x_msg_count      => x_msg_count,
                                                   x_msg_data       => x_msg_data);
      x_msg_data      := x_msg_data || l_msg_data;
    WHEN OTHERS THEN
      ROLLBACK;
      UPDATE cux_dis_cust_vendor_all cva
         SET cva.status_code = 'IMPORT_FAILED'
       WHERE cva.cust_vendor_id = p_cust_vendor_id;
      x_return_status := hss_api.handle_exceptions(p_pkg_name       => g_pkg_name,
                                                   p_api_name       => l_api_name,
                                                   p_savepoint_name => l_savepoint_name,
                                                   p_exc_name       => hss_api.g_exc_name_others,
                                                   x_msg_count      => x_msg_count,
                                                   x_msg_data       => x_msg_data);
      x_msg_data      := x_msg_data || l_msg_data;
  END update_vendor_site;

 

转载于:https://www.cnblogs.com/wang-chen/p/6209802.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
系统根据B/S,即所谓的电脑浏览器/网络服务器方式,运用Java技术性,挑选MySQL作为后台系统。系统主要包含对客服聊天管理、字典表管理、公告信息管理、金融工具管理、金融工具收藏管理、金融工具银行卡管理、借款管理、理财产品管理、理财产品收藏管理、理财产品银行卡管理、理财银行卡信息管理、银行卡管理、存款管理、银行卡记录管理、取款管理、转账管理、用户管理、员工管理等功能模块。 文中重点介绍了银行管理的专业技术发展背景和发展状况,随后遵照软件传统式研发流程,最先挑选适用思维和语言软件开发平台,依据需求分析报告模块和设计数据库结构,再根据系统功能模块的设计制作系统功能模块图、流程表和E-R图。随后设计架构以及编写代码,并实现系统能模块。最终基本完成系统检测和功能测试。结果显示,该系统能够实现所需要的作用,工作状态没有明显缺陷。 系统登录功能是程序必不可少的功能,在登录页面必填的数据有两项,一项就是账号,另一项数据就是密码,当管理员正确填写并提交这二者数据之后,管理员就可以进入系统后台功能操作区。进入银行卡列表,管理员可以进行查看列表、模糊搜索以及相关维护等操作。用户进入系统可以查看公告和模糊搜索公告信息、也可以进行公告维护操作。理财产品管理页面,管理员可以进行查看列表、模糊搜索以及相关维护等操作。产品类型管理页面,此页面提供给管理员的功能有:新增产品类型,修改产品类型,删除产品类型。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值