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. solrcloud线上创建collection,修改默认配置

    一.先看API,创建collection 1.上传配置文件到zookeeper 1) 本地内嵌zookeeper集群:java -classpath ./solr-webapp/webapp/WEB- ...

  2. 三、图像移动《苹果iOS实例编程入门教程》

    该app为应用的功能为动态移动动画 现版本 SDK 8.4 Xcode 运行Xcode 选择 Create a new Xcode project ->Single View Applicati ...

  3. Tom and paper

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5224 题意: 给出矩形的面积,求出最小的周长. 样例: Sample Input 3 2 7 12   ...

  4. StoryBoard--看上去很美

    StoryBoard--看上去很美 介绍 StoryBoard 是苹果在 2011 年的 WWDC Session 309<Introducing Interface Builder Story ...

  5. HTTPS原理介绍

    内容来源于:http://www.guokr.com/post/114121/ 自己做个备忘. 二.HTTPS到底安全吗? 这个答案是肯定的,很安全.谷歌公司已经行动起来要大力推广HTTPS的使用,在 ...

  6. [CareerCup] 17.1 Swap Number In Place 互换位置

    17.1 Write a function to swap a number in place (that is, without temporary variables). 这道题让我们交换两个数, ...

  7. [CareerCup] 16.5 Semphore 信号旗

    16.5 Suppose we have the following code:public class Foo { public Foo() { . . . } public void first( ...

  8. 【LeetCode】16. 4Sum

    题目:Given an array S of n integers, are there elements a, b, c, and d in S such that a + b + c + d = ...

  9. java: cairo-misc.c:380: _cairo_operator_bounded_by_source: Assertion `NOT_REACHED' failed.

    出错原因 该问题会在Centos6.6及更高版本出现.也会在其他版本中出现. 解决方案 禁用carioGraphics > Add -Dorg.eclipse.swt.internal.gtk. ...

  10. C语言中指针的使用

    什么是指针:指针就是一个变量,是一个存放内容的内存空间.指针存放的内容是另一个内存空间的起始地址.不同于一般变量存放的就是变量值.取值操作符*对于指针的作用是取得指针变量存放的内存地址里面的值,不加* ...