数据库表:--CreatetableDROPTABLECUX.cux_ap_invoice_interface;createtableCUX.cux_ap_invoice_interface(OU_NAMEVARCHAR2(240),--组织invoice_typeVARCHAR2(2

数据库表:

-- Create table

DROP TABLE CUX.cux_ap_invoice_interface;

create table CUX.cux_ap_invoice_interface

(

OU_NAME

VARCHAR2(240), --组织

invoice_type

VARCHAR2(240), --发票类型

vendor_name

VARCHAR2(240), --供应商名称

site_name

VARCHAR2(240), --供应商地点

invoice_date

VARCHAR2(240), --发票日期

gl_date

VARCHAR2(240), --GL日期

invoice_num

VARCHAR2(240), --发票编号

currency_code

VARCHAR2(240), --发票币种

invoice_amount

VARCHAR2(240), --发票金额

exchange_rate_type

VARCHAR2(240), --汇率类型

exchange_rate

VARCHAR2(240), --汇率

pay_group

VARCHAR2(240), --支付组

pay_method

VARCHAR2(240), --付款方法

terms_date

VARCHAR2(240), --条件日期

terms_name

VARCHAR2(240), --条件

--ap_code_combination

varchar2(240), --应付账款帐户()

--header_att8

VARCHAR2(240), --头弹性8()

header_global_att19

VARCHAR2(240), --头弹性global_19

line_num

VARCHAR2(240), --行号

line_amount

VARCHAR2(240),

--行金额

project_name

VARCHAR2(240),

--采购项目号

expenditure_type

VARCHAR2(240),

--支出类型

expenditure_item_date

VARCHAR2(240),

--支出项日期

expenditure_organization VARCHAR2(240),

--支出组织

line_gl_date

VARCHAR2(240),

--行GL日期

dist_code_combination

VARCHAR2(240), --分配行账户

org_id

VARCHAR2(240),

vendor_id

VARCHAR2(240),

vendor_site_id

VARCHAR2(240),

dist_ccid

VARCHAR2(240),

ap_ccid

VARCHAR2(240),

project_id

VARCHAR2(240),

task_id

VARCHAR2(240),

is_success

VARCHAR2(1)

)

tablespace APPS_TS_TX_DATA;

验证程序:

-- ALTER SESSION SET NLS_LANGUAGE='SIMPLIFIED CHINESE';

/*

alter table cux.cux_ap_invoice_interface add org_id number;

alter table cux.cux_ap_invoice_interface add vendor_id number;

alter table cux.cux_ap_invoice_interface add vendor_site_id number;

alter table cux.cux_ap_invoice_interface add dist_ccid number;

alter table cux.cux_ap_invoice_interface add ap_ccid number;

alter table cux.cux_ap_invoice_interface add project_id number;

alter table cux.cux_ap_invoice_interface add task_id number;

*/

--1、导入数据

/*select * from CUX.cux_ap_invoice_interface for update*/

--2.为数据分配编号

/*DECLARE

CURSOR cur IS

SELECT ap.rowid, ap.*

FROM cux.cux_ap_invoice_interface ap;

l_num NUMBER := 0;

BEGIN

FOR i IN cur LOOP

l_num := l_num + 1;

UPDATE cux.cux_ap_invoice_interface ap

SET ap.row_id = l_num

WHERE ap.rowid = i.rowid;

END LOOP;

COMMIT;

END;

*/

--3.校验数据

DECLARE

CURSOR cur IS

SELECT *

FROM cux.cux_ap_invoice_interface;

l_count

NUMBER := 0;

l_org_id

NUMBER;

l_vendor_id

NUMBER;

l_vendor_site_id NUMBER;

l_dist_ccid

NUMBER;

l_ap_ccid

NUMBER;

l_project_id

NUMBER;

l_task_id

NUMBER;

l_flag

VARCHAR2(1);

BEGIN

FOR i IN cur LOOP

l_flag := 'T';

BEGIN

SELECT hou.organization_id

INTO l_org_id

FROM hr_operating_units hou

WHERE hou.name = i.ou_name;

EXCEPTION

WHEN OTHERS THEN

l_flag := 'F';

l_org_id := NULL;

dbms_output.put_line(i.row_id || 'OU不存在;');

END;

BEGIN

SELECT pv.vendor_id

INTO l_vendor_id

FROM po_vendors pv

WHERE pv.vendor_name = rtrim(i.vendor_name);

EXCEPTION

WHEN OTHERS THEN

l_flag

:= 'F';

l_vendor_id := NULL;

dbms_output.put_line(i.row_id || '供应商不存在;');

END;

BEGIN

/*SELECT max(pvs.vendor_site_id)

INTO l_vendor_site_id

FROM po_vendor_sites_all pvs, po_vendors pv

WHERE pv.vendor_name = rtrim(i.vendor_name)

AND pv.vendor_id = pvs.vendor_id

AND pvs.org_id = l_org_id;*/

SELECT pvs.vendor_site_id

INTO l_vendor_site_id

FROM po_vendor_sites_all pvs, po_vendors pv

WHERE pv.vendor_name = rtrim(i.vendor_name)

AND pv.vendor_id = pvs.vendor_id

AND pvs.org_id = l_org_id

AND pvs.vendor_site_code = i.site_name;

EXCEPTION

WHEN OTHERS THEN

l_flag

:= 'F';

l_vendor_site_id := NULL;

dbms_output.put_line(i.row_id || '供应商在该OU下不存在地点;');

END;

IF i.currency_code <> 'CNY' AND

(i.exchange_rate_type IS NULL OR i.exchange_rate IS NULL) THEN

l_flag := 'F';

dbms_output.put_line(i.row_id || '该外币发票没有汇率或者汇率类型;');

END IF;

BEGIN

SELECT gcc.code_combination_id

INTO l_dist_ccid

FROM gl_code_combinations_kfv gcc

WHERE gcc.concatenated_segments = i.dist_code_combination;

EXCEPTION

WHEN OTHERS THEN

l_flag

:= 'F';

l_dist_ccid := NULL;

dbms_output.put_line(i.row_id || '分配帐户不存在或不唯一;');

END;

/* IF i.ap_code_combination IS NOT NULL THEN

BEGIN

SELECT gcc.code_combination_id

INTO l_ap_ccid

FROM gl_code_combinations_kfv gcc

WHERE gcc.concatenated_segments = i.ap_code_combination;

EXCEPTION

WHEN OTHERS THEN

l_flag := 'F';

l_ap_ccid := NULL;

dbms_output.put_line(i.invoice_num || '负债帐户不存在或不唯一;');

END;

ELSE

l_ap_ccid := NULL;

END IF;*/

BEGIN

SELECT ppa.project_id

INTO l_project_id

FROM pa_projects_all ppa

WHERE ppa.segment1 = rtrim(i.project_name)

AND ppa.org_id = l_org_id;

EXCEPTION

WHEN OTHERS THEN

l_flag

:= 'F';

l_project_id := NULL;

dbms_output.put_line(i.row_id || '采购项目不存在或不唯一;');

END;

BEGIN

SELECT pt.task_id

INTO l_task_id

FROM pa_projects_all ppa, pa_tasks pt

WHERE ppa.segment1 = rtrim(i.project_name)

AND ppa.org_id = l_org_id

AND ppa.project_id = pt.project_id;

EXCEPTION

WHEN OTHERS THEN

l_flag := 'F';

l_task_id := NULL;

dbms_output.put_line(i.row_id || '采购项目对应的任务号不存在;');

END;

/*SELECT COUNT(1)

INTO l_count

FROM fnd_flex_values_vl ffvv, fnd_flex_value_sets ffvs

WHERE ffvv.flex_value_set_id = ffvs.flex_value_set_id

AND ffvs.flex_value_set_name = 'CUX_HR_PEOPLE_GRADE'

AND ffvv.flex_value = i.header_att8;

IF l_count < 1 THEN

l_flag := 'F';

dbms_output.put_line(i.invoice_num || '事业部板块信息错误;');

END IF;*/

IF l_flag = 'T' THEN

UPDATE cux.cux_ap_invoice_interface a

SET a.org_id

= l_org_id,

a.vendor_id

= l_vendor_id,

a.vendor_site_id = l_vendor_site_id,

a.dist_ccid

= l_dist_ccid,

a.ap_ccid

= l_ap_ccid,

a.project_id

= l_project_id,

a.task_id

= l_task_id,

a.is_success

= 'T'

WHERE a.row_id = i.row_id;

END IF;

END LOOP;

COMMIT;

END;

--4.导入数据

--5,运行请求:应付款管理系统开放接口导入

AP数据导入程序:

本文原创发布php中文网,转载请注明出处,感谢您的尊重!

相关文章

相关视频

php导入开票系统,AP发票数据导入接口开发实例(ap_invoices_interface)相关推荐

  1. 如何将excel表格导入matlab,将Excel数据导入MATLAB中的方法

    在使用MATLAB对矩阵进行数据处理时,为了方便编辑与修改,常常需要先将数据录入到Excel中,然后再将其导入到MATLAB中参与矩阵运算.那么下面小编教你怎么将Excel数据导入MATLAB中. 将 ...

  2. PHP支付宝微信个人免签即时到帐接口开发实例

    PHP支付宝微信个人免签即时到帐接口开发实例,使用原生支付宝即时到帐接口修改而来,即可实现多接口收款功能,开发只需要按照支付宝即时到帐接口开发即可,减少开发难度 需要修改的文件:notify_url. ...

  3. 转:[Asp.net]常见数据导入Excel,Excel数据导入数据库解决方案,总有一款适合你!...

    引言 项目中常用到将数据导入Excel,将Excel中的数据导入数据库的功能,曾经也查找过相关的内容,将曾经用过的方案总结一下. 方案一 NPOI NPOI 是 POI 项目的 .NET 版本.POI ...

  4. vb.net datagridview数据批量导入sql_导入:Java实现大批量数据导入导出(100W以上)

    阅读文本大概需要3分钟. 来源:https://www.cnblogs.com/barrywxx/p/10700221.html 最近业务方有一个需求,需要一次导入超过100万数据到系统数据库.可能大 ...

  5. Excel百万数据导入oracle,excel表数据导入oracle的方法!(超级有用)

    excel表导入oracle数据库的方法,这些方法也可以用于将其它格式的数据导入到oracle中,这里只是以excel为例.oracle9i以上.21村落‑i3?:L L4s9U#[z:u,U‑l方法 ...

  6. mysql 导入导出 优化_mysql数据导入导出与数据表优化

    一.数据导入 mysqlimport -uroot oa d:/aa.txt --fields-terminated-by=, --fields-optionally-enclosed-by= --l ...

  7. mysql数据万能导入工具下载_mysql数据导入工具下载 - 数据导入工具(EMS Data Export for MySQL) v3.7.0多语特别版下载 - 第九软件网...

    EMS Data Export for MySQL多语特别版是一款交叉平台的数据库导入工具,可以快速地从MS Excel 97-2007, MS Access, DBF, XML, TXT, CSV, ...

  8. mysql 导入dbm文件_DBM数据导入到mysql数据库方法

    本文章分享一篇关于DBM数据导入到mysql数据库方法,有需要的同学可以参考一下本实例. 首先说明一下,我以前使用PERL,保存文件 用DBM,有5万多条记录,每条记录有15个字段.现在想用MYSQL ...

  9. navcat导入mysql bak_navcat excel数据导入mysql的方法

    navcat excel数据导入mysql的方法 先navcat导出 xls格式 然后把数据复制到往这个xls里 (按照这个xls格式) 然后导入mysql就行了 如果导入的过程无法识别excel里的 ...

最新文章

  1. 活动总结丨企业参访:特斯联科技集团有限公司
  2. C++STL 常用 函数 用法
  3. 小工匠聊架构-超高并发秒杀系统设计 04_流量削峰设计
  4. 有个名字叫随便乱记——css3
  5. JfreeChart(八)之甘特图
  6. 成为Java流大师–第5部分:将联接的数据库表转换为流
  7. pycharm 无法import PIL
  8. Maven实现热部署需要的依赖
  9. 一汽大众汽车宣布召回19.1万辆国产奥迪A6L
  10. python数据结构与算法 pdf_『python核心编程pdf』数据结构与算法 Python语言描述
  11. 现代opengl 设计 assimp 3D 模型加载库
  12. 逆向分析学习入门教程
  13. FXP登录Linux报错
  14. 解决训练时显存不断增大问题
  15. 建设内链要注意的事项
  16. 阿里云的专业技术认证分为哪些?为啥要获得阿里云的ACP认证!
  17. 年度征文 | 回顾2022,展望2023(我难忘的2022,我憧憬的2023)
  18. 从northwind中查询Products中最高单价(UnitPrice)是多少;
  19. 使用新版FLIR (FLIR_ADAS_v2) 训练Faster RCNN模型
  20. 手机变速齿轮_变速齿轮神途官方版下载-变速齿轮神途手游官方版下载 v2.20190828-114手机乐园...

热门文章

  1. Linux下通过iscsi搭建共享存储
  2. linux查看GPU配置
  3. 【JS实战】添加元素(开头添加)
  4. 浅谈模糊C均值聚类(Fuzzy C-means Clustering)
  5. PCL点云库学习笔记(3):点云的欧式聚类
  6. 实现Excel行插入行删除特殊处理,单元格合并及动态条件单元格公式自动计算功能的VBA 宏示例
  7. Fastcgi、CGI 是什么及区别
  8. 物联卡停用和停机有什么区别
  9. 如何给视频添加特效?快速制作特效视频
  10. C++ 教程(21)——数据结构