oracle ebs 采购订单关闭之PL/SQL实现方法
应客户需求,需要写个脚本,批量关闭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_
相关文档:
Oracle函数和mysql函数比较
1. Oracle中的to_number()转换成数字;
Oracle> Select to_number(‘123’) from dual; ----- 123;
&nbs ......
MySQL Data Type
Oracle Data Type
BIGINT
NUMBER(19, 0)
BIT
RAW
BLOB
BLOB, RAW
CHAR
CHAR
DATE
DATE
DATETIME
DATE
DECIMAL
FLOAT (24)
DOUBLE
FLOAT (24)
DOUBLE PRECISION
FLOAT (24)
ENUM
VARCHAR2
FLOAT
FLOAT
INT
NUMBER(10, 0)
INTEGER
NUMBER(10, 0)
LONGBLOB
BLOB, RAW
LONGTEX ......
mysql 大对象存取:
类型一般应该用mediumblod,
blob只能存2的16次方个byte,
mediumblod是24次方,
一般来说够用了.longblob是32次方有些大.
MYSQL默认配置只能存1M大小的文件,要修改配置,WIN版本的在mysql.ini文件中
修改max_allowed_packet,net_buffer_length等几个参数,或直接SET GLOBAL va ......
SQLServer和Oracle的常用函数对比
1.绝对值
S:select abs(-1) value
O:select abs(-1) value from dual
2.取整(大)
S:select ceiling(-1.001) value
O:select ceil(-1.001) value from dual
3.取整(小)
S:select floor(-1.001) value
O:select floor(-1.001) valu ......
oracle表空间操作详解
1
2
3作者: 来源: 更新日期:2006-01-04
5
6
7建立表空间
8
9CREATE TABLESPACE data01
10DATAFILE '/ora ......