登陸PO服務器,啓動JAVA客戶端三步(SAP PO 開發一)
搭建一個WebService接口環境(SAP PO 開發 二)
用SAP PO連通一個WebService接口(SAP PO 開發 三)
ERP系統RFC協議發送端通過PO連通WebService接口(SAP PO 開發四)
我的第一個SAP PROXY ABAP Program(SAP PO 開發五)
SAP PO (Process Orchestration) 中間件接口管理平臺(SAP PO 開發六)
C# 調用SAP PO中間件的WebService接口(SAP PO 開發八)
環境:SAP PO 750,VS2019
我們有一個SAP PO接口,JK0088,它可以輸入用戶名,查詢用戶的事務代碼。
我們用SOAPUI測試一下這個接口,OK沒有問題:
我們要用WINFORM程序去訪問這個接口,輸入用戶名,查詢到用戶的事務代碼。
一、建一個WINFORM,放一個分割容器,左邊放一個輸入框來輸入參數,右邊放一個listbox來顯示接口調用後的數據:
二、添加服務的引用,微軟什麼都給我們做了啊:
輸入SAP PO中webservice的WSDL,WSDL從IC中來,如圖:
WebService對象就這樣簡單的創建完成了:
三、然後我們寫幾行代碼,實現調用PO WS接口,全部的代碼如下:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.IO;
using System.Linq;
using System.Net;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.Xml;
namespace toSAPPOWebService
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
listBox1.Items.Clear();
//創建一個輸入參數對象
com.bngrp.podev.dt_JK0088 input = new com.bngrp.podev.dt_JK0088();
//控件提供參數
input.UNAME = textBox1.Text;
//創建一個接口調用對象
com.bngrp.podev.si_JK0088_donet_senderService jk0088 = new com.bngrp.podev.si_JK0088_donet_senderService();
//PO服務器要求一個用戶名,密碼
jk0088.Credentials = new NetworkCredential("poservice", "password");
//調用接口,得到返回表
com.bngrp.podev.dt_JK0088_respReturntable[] rt = jk0088.si_JK0088_donet_sender(input);
//遍歷返回的消息
foreach (com.bngrp.podev.dt_JK0088_respReturntable line in rt)
{
listBox1.Items.Add(line.TCODE.ToString());
}
}
}
}
四、控件中輸入個戶名,點查詢,得到查詢結果: