SAP BW/HANA 数据源创建示例

news2024/11/17 15:50:09

操作实例

在ABAP中创建:

1、RSO2——创建数据源——明明规则:Z+ZZ/BZ/HY_PP/MM/SD/FI_数据表名

如果表数据中存在货币或者数量关联不是本表需要走RFC提取

根据RFC提取:

函数组—ZBW_GROUP_FI

创建RFC:ZBW_FUN_ZCOT007E

代码:

FUNCTION ZBW_FUN_ZCOT007E.
*"----------------------------------------------------------------------
*"*"本地接口:
*"  IMPORTING
*"     VALUE(I_REQUNR) TYPE  SRSC_S_IF_SIMPLE-REQUNR
*"     VALUE(I_DSOURCE) TYPE  SRSC_S_IF_SIMPLE-DSOURCE OPTIONAL
*"     VALUE(I_MAXSIZE) TYPE  SRSC_S_IF_SIMPLE-MAXSIZE OPTIONAL
*"     VALUE(I_INITFLAG) TYPE  SRSC_S_IF_SIMPLE-INITFLAG OPTIONAL
*"     VALUE(I_READ_ONLY) TYPE  SRSC_S_IF_SIMPLE-READONLY OPTIONAL
*"     VALUE(I_REMOTE_CALL) TYPE  SBIWA_FLAG DEFAULT SBIWA_C_FLAG_OFF
*"  TABLES
*"      E_T_DATA STRUCTURE  ZCOT007E_BW OPTIONAL
*"      I_T_SELECT TYPE  SRSC_S_IF_SIMPLE-T_SELECT OPTIONAL
*"      I_T_FIELDS TYPE  SRSC_S_IF_SIMPLE-T_FIELDS OPTIONAL
*"  EXCEPTIONS
*"      NO_MORE_DATA
*"      ERROR_PASSED_TO_MESS_HANDLER
*"----------------------------------------------------------------------


* Example: DataSource for table SFLIGHT


* Auxiliary Selection criteria structure
  DATA: L_S_SELECT TYPE SRSC_S_SELECT,
        WA_DATA LIKE E_T_DATA.
* Maximum number of lines for DB table
  STATICS: S_S_IF TYPE SRSC_S_IF_SIMPLE,

* counter
          S_COUNTER_DATAPAKID LIKE SY-TABIX,

* cursor
          S_CURSOR TYPE CURSOR.

* Initialization mode (first call by SAPI) or data transfer mode
* (following calls) ?
  IF I_INITFLAG = SBIWA_C_FLAG_ON.

************************************************************************
* Initialization: check input parameters
*                 buffer input parameters
*                 prepare data selection
************************************************************************

* Check DataSource validity
    CASE I_DSOURCE.
      WHEN 'ZZZ_PP_ZCOT007E'.
      WHEN OTHERS.
        IF 1 = 2. MESSAGE E009(R3). ENDIF.
* this is a typical log call. Please write every error message like this
        LOG_WRITE 'E'                  "message type
                  'R3'                 "message class
                  '009'                "message number
                  I_DSOURCE   "message variable 1
                  ' '.                 "message variable 2
        RAISE ERROR_PASSED_TO_MESS_HANDLER.
    ENDCASE.

    APPEND LINES OF I_T_SELECT TO S_S_IF-T_SELECT.

* Fill parameter buffer for data extraction calls
    S_S_IF-REQUNR    = I_REQUNR.
    S_S_IF-DSOURCE = I_DSOURCE.
    S_S_IF-MAXSIZE   = I_MAXSIZE.

* Fill field list table for an optimized select statement
* (in case that there is no 1:1 relation between InfoSource fields
* and database table fields this may be far from beeing trivial)
    APPEND LINES OF I_T_FIELDS TO S_S_IF-T_FIELDS.

  ELSE.                 "Initialization mode or data extraction ?

************************************************************************
* Data transfer: First Call      OPEN CURSOR + FETCH
*                Following Calls FETCH only
************************************************************************

* First data package -> OPEN CURSOR
    IF S_COUNTER_DATAPAKID = 0.

* Determine number of database records to be read per FETCH statement
* from input parameter I_MAXSIZE. If there is a one to one relation
* between DataSource table lines and database entries, this is trivial.
* In other cases, it may be impossible and some estimated value has to
* be determined.
      OPEN CURSOR WITH HOLD S_CURSOR FOR
      SELECT *
        FROM ZCOT007E.
    ENDIF.                             "First data package ?

