news 2026/4/15 12:29:42

我在实施oracle ebs项目 帮我想一个方案 我在设计coa架构,coa有公司段com 会计科目段 acct 以及科目子目 subacct 依赖于 acct段,com有值 0916 0918

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
我在实施oracle ebs项目 帮我想一个方案 我在设计coa架构,coa有公司段com 会计科目段 acct 以及科目子目 subacct 依赖于 acct段,com有值 0916 0918

我在实施oracle ebs项目 帮我想一个方案 我在设计coa架构,coa有公司段com 会计科目段 acct 以及科目子目 subacct 依赖于 acct段,com有值 0916 0918 0919,科目有 10010101 10020101 10030101 等 10010101的子目有 000000 000001 ,10020101 的子目有000000 091611 091811 091911,我的要求是 在日常业务发生时候 当我选择公司段0916,和科目10020101 时候 我可以选择子目 000000 091611,当我选择公司段0918,和科目10020101 时候 我可以选择子目 000000 091811 ,当我选择公司段0919,和科目10020101 时候 我可以选择子目 000000 091911 如何实现 ?

针对您在Oracle EBS中COA架构的设计需求,可以通过以下方案实现公司段(COM)、科目段(ACCT)和子目段(SUBACCT)之间的依赖关系:

方案一:使用弹性域限定词 + 值集验证(推荐)

1.值集配置

- 公司段(COM):独立值集(COM_VS) - 科目段(ACCT):独立值集(ACCT_VS) - 子目段(SUBACCT):表验证值集(SUBACCT_VS)

2.创建子目验证表

sql

CREATE TABLE gl_subacct_validation ( company_value VARCHAR2(10), acct_value VARCHAR2(30), subacct_value VARCHAR2(30), enabled_flag VARCHAR2(1) DEFAULT 'Y', description VARCHAR2(100) ); -- 插入验证数据 INSERT INTO gl_subacct_validation VALUES ('0916', '10020101', '000000', 'Y', '默认子目'); INSERT INTO gl_subacct_validation VALUES ('0916', '10020101', '091611', 'Y', '0916专用'); INSERT INTO gl_subacct_validation VALUES ('0918', '10020101', '000000', 'Y', '默认子目'); INSERT INTO gl_subacct_validation VALUES ('0918', '10020101', '091811', 'Y', '0918专用'); INSERT INTO gl_subacct_validation VALUES ('0919', '10020101', '000000', 'Y', '默认子目'); INSERT INTO gl_subacct_validation VALUES ('0919', '10020101', '091911', 'Y', '0919专用'); -- 其他科目数据...

3.值集SQL验证

-- SUBACCT_VS的WHERE子句 SELECT subacct_value, description FROM gl_subacct_validation WHERE company_value = :$FLEX$.COM -- 引用公司段值 AND acct_value = :$FLEX$.ACCT -- 引用科目段值 AND enabled_flag = 'Y' ORDER BY subacct_value

4.弹性域配置

  • 在定义会计科目弹性域时:

    • 将COM段设为"平衡段"

    • 在ACCT段属性中启用"是否必须"

    • 在SUBACCT段属性中:

      • 设置"值集" = SUBACCT_VS

      • 设置"参考字段"为COM和ACCT

方案二:使用交叉验证规则(CVR)

1.创建交叉验证规则

规则名称: SUBACCT_COMPANY_MATCH 错误消息: "子目必须与公司段匹配" 条件表达式: (COM = '0916' AND ACCT = '10020101' AND SUBACCT IN ('000000','091611')) OR (COM = '0918' AND ACCT = '10020101' AND SUBACCT IN ('000000','091811')) OR (COM = '0919' AND ACCT = '10020101' AND SUBACCT IN ('000000','091911'))

2.配置步骤

  • 路径: GL > 设置 > 财务系统 > 弹性域 > 键 > 交叉验证规则

  • 启用规则并设置为"错误"级别

方案三:使用动态插入和段值安全性

1.启用动态插入

  • 在科目弹性域定义中启用"动态插入"

  • 创建组合生成规则

2.段值安全性配置

