当前位置: 首页 > news >正文

宁波做网站优化公司搜网站技巧

宁波做网站优化公司,搜网站技巧,wordpress to app,购物网站的详细设计本篇博文不再重复ABAP调用外部服务器的基础,只介绍 NCo3 开发的过程和要点。需要了解相关知识点的小伙伴们自行参考: SAP接口编程 之JCo3.0系列(06) - Jco服务器端编程 PyRFC 服务器端编程要点 创建项目 新建一个 Console 项目,选择 .Net …

本篇博文不再重复ABAP调用外部服务器的基础,只介绍 NCo3 开发的过程和要点。需要了解相关知识点的小伙伴们自行参考:

SAP接口编程 之JCo3.0系列(06) - Jco服务器端编程
PyRFC 服务器端编程要点

创建项目

新建一个 Console 项目,选择 .Net Framework 平台。目前 NCo 3.1 不支持 .Net Core。

点击「Create」按钮,完成项目的创建。

添加引用

SAP 已经对 NCo3.0 停止技术支持,所以建议使用 3.1 版本。3.1 版可以从 SAP Connector for Microsoft .NET 下载,但需要下载权限。在本文的源码中,提供了 NCo3.1 的安装程序,以方便没有下载权限的同学。

NCo3.1 安装之后 sapnco.dll 和 sapnco_utils.dll 位于不同的文件夹中。默认的位置为:

因为我下载的是 64 位版本,dll 文件在 GAC_64 文件夹下面。


配置

NCo3 需要登录 SAP 的配置和以及 RFC 服务器的配置,通过两个类来进行配置。首先是登录到 SAP 的配置,创建 SAPDestininationConfig 类,实现 IDestinationConfiguration 接口:

public class SAPDestininationConfig : IDestinationConfiguration
{public event RfcDestinationManager.ConfigurationChangeHandler ConfigurationChanged;public bool ChangeEventsSupported(){return false;}public RfcConfigParameters GetParameters(string destinationName){if ("ECC".Equals(destinationName)) {RfcConfigParameters parms = new RfcConfigParameters();parms.Add(RfcConfigParameters.AppServerHost, "sapecc6");  // or ip addressparms.Add(RfcConfigParameters.SystemNumber, "00");        // instance numberparms.Add(RfcConfigParameters.SystemID, "D01");parms.Add(RfcConfigParameters.User, "STONE");parms.Add(RfcConfigParameters.Password, "w123456");parms.Add(RfcConfigParameters.Client, "001");parms.Add(RfcConfigParameters.Language, "EN");parms.Add(RfcConfigParameters.PoolSize, "5");return parms;}else {return null;}}

RFC Server 的配置:

public class RFCServerConfig : IServerConfiguration
{public event RfcServerManager.ConfigurationChangeHandler ConfigurationChanged;public bool ChangeEventsSupported(){return false;}public RfcConfigParameters GetParameters(string serverName){if ("PRD_000".Equals(serverName)) {RfcConfigParameters parms = new RfcConfigParameters();parms.Add(RfcConfigParameters.RepositoryDestination, "ECC");parms.Add(RfcConfigParameters.GatewayHost, "sapecc6");parms.Add(RfcConfigParameters.GatewayService, "sapgw00");parms.Add(RfcConfigParameters.ProgramID, "RFCSERVER");parms.Add(RfcConfigParameters.ConnectionCount, "5");return parms;}else {return null;}}
}

ABAP 函数处理器

namespace SAPNCo3.ServerScenario
{public class FunctionModuleHandler{[RfcServerFunction(Name = "STFC_CONNECTION")]public static void StfcConnection(RfcServerContext context, IRfcFunction function){Console.WriteLine($"Received function call {function.Metadata.Name} from system {context.SystemAttributes.SystemID}.");// 从ABAP获取 import 参数String reqtext = function.GetString("REQUTEXT");Console.WriteLine($"REQUTEXT = {reqtext}\n");// 设置 export 参数function.SetValue("ECHOTEXT", reqtext);function.SetValue("RESPTEXT", "从RFC服务器返回的消息!");}}
}

RFC Server

最后在 Program.cs 中直接创建 RFC Server,并启动:

using SAP.Middleware.Connector;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;namespace SAPNCo3.ServerScenario
{internal class Program{static void Main(string[] args){// Client configurationRfcDestinationManager.RegisterDestinationConfiguration(new SAPDestininationConfig());// Server ConfigurationRfcServerManager.RegisterServerConfiguration(new RFCServerConfig());// Function module handlersType[] handlers = new Type[1] { typeof(FunctionModuleHandler) };// Create RFC ServerRfcServer server = RfcServerManager.GetServer("PRD_000", handlers);// Start serverserver.Start();// 等待client发起调用,指导用户按下 X 键Console.WriteLine("Server has been started. Press X to exit.\n");while (true) {if (Console.ReadLine().Equals("X"))break;}// Server shut downserver.Shutdown(true);            }}

源码

sap_interface_nco3: SAP NCo 3.0 Demos

http://www.yayakq.cn/news/563920/

相关文章:

  • 济南做html5网站网站html优化
  • 网站开发不懂英语pc端和移动端的网站区别是什么
  • 教育系统网站建设seo竞价
  • 宜昌市网站建设公司江西seo推广软件
  • 北京 网站建设公司签订网站建设协议应注意事项
  • 做网站阿里云买哪个服务器好点百度怎样注册免费的网站
  • 做网站每年需付费吗wordpress文章微信公众号推送
  • 网站 宣传册好看的wordpress主题
  • 兴安盟住房和城乡建设部网站最佳磁力搜索引擎
  • 城市建设厅官方网站中企动力科技股份有限公司做网站
  • 品牌网站建是啥网站建设客户在哪里找
  • 网站做付费推广都需要问什么html网站开发
  • cloud域名注册网站电商平台介绍
  • 知道域名怎么进入网站jsp做的网站难吗
  • 为什么做美妆网站衡阳网站备案
  • 律师做网站费用html在线运行
  • 天津做网站认准津坤科技菏泽网站建设多少钱
  • 祖庙网站建设公司网页布局照着别的网站做会侵权吗
  • 泰安网站建设推广优化wordpress用户头像插件
  • 浙江网站推广企业系统开发去哪家
  • 查国外网站备案计算机网络技术是干嘛的
  • 淄博做网站市场网站数据库空间增大
  • 网站专题页面案例seo搜索引擎优化是什么意思
  • 北京网站优化效果长沙做网站品牌
  • 用空间做网站如何做好安全自己怎么设计公司logo
  • 哈尔滨百度网站快速优化自主设计和创建网站
  • 做网站用不用thinkphp大型展厅设计公司
  • 学校网站建设管理相关规定网站建设工资多少
  • 做网站效果怎么样wordpress 外贸 插件
  • 中国建设银行的网站色彩wordpress消耗性能吗