1.首先在创建数据表时,添一个字段用来保存会计科目的ID。如:CODE_COMBINATION_ID

  2.在FORM相应的数据块增加两个ITEM,用来显示科目NUMBER与DESCRITION。

  例:GL_CODE_NUMBER、GL_CODE_DESC

  注 : ENABLE_LIST_LAMP是TEMPLATE模板自带的,无须手工去定义。 将GL_CODE_NUMBER项的LOV设成“ENABLE_LIST_LAMP”,数据库项设为“否”。 将 GL_CODE_NUMBER“从列表中验证”属性设成否。

  3.在Form Level 的WHEN-NEW-FORM-INSTANCE Trigger初始化弹性域

FND_KEY_FLEX.Define

    BLOCK => 'CUX_17_CST_MAPP_RULE_ALL',
    FIELD => 'ACCOUNTING',
    ID    => 'CODE_COMBINATION_ID',
    description=>'ACCOUNT_DES',
    APPL_SHORT_NAME => 'SQLGL',
    CODE => 'GL#',
    NUM  => '50470',--CHART_OF_ACCOUNTS_ID',
    REQUIRED => 'Y',
    VALIDATE => 'FULL',
    USEDBFLDS => 'N',
    DINSERT => 'Y',
    allownulls => 'N',
    query_security => 'Y',
    updateable => 'ALL',
    insertable => 'ALL',
     vrule     =>'\\nSUMMARY_FLAG\\nI\\n' || 
                           'APPL=SQLGL;NAME=GL_JE_SUMMARY_ACCOUNT\\nN\\0' ||
                           'GL_GLOBAL\\nDETAIL_POSTING_ALLOWED' ||
                           '\\nI\\n' ||
                          'APPL=SQLGL;NAME=GL_JE_POSTING_NOT_ALLOWED\\nY',
    where_clause => 'summary_flag <>''Y'''
);

4.可以在GL_CODE_NUMBER项的WHEN-VALIDATE-ITEM触发器中,对所选择的科目进行核查。

  IF : BlockName.CODE_COMBINATION_ID = -1 then

  fnd_message.debug('所选科目组合无效!');

  raise form_trigger_failure;

  end if;

2.根据会计科目取得CODE_COMBINATION_ID

http://blog.csdn.net/pan_tian/article/details/7535842

网上说当在第一步建表时,可以建一个字段作为外键,基于表GL_CODE_COMBINATIONS(CODE_COMBINATION_id),

这时当保存数据时,CODE_COMBINATION_ID会自动保存过来,不过我没试验成功。

我使用以下方法取得:

:CUX_17_CST_MAPP_RULE_ALL.CODE_COMBINATION_ID:=
                fnd_flex_ext.get_ccid(application_short_name => 'SQLGL',
                                             key_flex_code          => 'GL#',
                                            structure_number       => 50470,
                                             validation_date        => to_char(sysdate, 'YYYY/MM/DD HH24:MI:SS'),
                                          concatenated_segments  =>:CUX_17_CST_MAPP_RULE_ALL.ACCOUNTING);

其中concatenated_segments 参数格式为:'YBHN0.139999.6001100301.10000001.1013579.110101.0.0.0.0'

注意:如果表GL_CODE_COMBINATIONS中不存在所选组合,即不存在这个ID.就会新建一条纪录插入到表GL_CODE_COMBINATIONS中。