* Fetch records into interface table.
*   named E_T_'Name of extract structure'.
    FETCH NEXT CURSOR S_CURSOR
               APPENDING CORRESPONDING FIELDS
               OF TABLE E_T_DATA
               PACKAGE SIZE S_S_IF-MAXSIZE.

    IF SY-SUBRC <> 0.
      CLOSE CURSOR S_CURSOR.
      RAISE NO_MORE_DATA.
    ENDIF.

    S_COUNTER_DATAPAKID = S_COUNTER_DATAPAKID + 1.

  ENDIF.              "Initialization mode or data extraction ?



ENDFUNCTION.

然后点击保存

保存——返回——保存——返回

RSA2—查看创建结果

RSA3——测试验证提取是否成功

成功后传输至测试系统----进入eclipse---BW开发系统

eclipse中BW开发系统操作:

Data Sources—找到对应的sources右键Replicate

下一步:

进入下面界面刷新

刷新就会显示

然后创建ADSO

转存失败重新上传取消

finish--激活

主键

创建数据转换

无逻辑直接转换

激活

BW-CODE--rstrangui

创建DTP:

直接下一步

选中-finish---保存激活

激活-finish

BDW开发系统中

将数据源分配包

创建PC(处理链) 运用上边创建的DTP---DTP_00O2TQWPCJN3058B4K2LRBO1B

验证测试传输抽数

MANAGE激活查看成功

END

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/705691.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

(css)在网页上添加Live 2D网页二次元可动小人

(css)在网页上添加Live 2D网页二次元可动小人 效果&#xff1a; 代码&#xff1a; <script src"js/L2Dwidget.min.js"></script> <script src"js/L2Dwidget.0.min.js"></script> <script>L2Dwidget.init({"model&quo…

git学习使用笔记

一、git组成结构图 工作空间&#xff1a;用来保存项目的元数据和对象数据库的地方。 这是 Git 中最重要的部分&#xff0c;从其它计算机克隆仓库时&#xff0c;拷贝的就是这里的数据。本地索引&#xff1a;保存了下次将提交的文件列表信息&#xff0c;一般在 Git 仓库目录中。有…

【三维生成】Make-it-3D:diffusion+NeRF从单张图像生成高保真三维物体(上交微软)

题目: Make-It-3D: High-Fidelity 3D Creation from A Single Image with Diffusion Prior Paper: https://arxiv.org/pdf/2303.14184.pdf Code: https://make-it-3d.github.io/ 文章目录 前言一、方法1.第一阶段 Coarse Stage: Single-view 3D Reconstruction1.参考点的像素损…

制造企业实施MES系统受到的影响因素有哪些?

实施MES系统会遇到哪些影响因素&#xff1f;或者说企业实施MES系统的交付率为什么低&#xff1f; 我觉得关键点在于&#xff1a;在当前MES产品化程度普遍不高的大环境下&#xff0c;对项目及管理软件本身认知过于简单&#xff0c;且缺失有经验行业人才&#xff0c;是当前大部分…

机器学习复习5

机器学习复习 1 - 下面是你在课程中看到的代码&#xff0c;在哪种情况下你会使用二值交叉熵损失函数&#xff1f; model.compile(lossBinaryCrossentropy()) A. 回归任务(预测一个数字的任务) B. BinaryCrossentropy()不应该被用于任何任务 C. 有3个或更多类(类别)的分类任务 D…

力扣题库刷题笔记12--整数转罗马数字

1、题目如下&#xff1a; 2、个人Python代码实现&#xff1a; 3、题解Python代码实现&#xff1a; 与题解的差异主要在字典的设计以及题解第22行取余赋值的代码实现&#xff08;个人是使用转换成字符串&#xff0c;然后根据位数确定对应字符&#xff0c;相对来讲笨比了许多&…

【业务功能篇36】Springboot+activiti7 工作流引擎

业务场景&#xff1a;前段时间总结的有一个告警工单流程&#xff0c;我们都是直接自己建表&#xff0c;状态节点&#xff0c;操作节点&#xff0c;都是自定义设计的&#xff0c;而到后面会有很多的工单流程&#xff0c;比如创建一个遗留问题电子流&#xff0c;指定处理人进行分…

科技资讯|2023Q1中国电动汽车销量增长 29%,充电桩市场持续增长

根据市场调查机构公布的 2023 年第 1 季度中国国内电动汽车市场报告&#xff0c;比亚迪继续引领竞争日益激烈的电动汽车市场。 报告称 2023 年第 1 季度中国乘用电动汽车销量同比增长 29%&#xff0c;其中纯电动汽车&#xff08;BEV&#xff09;占销售额的近 70%、插电式混合…

python问题1:安装好ubuntu之后,可以使用python3命令,但是不能使用python命令

