BW:BW与第三方BI接口设计与实现:APD、Open Hub、RFM

2023-05-16

最近公司新上了国内某CRM系统,SAPCRM也光荣下线了

但是紧接着就出现了一些需求,CRM自带一款小型BI,需要一些SD的数据,但是把R3的数据给他们进行计算的话,不仅复杂、数据海量,而且还很担心数据会和BW不一致,所以经过探讨,决定数据从BW出,然后传给他们。

基本流程Query->DSO->Open hub(DB Table)->RFM

   

于是乎,凑着他们这几天不过来烦我,先做个DEMO,以后说话也有底气~哼哼~~~~

   

问题就来了。首先数据再Query里,取Query数据并不复杂:

1、使用APDRSANWB,新建一个GeneralApplication

   

2、根据业务逻辑建Query

由于业务逻辑比较复杂,需要显示每个月的月基本费,而月基本费本身又会参照月份,进行比较,所以,这个月份不能屏幕输入(屏幕输入一个月还行,但是N个月就没办法处理,也没办法每个月都做个变式交给APD去跑)。只好写死在列里,每次做一年的,也还好,十二行而已。。。

   

但是怎么从十二行转换成两个字段(月份、月基本费值)

   

SAP想的还是很周到的,每一行Query的数据,都可以通过例程去计算,这就解决了问题。

   

整个流程是这样的:

   

3、做DSODSO一定要是直接写入的,设计好Key fieldsData Fields(这个还挺重要的,和业务关系很大)

   

4、配置下例程的Source FieldsTargetFlds,然后开始写代码(和转换里的历程类似,不过思路要清楚,这可是真对报表里看到的每行数据做的处理)

   

   

5、配置下例程到DSOAssignment,类似于Update Rule

   

   

6、在DSO里,选择Overwrite Complete Content of the DSO,这样每次更新报表,数据就全部更新(人家会自己帮你删干净)

   

   

7、配置Open Hub,选择Destination TypeDatabase Table(这里有个Third-Part Tool,需要在SM59里配置RFC链接,没试过),然后勾上Deleting Data from Table,每次都删掉旧数据,类似于Full上载,下面我选择的是Semantic Key,这样就可以在Field Def里面配置Key Field,选Technical Key的话,就比较类似DSOLog表,会有Request ID、RECORD等等,这些会作为是Key Field

   

   

8、做转换、DTP

   

9SE37,做RFM,很简单,就是取了/BIC/OHZVSD_H01的内容,传到参数table里。

   

SELECT * FROM /BIC/OHZVSD_H01 INTO CORRESPONDING FIELDS OF TABLE TABLE_YJBF WHERE SALESEMPLY = I_SALESEMPLY AND CALMONTH = I_CALMONTH.

   

10、做进程链,ABAP Program Variant,Program Name RSAN_PROCESS_EXECUTE,把APD的技术ID配置到Variant里。然后把DTP加在下面,over。。。

   

   

11、自己写了段JCO做测试

   

没啥技术含量,不就是个玩儿~~~SE37里面的执行没啥两样。。

   

   

   

   

续:原来的方案,是摸着石头过河的作品,真正用起来,才发现数据每次都会被冲掉,想要存一下,就使用了一层DSO,进行展现和数据处理。

   

可是这层DSO总会有新的需求,而进行改变,所以就又加了一层写优化的DSO,来专门存储历史数据。

   

   

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

BW:BW与第三方BI接口设计与实现:APD、Open Hub、RFM 的相关文章

