目的:使用程序动态创建账户组合。如果账户组合存在的话,返回存在的ID,不存在的话就动态创建账户组合并返回id。

实现步骤:

1. 得到账簿的CHART_OF_ACCOUNTS_ID

2. 得到账户弹性域分隔符

3. 调用标准的API得到账户组合id

具体实现如下:

1. 得到账簿的CHART_OF_ACCOUNTS_ID实现code:

SELECT sob.chart_of_accounts_id
INTO l_id_flex_num
FROM financials_system_params_all fsp, gl_sets_of_books sob
WHERE org_id = p_org_id
AND sob.set_of_books_id = fsp.set_of_books_id;

2. 得到账户弹性域分隔符实现code:

SELECT concatenated_segment_delimiter
INTO l_segment_delimiter
FROM fnd_id_flex_structures
WHERE application_id = 101
AND id_flex_code = 'GL#'
AND id_flex_num = l_id_flex_num;

3. 调用标准的API得到账户组合id实现code:

l_concatenated_segments := l_segment1 || l_segment_delimiter ||
p_segment2 || l_segment_delimiter ||
p_segment3 || l_segment_delimiter ||
l_segment4 || l_segment_delimiter ||
l_segment5 || l_segment_delimiter ||
l_segment6 || l_segment_delimiter ||
l_segment7 || l_segment_delimiter ||
l_segment8 || l_segment_delimiter ||
l_segment9 || l_segment_delimiter ||
l_segment10 || l_segment_delimiter ||
l_segment11 || l_segment_delimiter ||
l_segment12 || l_segment_delimiter ||
l_segment13 || l_segment_delimiter ||
l_segment14 || l_segment_delimiter ||
l_segment15 || l_segment_delimiter ||
l_segment16 || l_segment_delimiter ||
l_segment17 || l_segment_delimiter ||
l_segment18 || l_segment_delimiter ||
l_segment19 || l_segment_delimiter ||
l_segment20 || l_segment_delimiter ||
l_segment21 || l_segment_delimiter ||
l_segment22 || l_segment_delimiter ||
l_segment23 || l_segment_delimiter ||
l_segment24 || l_segment_delimiter ||
l_segment25 || l_segment_delimiter ||
l_segment26 || l_segment_delimiter ||
l_segment27 || l_segment_delimiter ||
l_segment28 || l_segment_delimiter ||
l_segment29 || l_segment_delimiter ||
l_segment30 || l_segment_delimiter;
l_gcc_account_id := apps.fnd_flex_ext.get_ccid(application_short_name => 'SQLGL',
key_flex_code => 'GL#',
structure_number => l_id_flex_num,
validation_date => to_char(SYSDATE,
apps.fnd_flex_ext.DATE_FORMAT),
concatenated_segments => x_concatenated_seg);
fnd_file.PUT_LINE(fnd_file.log,
'l_gcc_account_id:' || l_gcc_account_id);
IF l_gcc_account_id = 0 THEN
RETURN NULL;
END IF;

注意      :如果账户ID返回0,表示没有创建成功。

错误原因:传入的参数不正确或者账户组合没有通过验证。