安全规则名称: SUBACCT_SECURITY_RULE 条件: 根据用户职责限制可访问的组合 设置层次结构: Level 1: 公司段 (COM) - 0916, 0918, 0919 Level 2: 科目段 (ACCT) - 继承公司段 Level 3: 子目段 (SUBACCT) - 继承公司和科目段

方案四:表单级验证(PL/SQL)

1.在GL模块中创建个性化

-- 当选择公司和科目时,动态过滤子目LOV BEGIN IF :SEGMENT1 IN ('0916','0918','0919') AND :SEGMENT2 = '10020101' THEN -- 设置LOV过滤条件 SET_ITEM_PROPERTY('SUBACCT_ITEM', LOV_FILTER, 'SUBACCT_VALUE IN (''000000'',''' || CASE :SEGMENT1 WHEN '0916' THEN '091611' WHEN '0918' THEN '091811' WHEN '0919' THEN '091911' END || ''')'); END IF; END;

实施建议:

阶段实施:

  1. 首先实施方案一(表验证值集),这是最标准的方法

  2. 配合方案二(交叉验证)提供双重保障

  3. 考虑方案四(个性化)用于特定表单的增强体验

测试用例:

sql

-- 测试数据 1. COM=0916, ACCT=10020101 → 应只显示: 000000, 091611 2. COM=0918, ACCT=10020101 → 应只显示: 000000, 091811 3. COM=0919, ACCT=10020101 → 应只显示: 000000, 091911 4. COM=0916, ACCT=10010101 → 应只显示: 000000, 000001

维护考虑:

  • 在SUBACCT_VS值集中添加"起始日期/终止日期"字段

  • 创建维护界面供业务用户管理验证关系

  • 考虑性能影响,为验证表建立索引:

    sql

    CREATE INDEX gl_subacct_val_idx ON gl_subacct_validation(company_value, acct_value);

这个方案确保了数据完整性,同时提供了良好的用户体验。建议从方案一开始实施,根据实际需求再考虑其他方案的补充。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/3/27 5:21:47

从功能测试进阶自动化测试,“我“需要怎么做?

目录:导读 前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结(尾部小惊喜) 前言 为什么要学习自动…

作者头像 李华
网站建设 2026/3/16 0:02:04

写论文软件哪个好?实测破局!宏智树 AI 成学术写作效率天花板

毕业季的论文战场上,“写论文软件哪个好” 的灵魂拷问,成了无数学子的热议焦点。市面上的论文工具五花八门,却大多难逃 “文献造假”“数据空洞”“逻辑断层” 的三大魔咒。作为深耕论文写作科普的教育测评博主,我以计算机、汉语言…

作者头像 李华
网站建设 2026/4/12 1:57:09

提示工程架构师总结:优化提示生成算法的7个底层逻辑

提示工程架构师总结:优化提示生成算法的7个底层逻辑 一、引言:为什么你的提示总“差一口气”? 你有没有过这样的经历? 用GPT-4写营销文案,别人的输出是“让用户看完就想下单”的共情力文本,而你的结果却像“…

作者头像 李华
网站建设 2026/3/30 12:07:26

测试老鸟,性能测试如何做?怎么做?压力负载一篇上高速...

目录:导读 前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结(尾部小惊喜) 前言 1、性能测试特性&…

作者头像 李华
网站建设 2026/4/15 10:55:35

CPU 中的算术逻辑单元(ALU)的 状态标志

CPU 中的算术逻辑单元(ALU)的 状态标志 理解ALU状态标志不仅是理解CPU如何工作的核心,也是掌握汇编语言编程和计算机底层逻辑的关键。 本文将从概念、每个标志的解析、到实际应用和架构差异,层层递进。核心概念回顾 状态标志是CPU…

作者头像 李华
网站建设 2026/4/12 14:20:22

如何高效使用论文搜索网站获取学术资源

做科研的第一道坎,往往不是做实验,也不是写论文,而是——找文献。 很多新手科研小白会陷入一个怪圈:在知网、Google Scholar 上不断换关键词,结果要么信息过载,要么完全抓不到重点。今天分享几个长期使用的…

作者头像 李华