SAP BPC 开发日记
1.获取维度模型的方法1
DATA:i_appset_id TYPE uj_appset_id,
i_appl_id TYPE uj_appl_id.
i_appset_id = 'SINOTRUK'.
i_appl_id = 'Consolidation'.
DATA: lo_owner_model TYPE REF TO cl_uja_application,"ownership 模型
lt_owner_dim TYPE uja_t_appl_dim. "ownership 模型的维度list
CREATE OBJECT lo_owner_model
EXPORTING
i_appset_id = i_appset_id
i_application_id = 'OWNERSHIP'.
lo_owner_model->get_appl_dim(
EXPORTING
i_appl_id = 'OWNERSHIP'
IMPORTING
et_appl_dim = lt_owner_dim ).

2获取维度模型方法2
cl_ujk_model=>get_dim_list(
EXPORTING
i_appset_id = i_appset_id
i_appl_id = 'Ownership'
i_with_measures = abap_false
IMPORTING
et_admin_dim_list = DATA(lt_dim_list)
).

3.设置查询条件
DATA: lt_sel TYPE uj0_t_sel. "输入模型的查询条件
"设置查询条件
DEFINE set_select.
APPEND INITIAL LINE TO &1 ASSIGNING <lfs_sel> .
<lfs_sel>-sign = &2.
<lfs_sel>-option = &3.
<lfs_sel>-dimension = &4.
<lfs_sel>-low = &5.
<lfs_sel>-high = &6.
END-OF-DEFINITION.
"维度 ACCOUNT
set_select lt_sel 'I' 'BT' 'ACCOUNT' '1521010000' '1521010002'.
set_select lt_sel 'I' 'BT' 'ACCOUNT' '1522010000' '1522010002'.
set_select lt_sel 'I' 'BT' 'ACCOUNT' '1523010000' '1523010002'.
set_select lt_sel 'I' 'BT' 'ACCOUNT' '1521020000' '1521020001'.
"维度 FLOW
set_select lt_sel 'I' 'BT' 'FLOW' 'F_4A1' 'F_4A5'.
set_select lt_sel 'I' 'BT' 'FLOW' 'F_4B1' 'F_4B5'.
"维度 FLOW1
set_select lt_sel 'I' 'EQ' 'FLOW1' 'F1_NONE' ''.
"维度 FLOW2
set_select lt_sel 'I' 'EQ' 'FLOW2' 'F2_NONE' ''.
"维度 FLOW4
set_select lt_sel 'I' 'EQ' 'FLOW4' 'F4_NONE' ''.
4.查询模型数据方法1
DATA:lt_sel TYPE uj0_t_sel, "输入模型的查询条件
DATA:i_appset_id TYPE uj_appset_id,
i_appl_id TYPE uj_appl_id.
i_appset_id = 'SINOTRUK'.
i_appl_id = 'Consolidation'.
TRY .
*执行查询 ----开始
DATA(lo_query) = cl_ujo_query_factory=>get_query_adapter(
i_appset_id = i_appset_id
i_appl_id = i_appl_id ).
CALL METHOD lo_conso_mgr->create_data_ref
EXPORTING
i_data_type = 'T'
it_dim_name = lt_conso_dim
if_tech_name = abap_false
if_signeddata = abap_true
IMPORTING
er_data = lr_data_4.
ASSIGN lr_data_4->* TO <lfs_data>.
lo_query->run_rsdri_query(
EXPORTING
it_dim_name = lt_conso_dim " BPC: Dimension List
it_range = lt_sel " BPC: Selection condition
if_check_security = abap_true " BPC: Generic indicator
IMPORTING
et_data = <lfs_data>
).
*执行查询 ----结束
CATCH cx_root INTO DATA(lr_exception).
ENDTRY.
5.查询模型数据方法2
DATA: lo_owner_mgr TYPE REF TO if_uja_application_manager,
lt_owner_list TYPE uja_t_dim_list,
lr_data1 TYPE REF TO data,
lt_axis1 TYPE ujo_t_query_dim,
ls_axis TYPE ujo_t_members.
FIELD-SYMBOLS:
<fs_table01> TYPE STANDARD TABLE,
*---读取OWNERSHIP(/CPMB/CYIY0HO)模型
TRY.
CALL METHOD cl_uja_bpc_admin_factory=>get_application_manager
EXPORTING
i_appset_id = i_appset_id
i_application_id = 'Ownership'
RECEIVING
ro_return = lo_owner_mgr.
CALL METHOD lo_owner_mgr->create_data_ref
EXPORTING
i_data_type = 'T'
it_dim_name = lt_owner_list
if_tech_name = abap_false
if_signeddata = abap_true
IMPORTING
er_data = lr_data1.
ASSIGN lr_data1->* TO <fs_table01>.
lo_owner_query = cl_ujo_query_factory=>get_query_adapter(
i_appset_id = i_appset_id
i_appl_id = 'Ownership' ).
lo_owner_query->run_axis_query_symm(
EXPORTING
it_axis = lt_axis1 " BPC: Dimension List
if_no_sign_conversion = abap_true
IMPORTING
et_data = <fs_table01>
).
CATCH cx_ujo_read cx_uj_static_check.
ENDTRY.
SAP BPC 开发日记的更多相关文章
- SAP BPC方案介绍
refer to http://sapper.blog.sohu.com/166039991.html SAP/BPC简介: 全面预算管理是联系公司战略目标与日常运营的重要纽带,它上到战略层面.下到执 ...
- 微信小程序开发日记——高仿知乎日报(中)
本人对知乎日报是情有独钟,看我的博客和github就知道了,写了几个不同技术类型的知乎日报APP要做微信小程序首先要对html,css,js有一定的基础,还有对微信小程序的API也要非常熟悉 我将该教 ...
- 微信小程序开发日记——高仿知乎日报(上)
本人对知乎日报是情有独钟,看我的博客和github就知道了,写了几个不同技术类型的知乎日报APP 要做微信小程序首先要对html,css,js有一定的基础,还有对微信小程序的API也要非常熟悉 我将该 ...
- 嵌入式Linux驱动开发日记
嵌入式Linux驱动开发日记 主机硬件环境 开发机:虚拟机Ubuntu12.04 内存: 1G 硬盘:80GB 目标板硬件环境 CPU: SP5V210 (开发板:QT210) SDRAM: 512M ...
- 【原创】shadowebdict开发日记:基于linux的简明英汉字典(四)
全系列目录: [原创]shadowebdict开发日记:基于linux的简明英汉字典(一) [原创]shadowebdict开发日记:基于linux的简明英汉字典(二) [原创]shadowebdic ...
- 【原创】shadowebdict开发日记:基于linux的简明英汉字典(三)
全系列目录: [原创]shadowebdict开发日记:基于linux的简明英汉字典(一) [原创]shadowebdict开发日记:基于linux的简明英汉字典(二) [原创]shadowebdic ...
- 【原创】shadowebdict开发日记:基于linux的简明英汉字典(二)
全系列目录: [原创]shadowebdict开发日记:基于linux的简明英汉字典(一) [原创]shadowebdict开发日记:基于linux的简明英汉字典(二) [原创]shadowebdic ...
- 【原创】shadowebdict开发日记:基于linux的简明英汉字典(一)
全系列目录: [原创]shadowebdict开发日记:基于linux的简明英汉字典(一) [原创]shadowebdict开发日记:基于linux的简明英汉字典(二) [原创]shadowebdic ...
- LayIM.AspNetCore Middleware 开发日记(一)闲言碎语
前言 前几天写博客的时候突然看见了历史上的今天.不禁感慨时光如梭,这系列博客后来被我标注了已经过时,但是还有很多小伙伴咨询我.既然过时就要更新,正好 .NET Core 也出来很久了,于是乎想到把La ...
随机推荐
- 如何在 Java 中实现 Dijkstra 最短路算法
定义 最短路问题的定义为:设 \(G=(V,E)\) 为连通图,图中各边 \((v_i,v_j)\) 有权 \(l_{ij}\) (\(l_{ij}=\infty\) 表示 \(v_i,v_j\) 间 ...
- docker将jar打包镜像文件
1.首先需要编写dockerfile文件,通过dockerfile文件将jar包打成镜像 编写dockerfile文件 # 定义父镜像 FROM java:8 # 维护者信息 MAINTAINER c ...
- Java学习day2
今天学习了Java的数据类型.运算符.选择循环结构以及数组. Java所有的关键字全部小写 Java的数据类型与c语言相似,但是c语言定义数组时可以不主动对其初始化,而Java则必须先初始化,有动态和 ...
- 内存之旅——如何提升CMA利用率?
(以下内容来自开发者分享,不代表 OpenHarmony 项目群工作委员会观点) 宋远征 李佳伟 OpenAtom OpenHarmony(以下简称"OpenHarmony") ...
- 记一次Linux Centos7病毒清理
记一次在工作中测试环境下中病毒的处理解决办法,都说linux系统非常安全,但是很多人百年一遇的病毒被我遇上了,公司三台测试环境服务器中招. 最开始系统突然变得很卡,使用top命令查看资源占用情况,发现 ...
- 广度优先搜索 BFS 学习笔记
广度优先搜索 BFS 学习笔记 引入 广搜是图论中的基础算法之一,属于一种盲目搜寻方法. 广搜需要使用队列来实现,分以下几步: 将起点插入队尾: 取队首 \(u\),如果 $u\to v $ 有一条路 ...
- spring中的事件发布与监听
点赞再看,养成习惯,微信搜索「小大白日志」关注这个搬砖人. 文章不定期同步公众号,还有各种一线大厂面试原题.我的学习系列笔记. spring事件发布与监听的应用场景 当处理完一段代码逻辑,接下来需要同 ...
- 使用 Ansible 快速部署 HBase 集群
背景 出于数据安全的考虑,自研了一个低成本的时序数据存储系统,用于存储历史行情数据. 系统借鉴了 InfluxDB 的列存与压缩策略,并基于 HBase 实现了海量存储能力. 由于运维同事缺乏 Had ...
- 劳动节快乐!手写个核心价值观编码工具 - Python实现
前言 今天是五一劳动节,祝各位无产阶级劳动者节日快乐! 然后来整活分享一些有趣的东西~ 这个小工具是我大学时做着玩的,对于各位接班人来说,12个词的核心价值观这东西,大家都非常熟悉了,这工具可以实现将 ...
- CentOS7安装部署Mongodb
1.下载安装包 打开官网,跳转至下载界面,选择对应版本的安装包,拷贝其链接,这里是手动安装,所以下载tgz安装包,如果要自动化安装,选择server的rpm自动安装包 https://www.mong ...