求大神这个怎么报无效数字的错误啊???create or replace package body cux_ebs_syn_vender_pkg is  procedure insert_system_vender_tmp(p_user_id number) is
      begin
      
        delete from pur_system_vender_tmp;
        insert into pur_system_vender_tmp
              select vendor_id vender_id,
             vendor_num vender_code, 
             vendor_type_lookup_code vender_type_id,
             null description_id, 
             null address ,
             null artificial_person ,
             null tax_id_number ,
             branch_num bank_branch_code,
             bank_account_num bank_account_code,
             null payment_term_id,
             null payment_method,
             currency_code,
             null tax_type_id,
             null approved_vender_flag,
             null enabled_flag ,
             p_user_id created_by ,
             sysdate creation_date,
             p_user_id last_updated_by,
             sysdate last_update_date,
             end_date_active end_date_active,
             party_site_id,
             party_site_name,
             vendor_site_id,
             vendor_site_code,
             end_date_active site_inactive_date,
             org_id,
             name org_name,
             country,      
             country_code,
             address_line1,
             address_line2,
             address_line3   
      from appsebs_CUX_AP_VENDORS v;
      exception
  
    when others then
    
      sys_raise_app_error_pkg.raise_sys_others_error(p_message                 => dbms_utility.format_error_backtrace || ' ' ||
                                                                                  sqlerrm,
                                                     p_created_by              => 1,
                                                     p_package_name            => 'cux_ebs_update_data',
                                                     p_procedure_function_name => 'insert_customers_tmp');
      raise_application_error(sys_raise_app_error_pkg.c_error_number,
                              sys_raise_app_error_pkg.g_err_line_id);
    
  end;
  
  procedure load_system_vender(p_user_id number) is
     v_pur_system_vender_tmp pur_system_vender_tmp%rowtype;
     begin
       insert_system_vender_tmp(p_user_id);
       begin
      --查询不存在的数据
      select *
        into v_pur_system_vender_tmp
        from pur_system_vender_tmp vt
       where not exists
       (select 1
                from pur_system_venders p
                where p.vender_id= vt.vender_id
                and p.vendor_site_id=vt.vendor_site_id
                and p.bank_account_code= vt.bank_account_code);
               
           --不存在则插入
           insert into pur_system_venders p
            values v_pur_system_vender_tmp;
            for cur_line in (select *
               from pur_system_vender_tmp vt
               where exists (select 1
               from pur_system_venders p
               where p.vender_id= vt.vender_id
                and p.vendor_site_id=vt.vendor_site_id
                and p.bank_account_code= vt.bank_account_code)
                and not exists 
                (select 1
                  from pur_system_venders p
                  where p.vender_id=vt.vender_id and
                  p.vender_code=vt.vender_code and
                  p.vender_type_id=vt.vender_type_id and
                  p.description_id=vt.description_id and
                  p.address = vt.address and
                  p.artificial_person = vt.artificial_person and
                  p.tax_id_number = vt.tax_id_number and
                  p.bank_branch_code= vt.bank_branch_code and
                  p.bank_account_code=vt.bank_account_code and
                  p.payment_term_id = vt.payment_term_id and
                  p.payment_method=vt.payment_method and
                  p.currency_code=vt.currency_code and
                  p.tax_type_id=vt.tax_type_id and
                  p.approved_vender_flag=vt.approved_vender_flag and
                  p.enabled_flag=vt.enabled_flag and
                  p.created_by=vt.created_by and
                  p.creation_date=vt.creation_date and
                  p.last_updated_by=vt.last_updated_by and
                  p.last_update_date=vt.last_update_date and
                  p.end_date_active=vt.end_date_active and 
                  p.vendor_site_id=vt.vendor_site_id and
                  p.party_site_name=vt.party_site_name and
                  p.vendor_site_code=vt.vendor_site_code and
                  p.site_inactive_date=vt.site_inactive_date and
                  p.org_id=vt.org_id and
                  p.org_name=vt.org_name and
                  p.country=vt.country and
                  p.country_code=vt.country_code and
                  p.address_line1=vt.address_line1 and
                  p.address_line2=vt.address_line2 and
                  p.address_line3=vt.address_line3))
                   loop
                       begin
                        update pur_system_venders p
                        set p.vender_code=cur_line.vender_code ,
                  p.vender_type_id=cur_line.vender_type_id ,
                  p.description_id=cur_line.description_id ,
                  p.address = cur_line.address ,
                  p.artificial_person = cur_line.artificial_person ,
                  p.tax_id_number = cur_line.tax_id_number ,
                  p.bank_branch_code= cur_line.bank_branch_code ,
                  p.bank_account_code=cur_line.bank_account_code ,
                  p.payment_term_id = cur_line.payment_term_id ,
                  p.payment_method=cur_line.payment_method ,
                  p.currency_code=cur_line.currency_code ,
                  p.tax_type_id=cur_line.tax_type_id ,
                  p.approved_vender_flag=cur_line.approved_vender_flag ,
                  p.enabled_flag=cur_line.enabled_flag ,
                  p.created_by=cur_line.created_by ,
                  p.creation_date=cur_line.creation_date ,
                  p.last_updated_by=cur_line.last_updated_by ,
                  p.last_update_date=sysdate ,
                  p.end_date_active=cur_line.end_date_active , 
                  p.vendor_site_id=cur_line.vendor_site_id ,
                  p.party_site_name=cur_line.party_site_name ,
                  
                  p.vendor_site_code=cur_line.vendor_site_code ,
                  p.site_inactive_date=cur_line.site_inactive_date ,
                  p.org_id=cur_line.org_id ,
                  p.org_name=cur_line.org_name ,
                  p.country=cur_line.country ,
                  p.country_code=cur_line.country_code ,
                  p.address_line1=cur_line.address_line1 ,
                  p.address_line2=cur_line.address_line2 ,
                  p.address_line3=cur_line.address_line3
                  where p.vender_id= cur_line.vender_id
                and p.vendor_site_id=cur_line.vendor_site_id
                and p.bank_account_code= cur_line.bank_account_code;
                end;
                end loop;
    exception
      when others then
        sys_raise_app_error_pkg.raise_sys_others_error(p_message                 => dbms_utility.format_error_backtrace || ' ' ||
                                                                                    sqlerrm,
                                                       p_created_by              => 1,
                                                       p_package_name            => 'cux_data_vender',
                                                       p_procedure_function_name => 'vendor_synchronize_event');
        raise_application_error(sys_raise_app_error_pkg.c_error_number,
                                sys_raise_app_error_pkg.g_err_line_id);
    end;
  end;                  end cux_ebs_syn_vender_pkg;