加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

客制FORM调用会计科目弹性域/根据科目取得CODE_COMBINATION_ID

发布时间:2020-12-15 04:49:58 所属栏目:百科 来源:网络整理
导读:1.首先在创建数据表时,添一个字段用来保存会计科目的ID。如:CODE_COMBINATION_ID 2.在FORM相应的数据块增加两个ITEM,用来显示科目NUMBER与DESCRITION。 例:GL_CODE_NUMBER、GL_CODE_DESC 注 : ENABLE_LIST_LAMP是TEMPLATE模板自带的,无须手工去定义。

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_FLAGnIn' ||
?????????????????????????? 'APPL=SQLGL;NAME=GL_JE_SUMMARY_ACCOUNTnN' ||
?????????????????????????? 'GL_GLOBALnDETAIL_POSTING_ALLOWED' ||
?????????????????????????? 'nIn' ||
????????????????????????? 'APPL=SQLGL;NAME=GL_JE_POSTING_NOT_ALLOWEDnY',
??? 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://www.voidcn.com/article/p-oaordsxr-bch.html

?网上说当在第一步建表时,可以建一个字段作为外键,基于表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中。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读