EBS动态创建账户组合实现的更多相关文章

  1. EBS WEBADI导入日记账 客户化账户组合规则校验

    近期项目需求对EBS中WEBADI导入日记账时,在加载数据时需要对账户组合额外进行客户化的校验,需要能够做到将校验结果体现在WEBADI模板的数据上,并且对每条错误数据都单独报错. 项目上的方案是调整 ...

  2. Android 动态创建Fragment

    Fragment是activity的界面中的一部分或一种行为.可以把多个Fragment组合到一个activity中来创建一个多界面并且可以在多个activity中重用一个Fragment.可以把Fr ...

  3. 《项目经验》--后台一般处理程序向前台JS文件传递JSON,JS解析JSON,将数据显示在界面--显示在DropDownList 或 显示在动态创建的table中

    http://blog.csdn.net/mazhaojuan/article/details/8599167 先看一下我要实现的功能界面: 这篇文章主要介绍:后台一般处理程序把从数据库查找的数据,转 ...

  4. Linux下通过shell脚本创建账户

    当我们在linux平台上开发一些项目时,或者有一些项目是需要部署到linux系统上时,有时候会涉及到linux上的特定的账户,例如有一些项目需要运行在某些特定的账户下,或者有时候需要在全新的环境上搭建 ...

  5. 根据ccid取得账户,更改某段值再创建账户,返回新的ccid

    CREATE OR REPLACE PACKAGE cux_cuxaprebate_utl IS * =============================================== * ...

  6. [UE4]使用C++重写蓝图,SpawnObject根据类型动态创建UObject

    先大量使用蓝图制作项目,后续再用C++把复杂的蓝图重写一遍,用C++代码按照蓝图依葫芦画瓢就可以了,很简单,但需要遵守一些原则: 第一种方法:使用继承 一.创建一个C++类作为蓝图的父类(C++类继承 ...

  7. mfc 动态创建EDIT控件

    知识点: CWnd::Create CWnd::CreateEx Spy++工具 动态创建控件 一. CWnd::Create 参数 virtual BOOL Create( LPCTSTR lpsz ...

  8. ASP.NET实现二维码 ASP.Net上传文件 SQL基础语法 C# 动态创建数据库三(MySQL) Net Core 实现谷歌翻译ApI 免费版 C#发布和调试WebService ajax调用WebService实现数据库操作 C# 实体类转json数据过滤掉字段为null的字段

    ASP.NET实现二维码 using System;using System.Collections.Generic;using System.Drawing;using System.Linq;us ...

  9. OAF 动态创建组件以及动态绑定属性

    在开发中,我们遇到以下一个需求. 一个表格左侧有5列是固定存在的,右侧有N列是动态生成的,并且该N列中第一列可输入,第二列是不可编辑的,但是是数字,如果小于0,那么就要显示为红色,重点标识出来. 首先 ...

随机推荐

  1. SQL Server 排名函数实现

    在SQL Server 中有四大排名函数分别是: 1.row_number() 2.ntile() 3.rank() 4.dense_rank() -------------------------- ...

  2. :last-child的诡异的问题!!

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  3. VS2010/MFC对话框:向导对话框的创建及显示

    向导对话框的创建及显示 本节将为大家演示如何创建向导对话框. 仍然以前面的“加法计算器”的例子为基础,在其中加入向导对话框,我们可以用它来说明加法计算器的使用方法,一步一步引导用户操作,这也是比较常见 ...

  4. 使用ssh无密码登录

    使用ssh无密码登录 ssh 是一个专为远程登录会话和其他网络服务提供安全性的协议.默认状态下ssh链接是需要密码认证的,可以通过添加系统认证(即公钥-私钥)的修改,修改后系统间切换可以避免密码输入和 ...

  5. 度小于所述过程:es.exe

    在防火墙管理,见未知的过程"es.exe" 程序信息: watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvdGVzdGNzX2Ru/font ...

  6. iOS设计模式——单例模式

    单例模式用于当一个类只能有一个实例的时候, 通常情况下这个“单例”代表的是某一个物理设备比如打印机,或是某种不可以有多个实例同时存在的虚拟资源或是系统属性比如一个程序的某个引擎或是数据.用单例模式加以 ...

  7. SDK无法更新

    http://jingyan.baidu.com/article/da1091fbd232fe027949d653.html

  8. MD5随机散列加密算法

    项目中需要在登录验证用户名.密码的时候对密码进行加密处理,由于是比较商业化的软件,所以安全方面还是必须要考虑的.而使用MD5随机散列加密算法使得密码加密后不可逆,很大程度上提升了安全性.废话不多说,看 ...

  9. 支持iOS9 Universal links遇到的问题

    记录为iOS9上的APP支持Universal links遇到的一些问题. 在Web服务器上传apple-app-site-association文件 必须支持HTTPS获取配置文件 文件名后不加.j ...

  10. 用js捕捉鼠标连续点击三次事件怎么实现啊

    var count = 0, timer; document.onclick = function(){ if(count < 2){ if(timer){ clearTimeout(timer ...