您的位置:首页 > 其它

帐套和会计科目的理解

2013-12-30 17:32 344 查看


帐套(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;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: