帐套(Set of Books,简称SOB):
通俗地讲,帐套就是一系列帐簿(如明细帐、总分类
帐等)的组合,我们的财务业务全记录在帐簿中。
从系统角度讲,总帐帐套确定了一个企业所采用的会计
科目结构、会计日历、记帐货币等基本因素,另外还有一些
控制选项,如是否采用预算、平均余额等。
借:001.HQIT.5503006.TONY.0 2000
贷:001.0.1001.0.0 2000
帐套相关使用
. 客户化开发中的多帐套屏蔽 1) 得到当前OU的值。 使用:mo_global.get_current_org_id或者fnd_global.org_id 2) 根据组织id得到帐套id和公司名称。SQL语句为: DECLARE l_org_information3 VARCHAR2(150);--帐套id l_company_desc VARCHAR2(150);--公司中文描述 BEGIN SELECT o3.org_information3,o3.attribute3 INTO l_org_information3,l_company_desc FROM hr_all_organization_units o, hr_all_organization_units_tl otl, hr_organization_information o2, hr_organization_information o3 WHERE o.organization_id = o2.organization_id AND o.organization_id = o3.organization_id AND o2.org_information_context || '' = 'CLASS' AND o3.org_information_context = 'Operating Unit Information' AND o2.org_information1 = 'OPERATING_UNIT' AND o2.org_information2 = 'Y' AND o.organization_id = otl.organization_id AND otl.language = USERENV('LANG') AND o.organization_id = &p_org_id;--OU id END; 3) 得到本位币,SQL语句为: DECLARE l_local_currency_code VARCHAR2(15);--本位币 BEGIN SELECT gsob.currency_code INTO l_local_currency_code FROM gl_sets_of_books gsob, hr_operating_units hou WHERE gsob.set_of_books_id = hou.set_of_books_id AND hou.organization_id = &p_org_id;--OU ID END; 4) 在程序中加上帐套和本位币的限制 2. 多帐套实现扩展 1) 得到帐套的SQL语句为: SELECT * FROM gl_ledgers; 2) 得到法人的SQL语句为: SELECT * FROM xle_entity_profiles
Oracle 会计科目结构决定了财务记帐的帐户,它采用了弹性
域的概念,是分段结构,最长可30个段,每段各取一值形成
一个组合,称为帐户。
优点:灵活、方便
各段含义
• 公司段:进行独立财务核算的单位。
• 部门段:进行费用核算的单位,也叫成本中心。
• 科目段:自然科目,分为资产、负债、费用、成本、
权益等类别。
权益等类别。
• 备用段:根据需要启用,越多记帐越明细。
最多允许30个段。
会计科木存放在弹性域中
SELECT ffvc.flex_value, ffvc.description FROM fnd_flex_values_vl ffvc, fnd_flex_value_sets ffsc WHERE ffvc.flex_value_set_id = ffsc.flex_value_set_id AND ffsc.flex_value_set_name = 'HSST_COMPANY' --公司段 AND ffvc.enabled_flag = 'Y' AND SYSDATE BETWEEN nvl(ffvc.start_date_active, SYSDATE) AND nvl(ffvc.end_date_active, SYSDATE + 1); --成本中心 SELECT ffvd.flex_value, ffvd.description FROM fnd_flex_values_vl ffvd, fnd_flex_value_sets ffsd WHERE ffvd.flex_value_set_id = ffsd.flex_value_set_id AND ffsd.flex_value_set_name = 'HSST_DEPARTMENT' --部门段 AND ffvd.enabled_flag = 'Y' AND SYSDATE BETWEEN nvl(ffvd.start_date_active, SYSDATE) AND nvl(ffvd.end_date_active, SYSDATE + 1); --预估科目 SELECT ffv.flex_value, ffv.description, ffv.* FROM fnd_flex_values_vl ffv, fnd_flex_value_sets ffs WHERE ffv.flex_value_set_id = ffs.flex_value_set_id AND ffs.flex_value_set_name = 'HSST_ACCOUNT' --科目段 AND ffv.enabled_flag = 'Y' AND SYSDATE BETWEEN nvl(ffv.start_date_active, SYSDATE) AND nvl(ffv.end_date_active, SYSDATE + 1);
获取账户的值和描述
--获取账户描述和值 DECLARE v_key_flex_code := 'GL#'; v_appl_short_name := 'SQLGL'; v_application_id := 101; v_ccid NUMBER := 3006; --查找的CCID BEGIN v_sob_id := fnd_profile.value_wnps('GL_SET_OF_BKS_ID'); SELECT chart_of_accounts_id INTO v_coa_id FROM gl_sets_of_books sob WHERE sob.set_of_books_id = v_sob_id; END; delim := fnd_flex_apis.get_segment_delimiter(x_application_id => v_application_id, x_id_flex_code => v_key_flex_code, x_id_flex_num => v_coa_id); v_success := fnd_flex_keyval.validate_ccid(appl_short_name => v_appl_short_name, key_flex_code => v_key_flex_code, structure_number => v_coa_id, combination_id => v_ccid); IF v_success THEN --获取账户描述 v_account_desc := fnd_flex_keyval.concatenated_descriptions; --获取账户值 v_account_num := fnd_flex_keyval.concatenated_values; END IF; END;