距2017年秋季的SAP TechEd大会上一位大佬Björn Goerke,SAP's Chief Technology Officer宣布了SAP Cloud Platform即将支持ABAP至今,已经过去了两年的时间. 目前国内的技术媒体平台上,已经有了部分概要性介绍SAP Cloud Platform ABAP编程环境的中文文章,但涉及到具体操作细节的文章比较少. Jerry最近会做一系列关于如何在SAP Cloud Platform上的ABAP编程环境上做开发的分享. 其实对于一个已经…
我的前一篇文章 使用Java+SAP云平台+SAP Cloud Connector调用ABAP On-Premise系统里的函数介绍了在SAP云平台的Neo环境下如何通过SAP Cloud Connector消费ABAP On-Premise系统里的函数.在那篇文章demo程序的Java代码里,我们实际是通过JCO(Java Connector)来远程调用ABAP On-Premise系统里的函数. 今天我们换个环境,试试SAP云平台的CloudFoundry环境. 同时我们也试试换一种方式来消…
在ABAP On-Premises环境下,使用ABAP编程消费第三方服务,相信很多ABAP顾问都已经非常熟悉了,无非就是使用CL_HTTP_CLIENT或者CL_REST_HTTP_CLIENT来发送和接收HTTP请求. 下图这短短的38行代码,展示了如何使用ABAP工具类CL_HTTP_CLIENT去访问百度首页并拿到回复. 从百度返回的响应,通过方法GET_CDATA获得,存储于变量rv_data内: 当然如果我们是做正式的产品开发的话,一般不会把第三方服务的URL硬编码在应用程序里,而是通…
SAP ABAP顾问朋友们,应该都使用过SAPLink这个工具.如果两个ABAP Netweaver系统没有建立起传输路径时,我们无法使用标准的SE10事务码创建传输请求的方式进行这两个系统间的代码传输.此时,SAPLink就有了用武之地. SAPLink简单地说就是一个报表和一系列插件的集合.如果我们期望在系统A和B之间传输代码,步骤为: (1) 在系统A和B上都安装SAPLink,其实也就是手动创建报表,然后从SAPLink的github上把源代码拷贝过来,激活即可: https://git…
在我们开始SAP云平台的架构之旅之前,让我们先看看SAP已经发布的一些其他云产品.这些云产品方案可以分为公有云和私有云两种. SAP公有云解决方案见下图最右侧,比较著名的有SAP SuccessFactors和SAP Cloud for Customer(C4C)等,作为SAP软件即服务(SaaS)的解决方案. 以SAP C4C为例,软件应用和计算资源均由SAP提供,部署于SAP的数据中心,用户通过Internet来访问使用软件.所有C4C客户以不同租户(tenant)的方式共享SAP数据中心的…
本文使用的例子源代码在我的github上. 在我的公众号文章在SAP云平台的CloudFoundry环境下消费ABAP On-Premise OData服务介绍了如何通过Cloud Connector连接ABAP On-Premise系统. 我创建了三个service的实例,详情如上图和下表: 服务类型 服务实例名称 connectivity connectivity-jerry-demo destination jerry-destination-lite xsuaa xsuaa-jerry-…
ABAP Netweaver 在事务码SICF里选择一个服务,在明细页面对Procedure字段点击F1,查看Logon Procedure的帮助文档. 通过这个链接打开对应的帮助文档,可以看到下列七种登录手段. 在我的SAP Community博客里有更详细的介绍:Learn more detail about Standard logon procedure Hybris Commerce 在Hybris Administration Console里,输入用户名和密码,点击LOGIN后:…
大家第一次看到SAP MTA这个词组,会联想到什么? Jerry第一次看到的时候,联想到的是那一个个足坛著名的三叉戟攻击组合. 海皇波塞冬(Poseidon),奥林匹斯十二神中地位仅次于宙斯的大神,海界的统治者,他的威严与大地无穷无尽的生命力及洪水相匹敌.三叉戟是海皇波塞冬的武器,外型似鱼叉,中间刺较长而边缘两根刺较短.这把武器因<圣斗士星矢>在国内的热播而被广大八零后九零后熟知. 由于三叉戟极富攻击力的视觉外观,国内外很多球迷喜欢将很多成为无数后卫噩梦的足坛攻击性组合称为"三叉戟&…
当我试图部署一个应用到SAP云平台的neo环境时: 指定Compute Unit Size为Lite: 点击Deploy按钮,遇到如下错误消息:there is no compute unit quota for subaccount: 解决方案 使用命令行neo set-quota --account wc4e460ce --user i042416 --host int.sap.hana.ondemand.com --amount lite:1 给subaccount分配一个计算单元: 分配…
Netweaver 以需要为一个用户上下文(User Context)能够在SAP extended memory区域中分配内存尺寸创建quota为例. 对于Dialog工作进程,使用事务码修改参数 ztta/roll_extension_dia. 对于非Dialog工作进程,quota参数为ztta/roll_extension_nondia.可以用关键字quota搜索更多RZ11参数. CloudFoundry Quota不够会怎样? 当我试图部署一个应用到SAP云平台的neo环境时,可能会…
最近Jerry写了一系列关于SAP云平台ABAP编程环境的技术文章,这些文章都是围绕着在云上的ABAP编程环境的具体知识点来分享,比如要完成一个具体的开发需求,所需要的编程步骤.这些文章陆续收到一些读者朋友的留言,咨询各种各样的问题,我才意识到Jerry缺少一篇对SAP Cloud Platform ABAP编程环境总体的介绍文章,比如SAP为什么要发布这款云平台上的编程环境,它的使用场景,和S/4HANA Cloud的关系是什么等等. 今天就把这篇迟来的文章补上. SAP Cloud Plat…
之前Jerry已经写了一系列SAP Cloud Platform ABAP编程环境的文章,当时使用的环境,是SAP专门为SAP社区导师们创建的. 当时也有朋友留言,询问大家何时才能使用到免费的SAP云平台ABAP编程环境.SAP社区上也有世界各地的开发者问这个问题,负责这个话题的同事们的答复大意是:我们一直在努力. SAP并没有食言.2019年9月25日,SAP大佬Thomas Jung,首席产品专家,社交媒体上的明星,转发了另一位大佬,同样是首席产品专家,SAP云平台ABAP编程环境的产品负责…
Jerry 2016年在学习SAP CDS view时,曾经写过一个CDS view的自学系列,其中有一篇提到了一个很方便的注解: @OData.publish: true 加上这个注解的CDS view,一旦激活后就会在ABAP Netweaver自动生成一个OData服务,在事务码/IWFND/MAINT_SERVICE里将其搜索出来并添加,就能够以OData服务的方式,消费这个view暴露出来的数据了. 当然@OData.publish这个注解为什么有这种神奇的魔力,在Jerry之前的博客…
先使用WebIDE创建一个HTML5应用.New->Project from Template: 从可选模板里选择SAPUI5 Application: 创建一个HTML5 Module,取名为frontend 自动创建了如下的项目文件. 对这个工程进行build: build成功后,将工程文件导出到本地,生成mta1.zip. 进入mta1文件夹,执行命令 java -jar mta.jar --build-target=CF --mtar=jerry.mtar 会生成命令行参数--mtar指…
关于JavaScript的跨域问题(Cross Domain)的讨论, 网上有太多的资源了.国内的程序猿写了非常多的优秀文章,Jerry这里就不再重复了. 直入主题,最近我正在做一个原型开发:通过SAP云平台和SAP Cloud Connector把On-Premise系统上的ABAP function module STFC_CONNECTION 暴露出来,给微信消费. 这个function module的逻辑很简单,直接把输入参数REQUTEXT的内容不加任何处理,拷贝到输出参数ECHOTE…
首先按照我这篇文章在SAP云平台上给您的账号分配MongboDB服务:如何在SAP云平台的Cloud Foundry环境下添加新的Service 然后从这个链接下载SAP提供的例子程序. 1. 使用命令行 cf marketplace查看当前SAP云平台的MongoDB的版本号:在我使用的SAP云平台上是v3.0-dev 使用如下命令行创建一个服务实例: cf create-service mongodb v3.0-dev mongo-service 2. 到例子程序的根目录下,使用命令mvn…
SAP云平台提供了两套运行环境:Cloud Foundry和Neo 从下图能发现,Cloud Foundry的运行环境,基础设施由第三方公司提供,比如Amazon亚马逊和Microsoft微软,SAP只负责提供和维护platform layer.而Neo环境的基础设施和platform layer均由SAP提供. Cloud Foundry运行环境包含了Cloud Foundry application runtime,基于Cloud Foundry基金会的开源应用平台构建而成. 这两个环境的具…
最近Jerry接到一个原型开发的任务,需要在微信里调用ABAP On Premise系统(SAP CRM On-Premise)里的某些函数.具体场景和我之前的公众号文章 Cloud for Customer和微信集成系列教程 描述的场景类似. 区别之处在于Cloud for Customer(C4C)是一个云解决方案,其OData Service/Web Service能够直接被Internet网络上的其他应用消费.而我最近要做的原型开发,需要消费的函数位于部署在Corporate Netwo…
我想在SAP云平台的Cloud Foundry环境下使用MongoDB的服务,但是我在Service Marketplace上找不到这个服务. cf marketplace返回的结果也没有. 解决方案 退回到Global Account,点击Entitlement,发现没有给Subaccount分配MongoDB: 分配成1,保存即可. 再回到organization的space下面,发现现在MongoDB服务可用了. cf marketplace能看到MongoDB服务的版本. 要获取更多Je…
通过SAP云平台上的destination我们可以消费Internet上的OData service或者其他通过HTTP方式暴露出来的服务. 创建一个新的destination: 维护如下属性: 点击Check Connection确保该destination正常工作: 在WebIDE里新建一个Fiori Worklist Application: 从Service url选择之前创建好的destination: 在Object Collection里选择Alphabetical_list_of…
方法1 - 使用Eclipse Eclipse里新建一个服务器: 服务器类型选择SAP Cloud Platform: 点Finish,成功创建了一个Server: Eclipse里选择要部署的项目,右键->Run as Server, 选择上一步创建的Server即完成部署. 方法2 - 使用SAP云平台Cockpit 选择本地打包好的war文件,点击Deploy按钮: 部署成功: 要获取更多Jerry的原创技术文章,请关注公众号"汪子熙"或者扫描下面二维码:…
用ABAP Development Tool登录SAP Cloud Platform ABAP编程环境后,对ABAP项目点击右键,选择属性,从而找到该环境的web访问的url: https://325df18f-0b6b-4d85-a127-ee6ad7437a7c.abap.eu10.hana.ondemand.com 登录web界面,实际上是一个Fiori UI,点击tile Maintain employee: 新建一个employee: 维护email地址: 给其维护业务角色: 要获取更…
光看封面配图,这篇文章很容易被误认为在讲成都的美食之一:火锅. SAP成都研究院坐落在被联合国教科文组织授予过"美食之都"称号的成都,所在的天府软件园,半径1公里左右星罗棋布着很多闻名的火锅美食店. 那么火锅和本文主题,SAP云平台同第三方CRM解决方案互联有何关联? HubSpot是一个微型的CRM解决方案,麻雀虽小,五脏俱全.大家可以使用邮箱免费注册然后体验. 从登录进去后的主页菜单能看出,一个CRM系统的三大核心模块Sales,Service和Marketing,HubSpot都…
前一篇文章<Hyperledger Fabric on SAP Cloud Platform>,我的同事Aviva已经给大家介绍了基于区块链技术的超级账本(Hyperledger)的一些概要知识.Fabric是超级账本5个并行项目中的其中之一,因为发展较为成熟,SAP云平台对Fabric也提供了较好的支持. 学完了前一篇文章的理论知识后,今天我们来动手实践一下. 我们做的这个练习的范围很窄,就是学会如何使用go语言开发一组微服务,这组微服务包含读和写两个API,能够将数据写入架设于SAP云平台…
我们生活在一个数字化时代.信息领域里发展迅猛的数字技术和成本不断降低的硬件设备,正以前所未有的方式改变着我们工作和生活的方式. Digital Mesh 美国一家著名的从事信息技术研究和提供咨询服务的Gartner公司,在2015年提出了未来IT技术的十大发展趋势.Gartner公司副总裁,David Cearley,在2015年美国Orlando召开的ITxpo专题研讨会上,将这十大发展趋势分为三类: 1. 数字网格 2. 智能机器/设备 3. 新的IT现实技术 隶属于这三类里的十大发展趋势并…
我开发了一个Java应用,部署到云环境上之后,用postman测试发现不能按照我期望的工作,但是返回的消息对我没有任何帮助. 因为部署在云端的应用很难像本地Java应用一样调试,所以我打算用SLF4J在Java代码里添加一些日志,然后查看该Java应用在云端执行产生的日志来排查问题. SLF4J的全称是Simple Logging Facade for Java, 即简单日志门面,这里的Facade实际上是面向对象的设计模式中的外观模式(Facade pattern).SLF4J不是具体的日志解…
在前一篇文章JPA + EclipseLink + SAP云平台 = 运行在云端的数据库应用我介绍了如何通过JPA和EclipseLink操作部署在SAP云平台上的HANA数据库实例. 在这篇文章里,我们使用JDBC代替JPA和Eclipse来完成同样的任务. 通过这个链接下载例子程序. 点击该超链接下载Java Web Tomcat 8 SDK. 例子程序位于该SDK的samples文件夹下. 导入至Eclipse之后,同样需要将其Targeted Runtimes改为Java Web Tom…
JPA(Java Persistence API)的实现Provider有Hibernate,OpenJPA和EclipseLink等等. 本文介绍如何通过JPA + Eclipse连接SAP云平台上的HANA数据库实例. 1. 登陆SAP云平台Cockpit,创建一个新的HANA DB实例: 设置数据库ID和System user的密码. 创建成功后,HANA DB实例状态为CREATING: 稍等片刻后,状态变为STARTED,可用. 2. 接下来就可以开发Java应用通过JPA操作这个云端…
1. 首先根据这个链接配置好Eclipse. 确保SAP Cloud Platform Tools for Java正确安装. 确保neo SDK的路径配置正确: 我使用的是下图这个SDK:neo-java-web-sdk-3.51.14.zip 将我的github 项目下载到本地, 导入到Eclipse去,确保本地能够运行成功. 然后新建一个服务器实例,类型为SAP Cloud Platform,主机名填hanatrial.ondemand.com: 应用程序的名称填jerrydemo,Run…
选择Services Catalog,根据关键字搜索到WebIDE服务,点击超链接打开WebIDE: 进入workspace,选择Git->Clone Repository: 从我的github clone:https://github.com/i042416/jerrylist clone完毕之后选择Run->Run index.html, 检查clone是否成功. 正常情况下应该看到这个UI5应用: 将该应用从git的workspace部署到SAP cloud platform上: App…