我们通过PO接口表导入PO数据程序如下,可以导入成功,
但是用户要求,通过接口表导入后,PO直接提交到指定的审批路径,即导入后PO的状态为in process.

我有两个问题:  
1. 提交PO导入请求时:Import Standard Purchase Orders 时有四个参数:1) Default Buyer 2)Create or Update Item 3) Approval status 4) Batch id
由于Approval status:只有三个状态:incomplete, approved, initiate incomplete, 请问各位大侠有没有办法,使通过接口表导入的PO变成in process状态.

2. 如果导入的PO中有某个ITEM,系统中不存在,请问系统怎样自动创建, 我发现在接交Import Standard Purchase Orders 时有一个参数:Create or Update Item 选Y但系统并不会自动创建ITEM.

导入的SQL如下:

/* Formatted on 2009/03/09 10:25 (Formatter Plus v4.8.8) */
/* 自动生成PO号的导入*/

DECLARE
   header_seq   NUMBER;
   line_seq     NUMBER;
   dis_seq      NUMBER;

/* Basic data*/
   CURSOR c1
   IS
      SELECT DISTINCT a.batch_id, a.action, a.process_code, a.po_type,
                      a.REFERECNCE_NUM, a.currency_code, pv.vendor_id,
                      pvsa.vendor_site_id, hlat.location_id ship_to_location_id, a.org_id
              FROM zhopl.oplk_po_input_temp a,
                      inv.mtl_system_items_b msib,
                      po.po_vendors pv,
                      po.po_vendor_sites_all pvsa,
                      hr_locations_all_tl hlat
                WHERE a.item = msib.segment1
                  AND DECODE (a.org_id, 6, 8,25,26,2,4,67,68,87,88) = msib.organization_id
                  AND a.vendor = pv.vendor_name
                  AND a.site_code = pvsa.vendor_site_code
                  AND hlat.location_code=a.ship_to
             ORDER BY a.REFERECNCE_NUM;

/* The data to import into po_line_temp table*/
   CURSOR c2
   IS
      SELECT   a.REFERECNCE_NUM, a.line_num, a.shipment_num, msib.inventory_item_id,
               a.uom unit_of_measure, a.qty, a.unit_price, a.promised_date,
               hlat.location_id ship_to_location_id, 'NA' line_attribute4
          FROM zhopl.oplk_po_input_temp a, inv.mtl_system_items_b msib,hr_locations_all_tl hlat
         WHERE a.item = msib.segment1 AND msib.organization_id = 8
                AND hlat.location_code=a.ship_to
      ORDER BY a.REFERECNCE_NUM, a.line_num;

/*The data to import into po_distributinn_temp table */
   CURSOR c3
   IS
      SELECT   a.REFERECNCE_NUM, a.line_num, a.shipment_num, a.qty,
               1002 charge_account_id, 8 destination_organization_id
          FROM zhopl.oplk_po_input_temp a
      ORDER BY a.REFERECNCE_NUM, a.line_num, a.shipment_num;

/* The data to import po_headers_interface*/
   CURSOR c4
   IS
      SELECT *
        FROM zhopl.oplk_po_header_iface_temp;

/*The data to import po_lines_interface*/
   CURSOR c5 (po_num VARCHAR2)
   IS
      SELECT   *
          FROM zhopl.oplk_po_line_iface_temp
         WHERE REFERECNCE_NUM = po_num
      ORDER BY REFERECNCE_NUM, line_num, shipment_num;

/*The data to import po_distributions_interface*/
   CURSOR c6 (kpo_num VARCHAR2, kline_num NUMBER, kshipment_num NUMBER)
   IS
      SELECT   *
          FROM zhopl.oplk_po_distribution_temp
         WHERE REFERECNCE_NUM = kpo_num
           AND line_num = kline_num
           AND shipment_num = kshipment_num
      ORDER BY REFERECNCE_NUM, line_num, shipment_num, distribution_num;
BEGIN
   DELETE FROM zhopl.oplk_po_header_iface_temp;

DELETE FROM zhopl.oplk_po_line_iface_temp;

DELETE FROM zhopl.oplk_po_distribution_temp;

DELETE FROM po_headers_interface;

DELETE FROM po_lines_interface;

DELETE FROM po_distributions_interface;

COMMIT;

/* BEGIN  INSERT RECORDS INTO TEMPORARY PO HEADER IFACE TABLE*/
   FOR r1 IN c1
   LOOP
      INSERT INTO zhopl.oplk_po_header_iface_temp
                  (batch_id, action, process_code, document_type_code,
                   REFERECNCE_NUM, currency_code, vendor_id,
                   vendor_site_id, ship_to_location_id, org_id
                  )
           VALUES (r1.batch_id, r1.action, r1.process_code, r1.po_type,
                   r1.REFERECNCE_NUM, r1.currency_code, r1.vendor_id,
                   r1.vendor_site_id, r1.ship_to_location_id, r1.org_id
                  );
   END LOOP;

