使用程序动态创建账户组合

来源:互联网 发布:手机晒密软件 编辑:程序博客网 时间:2024/04/26 11:54

目的:使用程序动态创建账户组合。如果账户组合存在的话,返回存在的ID,不存在的话就动态创建账户组合并返回id。

实现步骤:

1. 得到账簿的CHART_OF_ACCOUNTS_ID

2. 得到账户弹性域分隔符

3. 调用标准的API得到账户组合id

具体实现如下:

1. 得到账簿的CHART_OF_ACCOUNTS_ID实现code:


2. 得到账户弹性域分隔符实现code:

SELECT concatenated_segment_delimiter    INTO l_segment_delimiter    FROM fnd_id_flex_structures   WHERE application_id = 101     AND id_flex_code = 'GL#'     AND id_flex_num = l_id_flex_num;


3. 调用标准的API得到账户组合id实现code:

l_concatenated_segments := l_segment1 || l_segment_delimiter ||                               p_segment2 || l_segment_delimiter ||                               p_segment3 || l_segment_delimiter ||                               l_segment4 || l_segment_delimiter ||                               l_segment5 || l_segment_delimiter ||                               l_segment6 || l_segment_delimiter ||                               l_segment7 || l_segment_delimiter ||                               l_segment8 || l_segment_delimiter ||                               l_segment9 || l_segment_delimiter ||                               l_segment10 || l_segment_delimiter ||                               l_segment11 || l_segment_delimiter ||                               l_segment12 || l_segment_delimiter ||                               l_segment13 || l_segment_delimiter ||                               l_segment14 || l_segment_delimiter ||                               l_segment15 || l_segment_delimiter ||                               l_segment16 || l_segment_delimiter ||                               l_segment17 || l_segment_delimiter ||                               l_segment18 || l_segment_delimiter ||                               l_segment19 || l_segment_delimiter ||                               l_segment20 || l_segment_delimiter ||                               l_segment21 || l_segment_delimiter ||                               l_segment22 || l_segment_delimiter ||                               l_segment23 || l_segment_delimiter ||                               l_segment24 || l_segment_delimiter ||                               l_segment25 || l_segment_delimiter ||                               l_segment26 || l_segment_delimiter ||                               l_segment27 || l_segment_delimiter ||                               l_segment28 || l_segment_delimiter ||                               l_segment29 || l_segment_delimiter ||                               l_segment30 || l_segment_delimiter;    l_gcc_account_id := apps.fnd_flex_ext.get_ccid(application_short_name => 'SQLGL',                                                   key_flex_code          => 'GL#',                                                   structure_number       => l_id_flex_num,                                                   validation_date        => to_char(SYSDATE,                                                                                     apps.fnd_flex_ext.DATE_FORMAT),                                                   concatenated_segments  => x_concatenated_seg);    fnd_file.PUT_LINE(fnd_file.log,                      'l_gcc_account_id:' || l_gcc_account_id);    IF l_gcc_account_id = 0 THEN      RETURN NULL;    END IF;  

注意      :如果账户ID返回0,表示没有创建成功。

错误原因:传入的参数不正确或者账户组合没有通过验证。


0 0
原创粉丝点击