【问题】 安装好ubuntu之后&#xff0c;可以使用python3命令&#xff0c;但是不能使用python命令。 【分析】 这是因为/usr/bin下面只有python3命令&#xff0c;没有python命令。 sudo ln -s /usr/bin/python3 /usr/bin/python【解决】 做一个软链接。

Harris和Shi-tomasi角点检测笔记(详细推导)

角点 一般来说&#xff0c;角点就是极值点&#xff0c;在某些属性上强度最大或者最小的孤立点、线段的终点或拐点等。其实理解角点可以按照我们的直觉来理解&#xff0c;以下图为例&#xff0c;图中用颜色标注的地方都是角点&#xff1a; 原图地址&#xff1a;理解经典角点检测…

C#编写dll, VB6.0调用

本周有个任务&#xff0c;实现一个数据上传接口&#xff0c;要求是VB6.0实现。 麻烦的是数据需要DES加密&#xff0c;网上没找到现成的DES VB6实现&#xff0c;于是加密的部分用C#实现&#xff0c;VB6代码调用&#xff0c;折腾一番&#xff0c;参考网上的教程&#xff0c;记录…

基于matlab训练分类网络以对3D点云中的对象进行分类(附源码)

一、前言 示例介绍了中概述的方法&#xff0c;其中点云数据被预处理为体素化编码&#xff0c;然后直接与简单的 3-D 卷积神经网络架构一起使用以执行对象分类。在最近的方法中&#xff0c;点云数据的编码可能更加复杂&#xff0c;并且可以与执行分类/对象检测/分割任务的网络一…

07-图5 Saving James Bond - Hard Version

题目&#xff1a; This time let us consider the situation in the movie “Live and Let Die” in which James Bond, the world’s most famous spy, was captured by a group of drug dealers. He was sent to a small piece of land at the center of a lake filled with…

golang cannot find package xxx in any of

目录结构如下 报错 cannot find package xxx in any of 1是路径没配对&#xff0c;把src去掉&#xff0c;因为GOPATH的规则好像是自动识别目录下的src路径&#xff0c;所以改成下面即可 2是别勾这个 否则会如下报错 含义参考 Enable Go modules integration在做什么 - 知乎 gol…

video-08-videojs黑屏问题(详解总结)

博主在开发的时候遇到这种情况&#xff0c;video黑屏问题&#xff0c;问题有两种情况&#xff0c;一种是视频黑屏且不可以播放&#xff0c;另一种是视频黑屏且自己播放&#xff0c;事件可以监听到 目录 一、问题类型1 视频黑屏且不可以播放 1.1 原因 1.2 解决方案思路 1.3 代…

fast admin报错:Unexpected token ‘<‘, “ (已解决)

报错信息&#xff1a; 在新加视图的时候的&#xff0c;点击编辑/添加忽然报这个错误&#xff0c;网上找了半天&#xff0c;js、视图、修修改改最后竟是一个小问题&#xff1b; 解决方法&#xff1a; 改为&#xff1a; 简单的说就是&#xff1a;btn-ajax ->btn-dialog

C# 二叉树的后序遍历

145 二叉树的后序遍历 给你一棵二叉树的根节点 root &#xff0c;返回其节点值的 后序遍历 。 示例 1&#xff1a; 输入&#xff1a;root [1,null,2,3] 输出&#xff1a;[3,2,1] 示例 2&#xff1a; 输入&#xff1a;root [] 输出&#xff1a;[] 示例 3&#xff1a; 输入…

php未定义索引数组怎么解决

在PHP中&#xff0c;如果使用一个未定义的数组索引&#xff0c;就会出现未定义索引错误。在这种情况下&#xff0c;需要采取措施解决这个问题。本文将为您介绍几种解决php未定义索引数组的方法。 1.使用isset()函数检查数组索引是否存在 使用函数isset()可以检查一个变量是否…

A股股民调查:58%股民表示“亏惨了”

A股上半年赚钱效应究竟如何&#xff1f; 东方财富网的一份调查显示&#xff0c;有58%的股民表示今年上半年亏惨了&#xff0c;另有9%的股民略有浮亏。 成交“先冷后热”、基金发行遇冷 A股的上半年已正式收官&#xff01;A股三大指数上半年涨跌不一&#xff0c;其中沪指累涨…

希尔排序(C语言)

希尔排序 一、希尔排序的原理二、动图演示三、代码实现四、实现从小到大排序五、希尔排序的优缺点 一、希尔排序的原理 希尔排序是插入排序的一种更高效的改进版本。 1.将原始待排数据按照设定的增量gap分成多组&#xff0c;每组有n / gap个元素。 2.对这些分组进行插入排序&a…