/* BEGIN INTER RECORDS INTO  TEMPORARY PO LINE IFACE TABLE*/
   FOR r2 IN c2
   LOOP
      INSERT INTO zhopl.oplk_po_line_iface_temp
                  (REFERECNCE_NUM, line_num, shipment_num,
                   item_id, unit_of_measure, quantity,
                   unit_price, promised_date, ship_to_location_id,
                   line_attribute4
                  )
           VALUES (r2.REFERECNCE_NUM, r2.line_num, r2.shipment_num,
                   r2.inventory_item_id, r2.unit_of_measure, r2.qty,
                   r2.unit_price, r2.promised_date, r2.ship_to_location_id,
                   r2.line_attribute4
                  );
   END LOOP;

/*BEGIN INSERT RECORDS INTO TEMPORARY PO DISTRIBUTION TABLE*/
   FOR r3 IN c3
   LOOP
      INSERT INTO zhopl.oplk_po_distribution_temp
                  (REFERECNCE_NUM, line_num, distribution_num,
                   quantity_ordered, charge_account_id,
                   destination_organization_id, shipment_num
                  )
           VALUES (r3.REFERECNCE_NUM, r3.line_num, 1,
                   r3.qty, r3.charge_account_id,
                   r3.destination_organization_id, r3.shipment_num
                  );
   END LOOP;

COMMIT;

/* BEGIN INPUT PO_HEADERS_INTERFACE TABLE */
   FOR r4 IN c4
   LOOP
      SELECT po.po_headers_interface_s.NEXTVAL
        INTO header_seq
        FROM DUAL;

INSERT INTO po.po_headers_interface
                  (batch_id, interface_header_id, action, document_type_code,
                   process_code, reference_num, vendor_id,
                   vendor_site_id, currency_code,
                   ship_to_location_id, org_id
                  )
           VALUES (r4.batch_id, header_seq, r4.action, r4.document_type_code,
                   r4.process_code, r4.REFERECNCE_NUM, r4.vendor_id,
                   r4.vendor_site_id, r4.currency_code,
                   r4.ship_to_location_id, r4.org_id
                  );

/*BEGIN INSERT RECORDS INTO PO_LINES_INTERFACE TABLE */
      FOR r5 IN c5 (r4.REFERECNCE_NUM)
      LOOP
         SELECT po.po_lines_interface_s.NEXTVAL
           INTO line_seq
           FROM DUAL;

INSERT INTO po.po_lines_interface
                     (interface_line_id, interface_header_id, line_num,
                      item_id, unit_of_measure, quantity,
                      unit_price, ship_to_location_id, shipment_num,
                      promised_date, line_attribute4,line_attribute5,line_attribute6
                      ,line_attribute7,line_attribute8,line_attribute9,line_attribute10
                      ,line_attribute11
                     )
              VALUES (line_seq, header_seq, r5.line_num,
                      r5.item_id, r5.unit_of_measure, r5.quantity,
                      r5.unit_price, r5.ship_to_location_id, r5.shipment_num,
                      r5.promised_date, r5.line_attribute4,r5.line_attribute4,
                      r5.line_attribute4,r5.line_attribute4,r5.line_attribute4
                      ,r5.line_attribute4,r5.line_attribute4,r5.line_attribute4                     
                     );

/*BEGIN INSERT RECORDS INTO PO_DISTRIBUTIONS_INTERFACE TABLE */
         FOR r6 IN c6 (r5.REFERECNCE_NUM, r5.line_num, r5.shipment_num)
         LOOP
            SELECT po.po_distributions_interface_s.NEXTVAL
              INTO dis_seq
              FROM DUAL;

INSERT INTO po_distributions_interface
                        (interface_header_id, interface_line_id,
                         interface_distribution_id, distribution_num,
                         quantity_ordered, charge_account_id,
                         destination_organization_id
                        )
                 VALUES (header_seq, line_seq,
                         dis_seq, r6.distribution_num,
                         r6.quantity_ordered, r6.charge_account_id,
                         r6.destination_organization_id
                        );
         END LOOP;
      END LOOP;
   END LOOP;

COMMIT;
END;

转载于:https://www.cnblogs.com/songdavid/articles/2091864.html

