用友U8-sql server2008 对接国库支付oracle数据问题集锦

用友U8对接国库支付oracle数据问题集锦

oracle数据库链接问题
用友U8接口形式
接口数据采集要点


oracle数据库链接问题

其实核心主要是通过sql server 的 服务器对象 - 链接服务器 添加一个远端服务器,实现与oracle的对接。
1、驱动的选择
sql server 2008 R2 安装后自带的访问接口驱动为 MSORA 由于各种问题导致非常不好用。需要采用oracle公司自带的驱动 OraOLEDB.Oracle 安装后在常规中选中 动态参数嵌套查询允许进程内
用友U8-sql server2008 对接国库支付oracle数据问题集锦_第1张图片
2、Oracle客户端及驱动的选择与安装
不建议采用网上的Oracle客户端软件 (Instant Client Setup),强烈建议到官网下载:
http://www.oracle.com/technetwork/database/enterprise-edition/downloads/index-092322.html

版本选择:
oracle版本是再AIX系统上的oracle9,所以在sql server2008服务器上的oracle客户端建议选择32位的11g**(win32_11gR2_client)。12c在sql server 2008上不能实现**OraOLEDB.Oracle 访问接口,至于为什么不选择64位版本,试过就知道了。

Oracle Net Manager 配置

新建一个服务器命名“ dblink”,再建立链接服务器中用到( 数据源
用友U8-sql server2008 对接国库支付oracle数据问题集锦_第2张图片

建立链接服务器
请参考前辈:
https://www.cnblogs.com/wayne-ivan/p/4691099.html

用友U8接口形式

两种接口形式
1、通用接口
用友U8-sql server2008 对接国库支付oracle数据问题集锦_第3张图片
用友U8-sql server2008 对接国库支付oracle数据问题集锦_第4张图片
用友U8-sql server2008 对接国库支付oracle数据问题集锦_第5张图片
用友U8-sql server2008 对接国库支付oracle数据问题集锦_第6张图片
用友U8-sql server2008 对接国库支付oracle数据问题集锦_第7张图片

建立视图代码

SELECT BILL_NO, VOUCHER_NO, BILLS_DATE, BILLS_MONEY, BILLS_ACCESSORY_NUM, 
  BILLS_SUMMARY, EN_CODE, EN_NAME, PM_CODE, PM_NAME, MK_CODE, MK_NAME, 
  BS_CODE, BS_NAME, BI_CODE, BI_NAME, BSI_CODE, BSI_NAME, PK_CODE, PK_NAME, 
  BO_CODE, BO_NAME, BK_CODE, BK_NAME, MB_CODE, MB_NAME, DP_CODE, CR_CODE, 
  BIS_CODE, BIS_NAME, FILE_NO, PA_CODE, PA_NAME, PAYEE_NAME, PAYEE_BANK, PAYEE_ACCOUNT
FROM  OPENQUERY([dblink,建立的数据源], 'select voucher_bill_no bill_no, voucher_no, 
  substr(pay_date, 1, 10) as bills_date, 
  case when pa_code = ''002'' then -pay_money else pay_money end as bills_money, 
  accessory_number as bills_accessory_num, Pay_summary_name || remark as bills_summary, 
  en_code as en_code,en_name, pm_code,pm_name,mk_code as mk_code,mk_name, bs_code as bs_code,
  bs_name, bi_code as bi_code,bi_name, bsi_code as bsi_code,bsi_name, pk_code as pk_code,
  pk_name, bo_code as bo_code,bo_name, bk_code as bk_code, bk_name,mb_code,mb_name, 
  '' '' as dp_code, '' '' as cr_code, bis_code,bis_name, '' '' as file_no, 
  pa_disp_code as pa_code,pa_name, pay_account_name as payee_name, pay_account_bank as payee_bank, 
  pay_account_no as payee_account from vw_pay_voucher where is_valid=1')
AS derivedtbl_1

2、国库接口

(未完待续)

你可能感兴趣的:(数据库)