1. 程式人生 > >ABAP 建立並呼叫WebService

ABAP 建立並呼叫WebService

一. 建立Webservice


    有兩種方式建立webservice,一種是在se80中使用wizard生成,另一種是直接在se37中給予function生成,具體操作如下:


    1.se80中Create-->Enterprise Service/Web Service --> Web Servcie


      維護service名,選擇一個poit type(type point為一個功能點:如,Bapi中的Method,FunctionGroup中的一個function,一個function或者Message Interface:XI)


    2.se37 Utility--> More Utility --> Create WebService -->From the Function Module


    在建立完成的時候可以選擇立刻release,否則需要在wsconfig中進行release。


二 WSASMIN(WebService Administration)


     Tcode:wsadmin


    選中剛剛建立的Webservice ,可以有兩種操作測試webservice


   1.點選Ctrl+F8 --> 進入WebService HomePage(可以預覽webservice傳送接收的資料)


    2.點選Ctrl+F1 --> 預覽WSDL文件


三 在Wsconfig中設定Logon Data


    輸入Service Definition , 並填寫一個Variant,點選新建


   Create --> ICF Detail -->在Servcie列表中選擇需要設定Logo Data的Service,雙擊,在logon data的tab頁中設定logo data(設定了logon data的service在呼叫時就不會在彈出logon對話方塊)


    (tcode : SICF 可以直接進入Maintain Service)


四 在ABAP中呼叫Webservice


    1.建立Proxy


     se80 --> Create --> Enterprice Service --> Proxy


    在Proxy中指定wsdl連線


    2. 建立Logical Port (tcode:lpconfig)


    輸入Logical Port,指定Proxy Class,點選新建。


    3.建立程式


      在se80中,將Proxy拖入到workbench中,自動生成程式碼框架,根據自己需求進行簡單的修改,程式碼示例如下:


REPORT   zws_flight_gl.


DATA: g_proxy TYPE REF TO zglco_zgl_flight .
TRY.
    CREATE OBJECT g_proxy
      EXPORTING logical_port_name = 'ZGLPORT_FLIGHT'
         .
  CATCH cx_ai_system_fault .
ENDTRY.


DATA: output TYPE zglflight_get_list_response .
DATA: input TYPE zglflight_get_list .


input-max_rows = 10 .
TRY.
    CALL METHOD g_proxy->flight_get_list
      EXPORTING
        input   = input
      IMPORTING
        output = output.
  CATCH cx_ai_system_fault .
  CATCH cx_ai_application_fault .
ENDTRY.


DATA : ls_sflight TYPE zglbapisfldat.
DATA : lt_sflight TYPE zglbapisfldat_tab .


lt_sflight = output-flight_list-item .


LOOP AT lt_sflight INTO ls_sflight .


  WRITE    : ls_sflight-airlineid , ls_sflight-airline ,
             ls_sflight-connectid , ls_sflight-flightdate ,
             ls_sflight-airportfr , ls_sflight-cityfrom ,
             ls_sflight-airportto , ls_sflight-cityto ,
             ls_sflight-deptime ,    ls_sflight-arrtime ,
             ls_sflight-arrdate ,    ls_sflight-price ,
             ls_sflight-curr ,       ls_sflight-curr_iso .
  ULINE .


ENDLOOP.

相關推薦

ABAP 建立呼叫WebService

一. 建立Webservice     有兩種方式建立webservice,一種是在se80中使用wizard生成,另一種是直接在se37中給予function生成,具體操作如下:     1.se80中Create-->Enterprise Service/Web

如何在 VB 中以程式設計方式建立呼叫 Excel 巨集

1. 在 Visual Basic 中建立一個標準 EXE 專案。預設情況下會建立 Form1。 2. 單擊“專案”選單中的“引用”,然後選中“Microsoft Visual Basic for Applic

VC++建立呼叫Ocx控制元件

 我們寫一個Ocx控制元件加法的例子!!! 首先開啟VC,我們建立一個MFC ActiveX ControlWizard工程 切換到類檢視 選中_DActiveX,右擊選擇Add Method 彈出如下對話方塊,填入相應的引數 再次開啟類檢視,會發現_DActive

建立呼叫WebService

一、建立 1、建立Facade,在Facade裡面新增方法    2、釋出成webService    3、生成的目錄 4、在PaymentBillWSFacadeControllerBean編寫程式碼,實現Facade裡面的方法 5、製作私家包:把程式碼和Facade都

C++在另一個檔案建立名稱空間呼叫

