应客户需求,需要写个脚本,批量关闭Bonus Item类型的采购订单,在metalink上搜索到一些方法,但是都测试不通。原来需要将代码生成一个并发程序。下面是测试成功的代码。

1.首先创建一个存储过程,然后在存储过程中调用PO_ACTIONS.CLOSE_PO
2.注册一个存储过程类型的并发程序
3.在application中测试结果。

CREATE OR REPLACE PROCEDURE xx_po_close
  (
    err_buff OUT VARCHAR2,
    retcode OUT NUMBER,
    p_reason_desc VARCHAR2,
    p_po_from VARCHAR2,
    p_po_to VARCHAR2)
AS
  l_return_code VARCHAR2(2000);
  l_result      BOOLEAN;
  CURSOR PO_CLOSE_CUR
  IS
     SELECT poh.segment1,
      poll.po_header_id ,
      poll.po_line_id   ,
      poll.line_location_id
       FROM po_line_locations_all poll,
      po_headers_all poh              ,
      po_lines_all pol
      WHERE poll.po_header_id          = poh.po_header_id
    AND poll.po_line_id                =pol.po_line_id
    AND pol.po_header_id               = poh.po_header_id
    AND upper(poh.authorization_status)='APPROVED'
    AND UPPER(poll.closed_code )='CLOSED FOR RECEIVING'
    AND (pol.unit_price                 =0 or poh.quantity_billed - poh.quantity >=0)
    AND poh.segment1 between p_po_from and p_po_to;
    
BEGIN
  FOR PO_CLOSE_REC IN PO_CLOSE_CUR
  LOOP
    l_result := po_actions.close_po(
    p_docid => PO_CLOSE_REC.po_header_id,
    p_doctyp => 'PO', 
    p_docsubtyp => 'STANDARD', 
    p_lineid => PO_CLOSE_REC.po_line_id, 
    p_shipid => PO_CLOSE_REC.line_location_id, 
    p_action => 'CLOSE', 
    p_reason => p_reason_desc, 
    p_calling_mode => 'PO', 
    p_conc_flag => 'N', 
    p_return_code => l_return_code, 
    p_auto_close => 'N', 
    p_action_date => SYSDATE, 
    p_origin_doc_id => NULL);
    
    IF l_result THEN
      FND_FILE.PUT_LINE( FND_FILE.OUTPUT,PO_CLOSE_REC.segment1 || ' is Closed. ');
    ELSE
      FND_FILE.PUT_LINE( FND_FILE.OUTPUT,PO_CLOSE_REC.segment1 || ' is not Closed. ');
    END IF;
    
  END LOOP;
END;

oracle ebs 采购订单关闭之PL/SQL实现方法的更多相关文章

  1. Oracle 11g oracle客户端(32位)PL/SQL develepment的安装配置

    Oracle 11g+oracle客户端(32位)+PL/SQL develepment的安装配置 之前一直想学Oracle,可是就是安装配置Oracle一直未成功,让人很苦恼,特别是什么监听器什么的 ...

  2. 不安装 oracle的客户,就可以使用pl/sql访问远程oracle 数据库的方法

    免安装Oracle客户端使用PL/SQL连接Oracle      大家都知道,用PL/SQL连接Oracle,是需要安装Oracle客户端软件的.有没要想过不安装Oracle客户端直接连接Oracl ...

  3. PL/SQL异常处理方法

    PL/SQL异常处理方法   1:什么是异常处理: PL/SQL提供一个功能去处理异常,在PL/SQL块中叫做异常处理,使用异常处理我们能够测试代码和避免异常退出. PL/SQL异常信息包含三个部分: ...

  4. Oracle EBS-SQL (PO-5):采购订单控制信息查询.sql

    select distinct pla.po_header_id, --pha.type_lookup_code, pha.segment1       采购订单号, appf.full_name   ...

  5. Oracle EBS 采购 接收入库 接口开发

    http://blog.itpub.net/25164132/viewspace-746657/ 接收入库是项目中会经常碰到的开发,这类开发一般来说比较简单,但是接收入库在Oracle中其实涉及到很多 ...

  6. oracle学习笔记(十七) PL/SQL高级应用

    PL/SQL高级应用 动态SQL 在PL/SQL中,不能直接执行DDL(create,alter,drop),得使用动态SQL,当然,除了DDL,动态SQL也可以执行DML(select,insert ...

  7. Windows 64位 安装Oracle instantclient 官方绿色版和PL/SQL Developer 总结

    原文: http://blog.csdn.net/kimsoft/article/details/8751267 操作系统:Windows 7 64位旗舰 要求,安装PL/SQL Developer用 ...

  8. [Oracle]Sqlplus连接成功,但pl/sql连接不成功,提示“ora-12145:无法解析指定的连接标识符”

    Oracle客户端安装成功后,使用Net Manager配置成功,测试服务成功.使用Sqlplus连接成功.但使用pl/sql developer连接总是提示“ora-12145:无法解析指定的连接标 ...

  9. 64位Win7安装+32位Oracle + PL/SQL 解决方法

    软件景象:64位win7.32位Oracle 10g. PL/SQL 9.0.4.1644 媒介:以前开辟用的都是32位体系,忽然换到64位上,安装景象真的有点麻烦了,尤其对于PL/SQL只支撑32位 ...

随机推荐

  1. php动态读取数据清除最右边距

    需求效果一行3栏: 场景模拟:同事给了我这么一段静态代码如下: <!DOCTYPE html> <html lang="en"> <head> ...

  2. EF不同查询方法生成的SQL比较

    var test1 = db.jj_RolesItem.Join(db.jj_SysItemsClass, m => m.ClassID, g => g.ClassID, (m, g) = ...

  3. linux 多个ssh key 登录远程主机

    登录A主机使用分配的sshkey需要指定特定的key,ssh -i  ~/.ssh/xxx_id_rsa_privatekey    username@host , 指定key后登录提示: Agent ...

  4. Maven-002-eclipse 插件安装及实例

    因为平常编码的时候,习惯了使用 eclipse 进行编码,因而需要将 eclipse 安装 maven 的插件,安装步骤如下所示: 一.安装 选择菜单: help -> Install New  ...

  5. echo 命令

    echo 命令 -n:表示不换行: -e:对特殊字符的解释执行,比如说变色: 例: [root@bogon ~]# echo -n "test"test[root@bogon ~] ...

  6. Installation of Theano on Windows

    http://deeplearning.net/software/theano/install_windows.html

  7. ionic一些常见问题及方法(网页链接式)

    ionic 进入二级目录以后隐藏底部导航栏(tabs) http://blog.csdn.net/shenshucong520/article/details/48287811ionic三级目录乃至多 ...

  8. 7z usecaes

    1. Archive without compressing 7z a -t7z -mx=0 OutputFilename InputFilename Descryption: a: command, ...

  9. Speed-BI数据分析案例:2016年8月汽车销量排行榜

    据中国汽车工业协会统计分析,2016年8月,乘用车市场表现较好,当月销量环比和同比均呈较快增长.1-8月,乘用车销量总体呈稳定增长,增幅比1-7月继续小幅提升.      8月,乘用车共销售179.5 ...

  10. HtmlAgilityPack教程

    解析html教程(重点) http://www.cnblogs.com/kissdodog/archive/2013/02/28/2936950.html 完整的教程 http://www.cnblo ...