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. LUHN 模10 算法 银行卡校验

    信用卡Luhn算法(模10)具体的校验过程如下: 1.从卡号最后一位数字开始,逆向将奇数位(1.3.5等等)相加. 2.从卡号最后一位数字开始,逆向将偶数位数字,先乘以2(如果乘积为两位数,则将其减去 ...

  2. Django框架----Object Relational Mapping(ORM)

    Django中的ORM Django项目使用MySQL数据库 1. 在Django项目的settings.py文件中,配置数据库连接信息: DATABASES = { "default&qu ...

  3. scrapy_novel_python

    # _*_ coding:UTF _8_ from bs4 import BeautifulSoup import requests,sys class downloader(object): def ...

  4. WinCHM 制作开发知识库,So easy!!!

    开发过程中可能需要一些团队需要相互参照的东西,如前后台开发中的接口定义,团队开发规范,公用的类库,开发FAQ等 ,可以考虑用WinCHM这种工具制作开发知识库,然后发布至一Web服务器上,这样开发人员 ...

  5. 有道词典翻译(携带请求头和post参数请求)

    一.静态爬取页面信息 有道翻译网址:http://fanyi.youdao.com/ 在翻译中输入python 找到接口和请求的方式 参数是From Data类型 需要把参数数据转换为字典, 复制粘贴 ...

  6. mysql 查询重复值

     SELECT `code`,count(`code`) as count   FROM `yt_coupon`   GROUP BY `code` HAVING count(`code`) > ...

  7. sqlite3增删改查简单封装

    import sqlite3 class DBTool(object): def __init__(self): """ 初始化函数,创建数据库连接 "&quo ...

  8. Docker学习笔记之Docker 的简历

    0x00 概述 在了解虚拟化和容器技术后,我们就更容易理解 Docker 的相关知识了.在这一小节中,我将介绍关于 Docker 的出现和发展,Docker 背后的技术.同时,我们将阐述 Docker ...

  9. django模板继承

    可以将每个html公共的部分做成一个基本模板,其他模板继承这个基本模板,则会拥有基本模板的所有内容. views.py from django.shortcuts import render def ...

  10. Python概念-上下文管理协议中的__enter__和__exit__

    所谓上下文管理协议,就是咱们打开文件时常用的一种方法:with __enter__(self):当with开始运行的时候触发此方法的运行 __exit__(self, exc_type, exc_va ...