通过PO接口表导入PO数据相关推荐

  1. oracle expense po,ORACLE ERP中PO/INV/AP/GL流程对应那些关键基表、接口表?

    ORACLE ERP中PO/INV/AP/GL流程对应那些关键基表.接口表? 这个要看你用的哪一种ERP,如果是EBS,接口表参考如下信息: AP接口表: AP_INVOICES_INTERFACE ...

  2. Harbor集成Clair镜像安全扫描并手动导入漏洞数据

    通过这篇文章,你会了解到: harbor启停方法 clair镜像扫描原理 harbor数据库(MySQL)一览 clair数据库(PostgreSql)一览 harbor手动导入漏洞数据方法 背景 先 ...

  3. oracle 删除po查询,Oracle EBS:PO 常用的查询及Tips

    1.列出没有销售订单的内部采购订单 ---used to list all Internal Requisitions that do not have an  associated Internal ...

  4. R12 AR INVOICE 接口表导入

    Purpose 本文介绍了如何通过AR接口表进行AR事务处理(亦称AR发票)导入. Applies To version 12.1.3 本文中代码基于12.1.3测试通过. Abstract orac ...

  5. sqlmap使用_sqlmap从入门到精通第四章47使用EW代理导出和导入MSSQL数据

    4.7 使用EW代理导出和导入MSSQL数据 一般的场景就是目标站点获取了webshell,然后数据库的IP地址不在目标站的本地,而且做了精准的访问控制,只允许目标站点的IP地址才能访问数据库,那么这 ...

  6. 转载-SQL Server各种导入导出数据方式的比较

    注:本文转载自 http://blog.csdn.net/nokiaguy/article/details/4684822 当我们建立一个数据库时,并且想将分散在各处的不同类型的数据库分类汇总在这个新 ...

  7. mysql如何导入JSON数据-navigate管理数据库,导入JSON数据不显示。需要整体关闭再打开!

    1,选中数据,右键.选择导入: 2,选择你要导入的文件格式.[这里我选择的是json] 3.下一步.选择你要导入的文件 [可以多选点,但是选择过多.好像直接崩溃啦.所以,适量即可!] 关于编码,如果选 ...

  8. txt 导入 mysql python_Python导入txt数据到mysql的方法

    本文实例讲述了Python导入txt数据到mysql的方法.分享给大家供大家参考.具体分析如下: 从TXT文本转换数据到MYSQL数据库,接触一段时间python了 第一次写东西 用的是Python2 ...

  9. python绘制动态图表怎么存下来_用python如何实现导入excel数据后自动生成图表?python如何实现交互式动态图表?...

    这个需求涉及的环节太多了.导入excel文件,获取数据 -- 需要xlrd模块把数据导入python 2. 设定输出图表类型 -- 需要matplot模块.根据数据复杂度,可能需要ETL,那么需要pa ...

最新文章

  1. [翻译] WPAttributedMarkup
  2. 杭电多校第四场-H- K-th Closest Distance
  3. Linux Linux程序练习十二(select实现QQ群聊)
  4. knot in ship
  5. python中形参*args和**kwargs简述
  6. 量子信息与量子计算_量子计算为23美分。
  7. 哈佛第二、哥大第三,第一还是它!2020USNews美国大学排名发布!
  8. bzoj2242 [SDOI2011]计算器 exgcd+ksm+bsgs
  9. Keras——用Keras搭建自编码神经网络(AutoEncoder)
  10. Eclipse中快速使代码对齐?1张图搞定!
  11. C++11 之for 新解
  12. pdf在线免费去水印 以及图片去水印 方法
  13. Vue 上传图片裁剪
  14. 英文期刊催稿信模板_SCI论文催稿信模板
  15. 笔记本计算机声音小,笔记本电脑没声音小喇叭不见了怎么恢复电脑
  16. Angular中nz-select实现两个选择框互相关联
  17. 农夫过河问题 matlab,趣味英语:农夫过河问题
  18. SCS【9】单细胞转录组之构建细胞轨迹 (Monocle 3)
  19. 网页自动添加qq好友
  20. 从花样百出的双十一看产品运营

热门文章

  1. 由canvas实现btn效果有感
  2. MacOS下安装Grafana、InfluxData、telegraf
  3. 马哥Linux2016最新高薪运维视频课程
  4. Appium+Robotframework实现Android应用的自动化测试-3:一个必不可少的工具介绍
  5. mysql配置文件参数详解 my.cnf
  6. 深入理解JVM(重要)
  7. NLP --- 最大熵模型的解法(GIS算法、IIS算法)
  8. 机器学习--支持向量机实战(三)完整版SMO算法实现
  9. linux压缩比,Linux下各压缩方式测试(压缩率和使用时间)
  10. python进阶与数据操控_python进阶(mysql:表操作、数据操作、数据类型)(示例代码)...