head.h #ifndef KW_H #define KW_H namespace kw { extern std::string name; } #endif // KW_H head.cpp #include <string> #includ

自動建立資料夾 pictureBox 顯示圖片 呼叫系統窗體開啟資料夾

設定pictureBox1 圖片自適應: SizeMode:StretchImage BackgroundImagelayout : Stretch; 點選開啟檔案效果如下: 程式碼實現: using System; using System.Collect

C# 建立、部署和呼叫WebService的簡單示例

webservice 可以用於分散式應用程式之間的互動,和不同程式之間的互動。 概念性的東西就不說太多,下面開始建立一個簡單的webservice的例子。這裡我用的是Visual Studio 2015開發工具。 首先建立一個空的Web應用程式。 然後滑鼠右

定義一個包含私有成員變數和函式的類,再定義一個內部類,在內部類函式中訪問外部成員變數,呼叫外部函式。在外部類函式中建立內部類物件,呼叫內部類函式

public class Test5 {         //定義包含私有成員變數和函式         private int a = 201320883;         private voi

Linux C 建立新目錄,然後轉換工作空間到該目錄下,呼叫wget函式下載檔案到新建目錄下

#include<stdio.h> #include <sys/stat.h> int main () { char wget_cmd[100]; char *pathname="/var/www/html/sssnsd/"; char buf[5

VB呼叫WebService(直接Post方式)解析返回的XML

Function TodoTaskBySOAP(postURL As String,host As String, n As Integer,FilterItem() As String,OwnerSSICID() As String ,AppID() As String

oracle 在plsql中建立procedure呼叫

Create table create table A   (   USERID NUMBER(38),   PWD VARCHAR2(30)   )   tablespace USERS   pctfree 10   initrans 1   max

C#呼叫WebService解析返回的XML

string title = HttpUtility.UrlEncode(txtTitle.Text); string content = HttpUtility.UrlEncode(content1.Value); str

java呼叫webservice(並不是以.wsdl結尾的)對返回的jason資料進行解釋

1、返回的jason格式為: { "iChatAccountList": [ { "acctNo": "string", "acctStat": "string", "contNo": "string", "con

webservice的簡單用法(建立以及呼叫

2018年02月24日整理一下最近三天的工作內容,事情大概是這個樣子的,客戶提了一個要求,在原有的專案的基礎上,增加一個介面,主要用於同步人事新入職員工的資料,客戶要求使用webservice來開發這個介面,客戶那邊的開發人員傳一個表過來,然後我定義一個介面負責接收客戶傳過來

3分鐘完成在VS建立一個DLL呼叫

目錄 step 1 : 建立Win32工程(DLL工程) step 2 : 建立MFC工程(對話方塊測試工程,Demo) step 3 : 設定Win32工程屬性(DLL工程) step 4 : 設

用axis解析webservice呼叫

使用axis1.4呼叫webservice有兩種簡單的方式: 1、直接使用axis提供的API呼叫,適用於webservice介面的引數和返回值都是String的情況。 Java程式碼   try {       Call call = (Call)new Service().createCal

JBoss呼叫Webservice出現org.jboss.ws.core.jaxws.spi.ProviderImple not found錯誤

一、環境介紹 Linux CentOS 6.5 64bit,JDK1.7 ,JBoss 4.3.0-GA,專案工程引用cxf框架,版本號為2.5.0 二、報錯資訊 專案中自身釋出的Webservice沒有問題,外部可以正常呼叫,但專案作為客戶端呼叫其他系統釋出的Webservic

java根據WSDL文件,如何呼叫WebService

作為一個java開發人員,當我們獲取到了對方提供的wsdl地址,然後在網頁上能夠訪問wsdl文件以後,如何呼叫對方的webservic藉口呢? 一下有幾種方法,可以參考一下。 第一種是      HttpURLConnection方式 第二種是 &n

node總結之建立使用RESTful API瞭解下

REST即表述性狀態傳遞(英文:Representational State Transfer,簡稱REST)是Roy Fielding博士在2000年他的博士論文中提出來的一種軟體架構風格,而這個表述性狀態轉移是一組架構約束條件和原則。 我們把滿足這些約束條件和原則的應用程式或設計叫做RE

使用axis呼叫webservice時,服務端接收到的引數為null

通過axis呼叫,需要注意兩點: 1)在call.setOperationName是必須通過Qname來制定namespaceURI 2)在設定引數時,不使用服務端定義的引數名,而是arg0~argN來定義,也不需制定namespaceURI,上述程式碼 call.addParamete