使用API创建AR 贷项通知单
DECLARE
--8000000063
l_dummy varchar2(240);
l_customer_trx_id ra_customer_trx.customer_trx_id%type;
l_line_credits_flag ra_cm_requests.line_credits_flag%type;
l_line_amount number;
l_freight_amount number := 0;
l_cm_lines_tbl arw_cmreq_cover.cm_line_tbl_type_cover;
l_cm_reason_code varchar2(150);
l_comments varchar2(150); l_msg_count number := 0;
l_msg_data varchar2(20000) := null;
l_return_status varchar2(1);
l_request_id NUMBER;
l_batch_source_name varchar2(150) default null; cm_trx_id number; BEGIN -- c. Set the applications and org context
fnd_global.apps_initialize(1110,50683,222); mo_global.init('AR');
mo_global.set_policy_context('S',121); -- d. provide CUSTOMER_TRX_ID of the invoice to credit
l_customer_trx_id := 165023; l_comments := 'Demo for Create_Request API'; -- e. Populate Batch Source information
l_batch_source_name := 'OM前受'; -- f. the presence of l_cm_lines_tbl indicates this is a LINE-LEVEL credit
-- details for (1) are credits against line #1 identified by customer_trx_line_id = 824472
l_cm_lines_tbl(1).customer_trx_line_id := 403228;
l_cm_lines_tbl(1).quantity_credited := null;
l_cm_lines_tbl(1).price := null;
l_cm_lines_tbl(1).extended_amount := -151000; -- details for (2) are credits against line #2 identified by customer_trx_line_id = 824473
--l_cm_lines_tbl(2).customer_trx_line_id := 824473;
--l_cm_lines_tbl(2).quantity_credited := -2;
--l_cm_lines_tbl(2).price := 2000.00;
--l_cm_lines_tbl(2).extended_amount := -4000.00; -- g. call CREATE_REQUEST
AR_CREDIT_MEMO_API_PUB.CREATE_REQUEST(
P_API_VERSION => 1.0,
P_INIT_MSG_LIST => FND_API.G_TRUE,
P_COMMIT => FND_API.G_FALSE,
P_VALIDATION_LEVEL => FND_API.G_VALID_LEVEL_FULL,
P_CUSTOMER_TRX_ID => l_customer_trx_id,
P_LINE_CREDIT_FLAG => 'Y',
P_CM_REASON_CODE => 'RETURN',
P_CM_LINE_TBL => l_cm_lines_tbl,
P_SKIP_WORKFLOW_FLAG => 'Y',
P_CREDIT_METHOD_INSTALLMENTS => null,
P_CREDIT_METHOD_RULES => null,
P_BATCH_SOURCE_NAME => l_batch_source_name,
P_ORG_ID => 121,
X_REQUEST_ID => l_request_id,
X_RETURN_STATUS => l_return_status,
X_MSG_COUNT => l_msg_count,
X_MSG_DATA => l_msg_data); -- h. return information about the status of the API run
FND_MSG_PUB.count_and_get (
p_encoded => FND_API.g_false,
p_count => l_msg_count,
p_data => l_msg_data ); dbms_output.put_line('Return Status ==> '||l_return_status);
dbms_output.put_line('Credit Memo request_id ==> '||l_request_id);
dbms_output.put_line('l_msg_count ==> '||l_msg_count); -- i. display messages from the message stack
FOR I IN 1..L_MSG_COUNT LOOP
DBMS_OUTPUT.PUT_LINE(SUBSTR(FND_MSG_PUB.GET(P_MSG_INDEX => I, P_ENCODED => 'F'), 1, 254));
END LOOP; IF l_return_status <> 'S' THEN
NULL;
ELSE
select cm_customer_trx_id
into cm_trx_id
from ra_cm_requests_all
where request_id = l_request_id; dbms_output.put_line(' CM trx_id = '|| cm_trx_id );
-- You can issue a COMMIT; at this point if you want to save the created credit memo to the database
END IF; EXCEPTION
WHEN OTHERS THEN
dbms_output.put_line('exception error!');
dbms_output.put_line(substr(sqlerrm, 1, 80));
fnd_message.retrieve(l_dummy);
dbms_output.put_line(l_dummy);
END;
參考文档:
Oracle Receivables Credit Memo API: Setup and Sample Scripts (Doc ID 1272600.1)
使用API创建AR 贷项通知单的更多相关文章
- Oracle EBS AR 贷项通知单核销取值
SELECT cm.trx_number ,fnd_flex_ext.get_segs('SQLGL', 'GL#', gcc.chart_of_accounts_id, ad.code_combin ...
- Oracle EBS AP 创建贷项通知单并核销到相应发票
--1.0 生成与发票一样的贷项通知单 created by jenrry 20170423 DECLARE L_CUSTOMER_TRX_ID NUMBER; L_INVOICE_NUMBER VA ...
- Oracle EBS 贷项通知单核销
SELECT cm.trx_number ,fnd_flex_ext.get_segs('SQLGL', 'GL#', gcc.chart_of_accounts_id, ad.code_combin ...
- SharePoint REST API - 列表和列表项
博客地址:http://blog.csdn.net/FoxDave 本篇主要讲述如何用SharePoint REST操作列表和列表项.阅读本篇时请先了解前面讲述的REST介绍和基本操作. 废话不多 ...
- ASP.NET---如何使用web api创建web服务
1 首先创建asp.net web空项目,并且创建模拟数据,我在工程下面创建了一个Models文件夹,在文件夹Nodels下面创建类Product和Repository 具体如下: [Serializ ...
- TFS API : 四、工作项查询
TFS API : 四.工作项查询 本节将讲述如何查询工作项,将用户统计数据. 使用WorkItemStore.Query方法进行查询工作项,其使用的语法和SQL语法类似: Select [标题] f ...
- 使用Azure REST API创建虚拟机
Hollis Yao, Shihao Rong 使用REST API创建虚拟机之前,首先要确保Azure订阅中已经建好了"云服务"和"存储账号".如果没有的话 ...
- 使用hbase的api创建表时出现的异常
/usr/lib/jvm/java-7-openjdk-amd64/bin/java -Didea.launcher.port=7538 -Didea.launcher.bin.path=/usr/l ...
- (译)iPhone: 用公开API创建带小数点的数字键盘 (OS 3.0, OS 4.0)
(译)iPhone: 用公开API创建带小数点的数字键盘 (OS 3.0, OS 4.0) 更新:ios4.1现在已经将这个做到SDK了.你可以设置键盘类型为UIKeyboardTypeDecimal ...
随机推荐
- 【Unity Shaders】使用CgInclude让你的Shader模块化——Unity内置的CgInclude文件
本系列主要參考<Unity Shaders and Effects Cookbook>一书(感谢原书作者),同一时候会加上一点个人理解或拓展. 这里是本书全部的插图. 这里是本书所需的代码 ...
- hdu 2082 生成函数
主题链接:http://acm.hdu.edu.cn/showproblem.php?pid=2082 找单词 Time Limit: 1000/1000 MS (Java/Others) Me ...
- 计算机本科/硕士找offer的总结 节选
在这样的目标定位下,我的求职历程从2006年10月8日开始,到2007年1月10日正式结束,一共持续了3个月的时间.整个过程可以分为三个阶段:第一阶段:2006年10月份 找工作刚刚开始的阶段,什么都 ...
- CSS之box-sizing的用处简介
前几天才发现有 box-sizing 这么个样式属性.研究了一番感觉非常有意思, 通过指定容器的盒子模型类型,达到不同的展示效果 比如:当一个容器宽度定义为 width:100%; 之后.假设再添加 ...
- Visual Studio跨平台开发实战(3) - Xamarin iOS多页面应用程式开发
原文 Visual Studio跨平台开发实战(3) - Xamarin iOS多页面应用程式开发 前言 在前一篇教学中, 我们学会如何使用Visual Studio 搭配Xcode 进行iOS基本控 ...
- Xamarin 安装步骤
原文:Xamarin 安装步骤 1.下载并解压吾乐吧软件站提供的“Mono for Android 离线包” 安装:jdk-6u45-windows-i586.exe (就算你是64位系统,也要安装i ...
- cocos2d-x: 33种切换场景
[1]:CCTransitionCrossFade::create(时间,目标场景); //慢慢淡化到还有一场景 [2]:CCTransitionFade::create(时间,目标场景); //本场 ...
- C#新DataColumn类Type生成的方法类型参数
DataColumn有的需要等级Type构造类型的参数,如以下: // // 摘要: // 使用指定列名称和数据类型初始化 System.Data.DataColumn 类的新实例. // // 參数 ...
- IOS设计模式学习(21)享元
1 前言 在面向对象软件设计中,利用公共对象不仅能节省资源还能提高性能.共享的对象只能提供某些内在的信息,而不能用来识别对象.专门用于设计可共享对象的一种设计模式叫做享元模式(Flyweight pa ...
- android实现应用程序仅仅有在第一次启动时显示引导界面
概述 SharedPreferences的使用很easy,可以轻松的存放数据和读取数据.SharedPreferences仅仅能保存简单类型的数据,比如,String.int等.通常会将复杂类型的数据 ...