随机推荐

  • image打包规则

    本文说的打包是指在aosp中用make j8编译后 xff0c 把自己需要的文件打包到system img中 这里又两种情况 xff0c 第一种是apk so是第三方提供的 xff0c 已经编译好了 xff0c 只要打包到system im
  • 使用Nginx实现反向代理

    一 代理服务器 1 什么是代理服务器 代理服务器 xff0c 客户机在发送请求时 xff0c 不会直接发送给目的主机 xff0c 而是先发送给代理服务器 xff0c 代理服务接受客户机请求之后 xff0c 再向主机发出 xff0c 并接收目
  • Windows下实现C++ 连接ActiveMQ

    文章目录 1 什么是ActiveMQ 2 能用来做什么 xff1f 3 支持的消息类型4 本地安装ActiveMQ服务4 1 下载地址4 2 启动4 3 配置文件activemq xml 5 C 43 43 实现连接ActiveMQ5 1
  • 从猿六年---C++笔试\面试的不成熟小建议来啦

    文章目录 前言 背景面试流程资料总结 刷题指南个人经验总结寄语 前言 背景 本人情况 xff0c 2014年毕业 xff0c 前两年做的更多的是量化分析岗 16年转的C 43 43 开发 xff0c 满打满算也有6年多C 43 43 开发经
  • spring框架学习(一)

    1 xff0c 什么是 spring 框架 spring 是 J2EE 应用程序框架 xff0c 是轻量级的 Io C 和 AOP 的容器框架 xff0c 主要是针对 java Bean 的生命周期进行管理的轻量级容器 xff0c 可以单独
  • quagga相关代码的阅读

    最近的工作涉及到了rip和ospf两个相关的协议 xff0c 虽然仅仅是修两个bug xff0c 但是个人还是对这两个协议是如何实现的产生了很浓厚的兴趣 因此 xff0c 就抽了一段时间读了一下quagga的源码 相比于我之前读的ovs相关
  • 关于linux内核

    内核是一个让人既爱又恨的东西 读书的时候 我就一直就想读一下内核的源码 但是那个时候真的只能说基础薄弱 而且从来没有接触过那么大的一个项目 不知从何入手 所以这个计划就一直被搁浅 我曾经跟着公开课鼓捣过好几份内核源码 但是那些源码只是玩具一
  • 如何在ubuntu下安装vmware-tools?

    用vmware虚拟机安装了ubuntu之后 xff0c 为了实现更加强大的功能 xff0c 比如说直接从windows主机拖文件进入ubuntu xff0c 以及加强ubuntu的性能 xff0c 我们一般都要安装vmware tools
  • BW:数据源抽取机制(这篇是以前的笔记,写得很差,有不少错的地方,留着给自己看)

    题记 xff1a 忽然想到这么个问题 xff0c 后勤数据源和非后勤数据初始化有何区别 xff0c 然后进行周边的拓展 xff0c 所以就形成了下文 大部分知识源于 TBW350 和 SAP SDN 对数据源抽取机制的深入探讨 一 什么数据
  • 理发师问题

    理发师问题 xff1a 一个理发店由一个有几张椅子的等待室和一个放有一张理发椅的理发室组成 1 xff0e 若没有要理发的顾客 xff0c 则理发师去睡觉 xff1b 2 xff0e 若一顾客进入理发店 xff0c 理发师正在为别人理发 x
  • 简易HTTP代理的实现

    编写一个简易的HTTP代理服务器 xff0c 步骤其实很简单 xff1a 1 设置一个监听套接字gListen Socket 2 每当接受到客户端的请求之后 xff0c 我们构建一个新的线程来继续监听客户端的请求 xff0c 然后原线程处理
  • error C4430: 缺少类型说明符 - 假定为 int....的一种情况的解决方法

    这段时间用VS2013写代码的时候 xff0c 一不小心就出现了这个提示 xff0c 这个问题困扰了我一段时间 xff0c 不过总算解决了 xff0c 这里记录一下 xff01 我这里先描述本人碰到的问题 xff1a 正如上图所见 xff0
  • 编辑代码或者文档时光标变成了一闪一闪的方块怎么处理?

    敲代码的时候 一不小心 就会遇到这种情况 解决办法是按一下insert键即可解决 xff0c 笔记本上的Ins insert缩写 键 根据百科上的说法是这样的 xff1a 插入键 xff08 Insert key xff0c 缩写INS x
  • 自绘控件时添加LBS_OWNERDRAWFIXED风格,离奇报错的解决方案!

    在自绘CListBox的时候本人遇到过一件很头痛的事情 xff0c 当然 xff0c 这点小问题对于大牛来说 xff0c 压根不屑一顾 xff0c 可是初学者遇到的话 xff0c 一时半会还真没什么办法解决 自绘控件很简单 xff0c 按照
  • 关于按字寻址和按字节寻址的理解

    我们先从一道简单的问题说起 xff01 设有一个1MB容量的存储器 xff0c 字长32位 xff0c 问 xff1a 按字节编址 xff0c 字编址的寻址范围以及各自的寻址范围大小 如果按字节编址 xff0c 则 1MB 61 2 20B
  • 时钟周期,机器周期,指令周期的区别

    时钟周期 时钟周期也称为振荡周期 xff0c 定义为时钟脉冲的倒数 xff08 时钟周期就是单片机外接晶振的倒数 xff0c 例如12M的晶振 xff0c 它的时钟周期就是1 12us xff09 xff0c 是计算机中的最基本的 最小的时
  • 信息安全——ELGamal数字签名方案的实现

    ELGamal数字签名方案的实现 1 xff0e 问题描述 为简化问题 xff0c 我们取p 61 19 g 61 2 私钥x 61 9 则公钥y 61 29 mod 19 61 18 消息m的ELGamal签名为 r s 其中r 61 g
  • 8021x认证以及portal认证的参考资料

    最近几个月一直在阅读和认证相关的东西 xff0c 到如今 xff0c 也基本上将认证的流程摸得比较清楚了 xff0c 所以在这里写一篇文章 xff0c 记录一下自己的心得 同时也给希望了解这些认证的同学一些参考资料 说实话 xff0c 在没
  • 枚举类返回前端处理

    后端经常使用的枚举类 xff0c 在返回给前段 xff0c 会之间显示枚举名称 xff0c 不是很友好 xff0c 可以通过以下方法解决 枚举类上加 64 JsonFormat 注解 例如以下代码 maven lt dependency g
  • BW:BW与第三方BI接口设计与实现:APD、Open Hub、RFM

    最近公司新上了国内某 CRM系统 xff0c SAP的 CRM也光荣下线了 但是紧接着就出现了一些需求 xff0c CRM自带一款小型 BI xff0c 需要一些 SD的数据 xff0c 但是把 R3的数据给他们进行计算的话 xff0c 不