IF IM_UDATE1 <> IM_UDATE2."get data from bw
    CLEAR IT_SEL_TAB.
    IT_SEL_TAB = '( /BIC/Z01CH0184 >= '''.
    IT_SEL_TAB+20(1) = ''''.
    IT_SEL_TAB+21(8) = IM_UDATE1.
    IT_SEL_TAB+29(1) = ''''.
    IT_SEL_TAB+30(24) = ' AND /BIC/Z01CH0184 <= '''.
    IT_SEL_TAB+54(8) = IM_UDATE2.
    IT_SEL_TAB+62(1) = ''''.
    IT_SEL_TAB+63(2) = ' )'.
    APPEND IT_SEL_TAB.
  ELSE.
    CLEAR IT_SEL_TAB.
    IT_SEL_TAB = '( /BIC/Z01CH0184 = '''.
    IT_SEL_TAB+20(8) = IM_UDATE1.
    IT_SEL_TAB+28(1) = ''''.
    IT_SEL_TAB+29(2) = ' )'.
    APPEND IT_SEL_TAB.

ENDIF.
*--------------------OPTIONS(WHERE)----------------------*

*-------------------get field catalog--------------------*
  NAMETAB1-FIELDNAME = '/BIC/Z01CH0165'.
  APPEND NAMETAB1.
  NAMETAB1-FIELDNAME = '/BIC/Z01CH0173'.
  APPEND NAMETAB1.

NAMETAB1-FIELDNAME = '/BIC/Z01CH0174'.
  APPEND NAMETAB1.
  NAMETAB1-FIELDNAME = '/BIC/Z01CH0175'.
  APPEND NAMETAB1.
  NAMETAB1-FIELDNAME = '/BIC/Z01CH0183'.
  APPEND NAMETAB1.
  NAMETAB1-FIELDNAME = '/BIC/Z01CH0184'.
  APPEND NAMETAB1.
*-------------------get field catalog--------------------*

*-------------------get data from BW---------------------*
  CALL FUNCTION 'RFC_READ_TABLE'
*    DESTINATION LS_DESTINATIN
    DESTINATION 'BWPCLNT001'  "BW SYSTEM
    EXPORTING
      QUERY_TABLE                = '/BIC/AZ01CM00400' "The table from BW system
*    DELIMITER                  = ' '
*    NO_DATA                    = ' '
*    ROWSKIPS                   = 0
*    ROWCOUNT                   = 0
    TABLES
      OPTIONS                    = IT_SEL_TAB[]
      FIELDS                     = NAMETAB1[]
      DATA                       = LT_DATA[]
   EXCEPTIONS
     TABLE_NOT_AVAILABLE        = 1
     TABLE_WITHOUT_DATA         = 2
     OPTION_NOT_VALID           = 3
     FIELD_NOT_VALID            = 4
     NOT_AUTHORIZED             = 5
     DATA_BUFFER_EXCEEDED       = 6
     OTHERS                     = 7
            .

IF SY-SUBRC <> 0.
    CASE SY-SUBRC.
      WHEN 1.
        E_MSGTY = 'E'.
        E_ERMSG = 'RFC Error : Internal Error'.
      WHEN 2.
        E_MSGTY = 'E'.
        E_ERMSG = 'RFC Error : No fields in table' .

WHEN 3.
        E_MSGTY = 'E'.
        E_ERMSG =  'RFC Error : Table is not active'.

WHEN 4.
        E_MSGTY = 'E'.
        E_ERMSG =  'RFC Error : No authorization' .

WHEN OTHERS.
        E_MSGTY = 'E'.
        E_ERMSG =  'RFC Error : No records selected'.
    ENDCASE.
  ENDIF.

远程主动读取数据 RFC_READ_TABLE的更多相关文章

  1. ArcGIS Engine从服务器(ArcSDE geodatabases)读取数据

    从远程服务器读取数据进行处理,直接贴代码: public class ConnectDB { private static String SERVER = "xxx.xxx.xxx.xxx& ...

  2. 一个I/O线程可以并发处理N个客户端连接和读写操作 I/O复用模型 基于Buf操作NIO可以读取任意位置的数据 Channel中读取数据到Buffer中或将数据 Buffer 中写入到 Channel 事件驱动消息通知观察者模式

    Tomcat那些事儿 https://mp.weixin.qq.com/s?__biz=MzI3MTEwODc5Ng==&mid=2650860016&idx=2&sn=549 ...

  3. 第十七章,txt文件的写入和读取数据结合练习(C++)

    #include <iostream> #include <fstream> int main(int argc, char** argv) { std::string str ...

  4. Delphi判断文件是否正在被使用(CreateFile也可以只是为了读取数据,而不是创建)

    首先,我们先来认识下CreateFile函数,它的原型如下   HANDLE CreateFile( LPCTSTR lpFileName,    //指向文件名的指针 DWORD dwDesired ...

  5. 第十二节,TensorFlow读取数据的几种方法以及队列的使用

    TensorFlow程序读取数据一共有3种方法: 供给数据(Feeding): 在TensorFlow程序运行的每一步, 让Python代码来供给数据. 从文件读取数据: 在TensorFlow图的起 ...

  6. ExtJS ComboBox同时加载远程和本地数据

    ExtJS ComboBox同时加载远程和本地数据 原文:http://gblog.hbcf.net/index.php/archives/233 ComboBox比较特殊需求,将远程数据和本地数据同 ...

  7. JDBC Java 程序从 MySQL 数据库中读取数据,并备份到 xml 文档中

    MySQL 版本:Server version: 5.7.17-log MySQL Community Server (GPL) 相关内容:JDBC Java 程序从 MySQL 数据库中读取数据,并 ...

  8. struts2中从后台读取数据到<s:select>

    看到网上好多有struts2中从后台读取数据到<s:select>的,但都 不太详细,可能是我自己理解不了吧!所以我自己做了 一个,其中可能 有很多不好的地方,望广大网友指出 结果如图 p ...

  9. [MVC4]ASP.NET MVC4+EF5(Lambda/Linq)读取数据

    继续上一节初始ASP.NET MVC4,继续深入学习,感受了一下微软的MVC4+EF5(EntityFramework5)框架的强大,能够高效的开发出网站应用开发系统,下面就看一下如何用MVC4+EF ...

随机推荐

  1. 异常检测LOF

    局部异常因子算法-Local Outlier Factor(LOF)在数据挖掘方面,经常需要在做特征工程和模型训练之前对数据进行清洗,剔除无效数据和异常数据.异常检测也是数据挖掘的一个方向,用于反作弊 ...

  2. vue-cli项目npm run build后,index.html无法在浏览器打开

  3. Django 应用 静态文件配置

    Django 应用 <!DOCTYPE html> <html lang="en"> <head> <meta charset=" ...

  4. linux上限值网速、限值带宽

    Linux操作系统中的流量控制器TC(Traffic Control)用于Linux内核的流量控制,主要是通过在输出端口处建立一个队列来实现流量控制. Linux流量控制的基本原理如下图所示. 接收包 ...

  5. Django框架----中间件

    我们已经会了给视图函数加装饰器来判断是用户是否登录,把没有登录的用户请求跳转到登录页面.我们通过给几个特定视图函数加装饰器实现了这个需求.但是以后添加的视图函数可能也需要加上装饰器,这样是不是稍微有点 ...

  6. 一位前辈的博客,收获颇丰,包括Android、Java、linux、前端、大数据、网络安全等等

    https://www.cnblogs.com/lr393993507/   魔流剑

  7. python分割txt文件

    a=open('A.txt','r').readlines() n=3 #份数 qty=len(a)//n if len(a)%n==0 else len(a)//n+1 #每一份的行数 for i ...

  8. Oracle 手动建库

    Oracle在创建实例的时候,多数采用的是dbca的形式..其实手动建库可以提供更大的自由发挥的空间,根据情况进行定制 登录Oracle用户 指定SID(Instance Identifier) ex ...

  9. 关于functools模块的wraps装饰器用途

    测试环境:Python3.6.2 + win10 +  Pycharm2017.3 装饰器之functools模块的wraps的用途: 首先我们先写一个装饰器 # 探索functools模块wraps ...

  10. shell实现自动部署两台tomcat项目+备份

    就做个记录吧, 其实也没啥好说的. 主机 #!/bin/bash TODAY=$(date -d 'today' +%Y-%m-%d-%S) MIP="192.168.180.24" ...