转:客制FORM调用会计科目弹性域/根据科目取得CODE_COMBINATION_ID的更多相关文章

  1. FORM开发之键性弹性域开发

    1.创建表时带有键弹性域字段 SUMMARY_FLAG VARCHAR2(1) , /* 必须有此字段 */ ENABLED_FLAG VARCHAR2(1) , /* 必须有此字段 */ START ...

  2. FORM开发之说明性弹性域开发

    1.注册使用弹性域的表,字段 注册表语法:ad_dd.register_table('所有者','表名','T自动扩展/S非自动扩展','下一区','自由','已使用') AD_DD.REGISTER ...

  3. OAF_OAF控件系列10 - Key Flexfield键值弹性域的实现(案例)

    2014-06-17 Created By BaoXinjian

  4. 转:FORM:客制化Form的菜单栏和右鍵菜單

    Oracle EBS还允许客制化Form的菜单栏. 用户最多可以定义45个form-level的trigger,名称必须为SPECIALn, 其中SPECIAL1 to SPECIAL15属于Tool ...

  5. Form_通过Zoom客制化跳转页面功能(案例)

    2012-09-08 Created By BaoXinjian

  6. OAF_OAF控件系列9 - Description Flexfiled描述性弹性域的实现(案例)

    2014-06-17 Created By BaoXinjian

  7. Oracle EBS如何查找到说明性弹性域Title

    Oracle EBS如何查找到说明性弹性域Title 一.方法一:直接在弹性栏位界面查询 在EBS中,有部分表已经启用说明性弹性域,我们可以直接在界面得到弹性域对话框的标题,如下图所示,在OM-事务处 ...

  8. EBS描述性弹性域及键弹性域总结

    一.描述性弹性域 前言介绍: 描述性弹性域的实质就是系统预留自定字段,系统可以使用说明性弹性域来获取业务所特有的重要附加信息.系统可能自定义说明性弹性域,以显示存储更多信息的字段,提供一套完整的“自定 ...

  9. Dynamics AX 2012 R2 客制化RDP报表参数对话框

    当我们在使用RDP报表时,AX会根据Data Contract,自动生成报表参数对话框上的字段控件.一般情况下,该对话框能够满足我们的需求,但是如果有较为复杂或特殊的需求,就要我们对该对话框进行客制化 ...

随机推荐

  1. Red KV数据 庫设計模式

    转:http://blog.nosqlfan.com/html/3033.html NoSQL带给我们的东西很多,高性能,水平扩展性,还有不一样的思维方式.本文来自@hoterran的个人博客运维与开 ...

  2. Hashtable在ViewState中无法增加值

    在我调试程序的时候,我发现WebForm 2.0和MVC3解析ViewState的方式不同,同样的代码,在Weorm中管用,在MVC中不起作用. private Hashtable ht { get ...

  3. JavaScript笔记——this的取值

    有关ECMAScript定义如何获取this请移步ECMAScript中关于如何获取this的定义 绝大多数情况下,函数的调用方式决定了this的取值 全局上下文 console.log(this = ...

  4. Iterator用法

    <% List<Emp> all=DAOFactory.getIEmpDAOInstance().findAll(keyWord); Itrator<Emp> iter= ...

  5. ado.net 连接,删除,添加

    ado.net数据库访问技术将数据库中的数据,提取到内存中,展示给用户看还可以将内存中的数据写入数据库中去 并不是唯一的数据库访问技术,但是它是最底层的数据库访问技术 数据库: create data ...

  6. HTML第一节课

    html的基本结构<html> <head> <title> 页面标题 </title> </head> <boby> 页面内容 ...

  7. mysql添加外键错误

    异常信息如下: ERROR <HY000>:Can't create table '.\itac\#sql-6fc_546f.frm' <errno:121> 我的问题是新建的 ...

  8. SpringMVC详细示例实战教程

    一.SpringMVC基础入门,创建一个HelloWorld程序 1.首先,导入SpringMVC需要的jar包. 2.添加Web.xml配置文件中关于SpringMVC的配置 1 2 3 4 5 6 ...

  9. IOS第七天(4:UiTableView 数据的显示优化重复实例和tableFooterView和tableHeaderView)

    //加上头部 和底部 - (void)viewDidLoad { [super viewDidLoad]; [self tableView]; // 设置行高 self.tableView.rowHe ...

  10. 【iCore3 双核心板】例程三十五:HTTP_IAP_ARM实验——更新升级STM32

    实验指导书及代码包下载: http://pan.baidu.com/s/1eRgzSPW iCore3 购买链接: https://item.taobao.com/item.htm?id=524229 ...