自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(262)
  • 资源 (7)
  • 论坛 (6)
  • 收藏
  • 关注

原创 SAP Spartacus简介

终于写到Jerry目前正在做的开发任务了。2015年的时候,那时Jerry已经做了一年多的SAP UI5开发,想进一步精进自己的开发技能,就申请了一个位于德国Walldorf总部的UI5 Extensibility开发的Fellowship Program,为期6个月。Jerry发了简历给接收Fellowship的团队老板,很快收到回复,团队老板对我的简历很感兴趣,但是表示这个Program没有Relocation Budget,如果我过去,在Walldorf的住宿得我自己掏钱解决。因为这不是商务出差,因

2020-10-31 14:31:38 146 2

原创 一个领导力培训的游戏练习

在business performance,employee engagement和personal brand之间做平衡。A: Be directB: Position as a Development opportunityC: Set the stage要获取更多Jerry的原创文章,请关注公众号"汪子熙":

2020-10-30 13:36:48 94

原创 SAP Spartacus的全局配置

方法1 B2cStorefrontModule.withConfig(config?: StorefrontModuleConfig)If you import B2cStorefrontModule in your app, preferred and easiest method to provide configuration is to use B2cStorefrontModule.withConfig(config?: StorefrontModuleConfig). StorefrontM

2020-10-30 13:20:58 61

原创 Angular里useExisting和useClass的使用场景

StackOverflow上的一个帖子:https://stackoverflow.com/questions/45152995/useclass-vs-useexisting从上图能看出,所有注入的示例都通过factory方法返回,只是factory方法的实现有所差异。As we can see in the picture above all of providers can be presented similar useFactory. When it’s the time to get a

2020-10-30 13:19:45 213

原创 Angular依赖注入UseClass和UseExisting的区别

例子:import { Injectable } from '@angular/core';let count = 0;@Injectable()export class MyService { seed: number; _count: number; constructor(){ this.seed = Number((Math.random() * 100).toFixed(0)); this._count = count++; console.log(

2020-10-30 13:15:14 314

原创 金庸逝世两周年纪念日:一个失意程序员的呓语

这是Jerry 2020年的第76篇文章,也是汪子熙公众号总共第258篇原创文章。两年前的今天,Jerry在回家的成都地铁一号线上,手机新闻app弹出了金庸逝世的消息,于是有了这篇文章:金庸的武侠世界和SAP的江湖。一年前的今天,使用代码列出金庸小说中使用过的所有成语。今天,2020年10月30日,金庸逝世两周年纪念日。在Jerry五月份做手术之前,通过网上查资料做的功课得知,不少病人在做完开颅手术之后,由于手术过程中生理上受到的创伤,术后或多或少都会出现一些心理方面的问题,比如焦虑,抑郁,甚至出现

2020-10-30 09:31:32 768 2

原创 两个SAP UI5脚手架应用加载性能的比较

加载一个只包含button控件的SAP UI5脚手架应用:http://localhost:3000/wt/18 requests1.1 MB transferred over network5.1 MB resources loaded by the pageDOM content loaded 1.19s:当纯HTML被完全加载以及解析时,DOMContentLoaded 事件会被触发,而不必等待样式表,图片或者子框架完成加载。Load: 3.06s一个易混用但不同的事件是,load,这

2020-10-29 10:08:35 98

原创 ABAP事物码SFW5里business function前面的双箭头图标是什么含义

有朋友在群里提问:各位老师,请问有哪位老师知道这个sfw5中的business function列表中,前面的这个斜的双箭头代表的是什么含义吗,我知道亮的小灯泡是标识激活的,灰的是表示未激活的,这个双箭头不知道是代表什么意思,请知道的老师指教,谢谢!答:双箭头代表reversible business function, 可反复开关。这篇文章有讲:https://dev-workbench.com/en/blog/activate-business-function-sap-erp要获取更

2020-10-28 22:57:26 193

原创 将网站SSL Server Certificate导入ABAP系统,证书Subject中文字符被转义引起的问题

有朋友在微信群里向我提问:早,Jerry 请教一个问题,你之前写过一篇 :如何把某个网站的SSL Server certificate链导入到ABAP Netweaver,我现在遇到一个问题,在ECC6 EHP8中导入某网站的证书,该网站的证书subject描述是中文的,导入系统中这个描述会被转义,导致系统里请求该网站的时候会报错,看日志似乎是无法匹配对应网站的证书。导入系统之后中文字符如下:最后这位Bruce朋友自己解决了该问题:是’SSL协议版本问题,配置成SSL1.2就可以了特此分

2020-10-28 22:50:25 94

原创 国内SAP UI5使用者关于性能优化和UI5 Web Component的讨论

有朋友提问:有UI5性能优化或者代码压缩的文章吗?UI5什么都好就是第一次加载太慢答:如果是UI5库文件的加载性能,我觉得应用开发人员没有啥可以做的。这是框架开发人员的任务问: 那UI5 Web Components React能解决加载问题吗 对UI5 Web Components不太理解它是否还是基于ui5的库还是react的库?答:我的个人理解,比如UI5 for React component, 是SAP自己制作的一个精简版的react library. 开发方式和原生React没有区

2020-10-28 22:41:12 128

原创 一个用于SAP UI5学习的脚手架应用,没有任何后台API的依赖

Jerry的系列 通过最简单的button控件,深入学习SAP UI5框架代码系列之零 里面曾经提到,我们会使用单步调试的方式,来学习SAP UI5框架的部分源代码实现。如果找一个现成的SAP UI5应用来调试,势必会增加我们调试的复杂度,所以对于这类调试任务,Jerry最喜欢的方式就是首先搭建一个小的脚手架应用(即很多英文的前端开发博客里提到的scaffold),隔离所有不必要的依赖,只包含了待调试的最小范围的特性(mini scope).以本系列为例,自始至终我们使用的SAP UI5应用,只包含一个

2020-10-28 19:38:28 84

原创 如何到SAP官网上查询某产品的roadmap - 路线图

有朋友在微信群上问我,关于SAP Commerce Cloud某些组件的路线图(road map).我们可以到如下的SAP官网自行查询:https://www.sap.com/products/roadmaps/finder-all.html输入Commerce Cloud:要获取更多Jerry的原创文章,请关注公众号"汪子熙":...

2020-10-27 21:55:14 145

原创 通过最简单的button控件,深入学习SAP UI5框架代码系列之零

Jerry曾经作为SAP成都研究院的Fiori应用开发人员,从事了将近3年的SAP CRM Fiori应用开发,在使用SAP UI5的过程中,遇到过形形色色的问题,不少都是通过调试SAP UI5框架代码自行解决的。平时也会有不少朋友向我咨询开发过程中遇到的和SAP UI5相关的问题,所谓授人以鱼不如授人以渔,如果一个SAP UI5开发人员对UI5框架代码有些许了解,在遇到问题时能够更有针对性更高效地去定位问题。然而SAP UI5框架代码浩如烟海,初学者往往鼓起勇气想一探究竟,但却不知道如何下手,最后迷失在U

2020-10-27 21:41:23 102 2

原创 如何在ABAP Development Tool里只显示能在SAP云平台上使用的ABAP资源

simply right clicking on the folder and selecting “Open Development Objects”.使用语法:api:USE_IN_SAP_CLOUD_PLATFORM type:CLAS XCO*

2020-10-27 21:19:28 51

原创 培训学习笔记 - 人们不买钻头,他们买孔洞

“People don’t buy drills – they buy holes. The drill happens to be the best means available to get that job done.”This statement reflects some idea about result driven approach. Customer pays for the hole we made, but do not care about how the hole is ..

2020-10-27 12:09:08 74

原创 通过Github Teams进行代码仓库的权限访问控制

I try to keep GitHub access organized using GitHub teams (and subteams)Thus I prefer assigning people to teams, not to the organization itself.

2020-10-27 11:26:35 111

原创 一个介绍SAP git-enabled CTS的视频

Jerry曾经写过一篇公众号文章:使用abapGit在ABAP系统和SAP云平台ABAP环境之间进行代码传输,介绍了如何通过abapGit将ABAP代码从OP系统导入到SAP云平台。最近在SAP社区上看到一个视频介绍了gCTS,借助它来实现ABAP持续集成,视频链接....

2020-10-26 21:29:15 66

原创 SAP Spartacus config-initializer.service.ts get isStable属性失败的调试

getStableConfig(…scopes: string[])注意中间这几层奇怪的callstack:this.unstable = undefined;这里看不到取数逻辑呢?语义是:仅当ongoingScopes存在并且this.areReady(scopes, ongoingScopes)返回为true,满足filter条件,才执行后续的take(1) operator.toPromise触发的subscribe,进而执行filter.一共有18个app init:..

2020-10-26 21:10:07 49

原创 SAP Spartacus用户登录之后读取用户信息的HTTP请求

让我有点吃惊的是,如下图所示:明明我是以中文登录,但这个HTTP请求的url里,lang参数仍然是en:https://spartacus-dev0.eastus.cloudapp.azure.com:9002/occ/v2/electronics-spa/users/current?lang=en&curr=USD其中参数current是user ID:该请求的认证方式:在auth.service.ts里发起的HTTP调用:要获取更多Jerry的原创文章,请关注公众号"汪子熙"

2020-10-26 21:04:24 50

原创 SAP Spartacus auth.service.ts里的user调用触发的源代码位置

返回类型是一个subscription.Represents a disposable resource, such as the execution of an Observable.subscription代表一个一次性的,可被处理的资源,即Observable的执行,调用subscribe方法才真正开始Observable的执行。A Subscription has one important method, unsubscribe, that takes no argument and.

2020-10-26 21:03:05 69

原创 SAP Spartacus ConfigInitializerService里的isStable属性

请求链接参数:lang=zh返回的title已经包含中文了:这是一个纯getter属性:/** * Returns true if config is stable, i.e. all CONFIG_INITIALIZERS resolved correctly */ get isStable(): boolean { return ( !this.initializerGuard || (this.ongoingScopes$.value &am

2020-10-26 21:01:27 62

原创 SAP Spartacus cms页面请求的语言参数

请求链接参数:lang=zh返回的title已经包含中文了:要获取更多Jerry的原创文章,请关注公众号"汪子熙":

2020-10-26 20:58:23 42

原创 外企工作必备英语日积月累 -2020年10月26日,星期一

今天学习了三个单词:Stakeholderstakeholder 这个词原义为:a person with an interest or concern in something, especially a business. 简单理解是在一件事情上,一个人与它有一定的关联,特别是商业领域。例子:How can you manage both internal and external stakeholders to drive success and longtermgrowth?Commitm

2020-10-26 20:55:22 112

原创 我的工作日志 - 2020年10月26日 星期一

Today I continue to work on issue 9462 nighty four sixty two, the translation issue- that is to provide proper Chinese translation for my-company content . Will finish today and send the translated file to Michal.By the way, I have a three-days training i

2020-10-26 20:46:56 63

原创 如何使用SAP UI5 SDK网站查询指定控件的属性如何使用

一个朋友向我提问,SAP UI5 input控件,如何实现inputField内容靠右显示?其实我也有好几年没做SAP UI5开发了,我也记不住这么多细节,但是类似问题,可以自行查询SAP UI5官网解决。打开UI5 SDK web site:https://ui5.sap.com/#/api在Filter栏里输入控件名称,比如Input:在搜索结果里点击Properties标签页,Ctrl + F,搜索关键字Align:点击setTextAlign这个方法:从帮助文档里我们得知

2020-10-26 16:51:00 83

原创 SAP Spartacus在没有修改用户名和密码的前提下,出现登录错误的原因

登录SAP Commerce Cloud的Spartacus Storefront报错:Failed to load resource: the server responded with a status of 401 ()unauthorized.handler.ts:25 There’s a problem with the “Oauth client” configuration. You must configure a matching Oauth client in the ba

2020-10-26 14:24:07 107

原创 SAP Spartacus FeaturesConfig

源代码:import { Injectable } from '@angular/core';import { Config } from '../../config/config-tokens';@Injectable({ providedIn: 'root', useExisting: Config,})export abstract class FeaturesConfig { features?: { [featureToggle: string]: string |

2020-10-26 14:00:07 61

原创 程序员打造个人品牌 - Personal Brand的重要性

Linkedin上有一个相关培训,大家感兴趣的可以去听:What makes you unique?Building influence requires a strong and compelling personal brand.compelling的含义:强大,引人入胜什么是personal brand?Your reputation or how you’re seen by others; what people can expert from you如何挖掘自己的person

2020-10-26 13:56:36 820

原创 信息安全培训的一些考题和答案

2020-10-26 13:35:52 108

原创 2020年十月下旬,再次更新了自己的linkedin工作经历

Frontend Developer in SAP Spartacus development teamAfter three years’ memorable time in SAP Chengdu Digital Innovation Space team, I take new challenges by joining SAP Spartacus development team, it’s my honor to work with geniuses located in European an

2020-10-26 10:33:05 110

原创 [Angular 依赖注入详谈] Angular Module Providers几种类型的实现源代码具体位置

providers: [{ provide: JerrySandBoxService }, { provide: GreetingService, useClass: EnglishGreetingService}, { provide: 'apiUrl', useValue: 'http://localhost:4200/heros' }, { provide: APP_CONFIG, useValue: HERO_DI_CONFIG }],在Angular @Ng

2020-10-25 16:50:57 117

原创 SAP Spartacus里使用injection token提供默认配置的一个例子

以AsmStoreModule为例:import { CommonModule } from '@angular/common';import { HttpClientModule } from '@angular/common/http';import { NgModule } from '@angular/core';import { EffectsModule } from '@ngrx/effects';import { StoreModule } from '@ngrx/store';

2020-10-25 13:57:38 78

原创 Angular @NgModule providers里multi等于true在源代码里如何体现的

本文以SAP Spartacus的DefaultConfigurationChunk这个injection token的注入为例:因为是通过helper函数注入的,所以默认multi标志位为true:multi数组有119个元素:在injectArgs方法里,最外层是一个大的for循环,逐一处理119个数组元素:每一次的for循环里,调用一个应用module提供的factory方法:例如这次循环,将useValue指定的配置对象返回:如下图所示,如果是useValue,直接返回:

2020-10-25 13:48:35 76

原创 SAP Spartacus名为Configuration的injection token

Configuration injection token创建的factory方法:factory方法返回的值是{}, inject(DefaultConfig)和inject(RootConfig)三者的深度merge.而DefaultConfig和ConfigChunk又是另外两个新的injection token:对于DefaultConfigChunk,有太多的module贡献在这个配置上了:DefaultConfigurationChunk:一个具体的例子:import { Com

2020-10-25 13:37:57 61 1

原创 支持CDS view的SAP ALV IDA - 使用前提

CHECK cl_salv_gui_table_ida=>db_capabilities( )->is_table_supported( iv_ddic_table_name = ‘TADIR’ ).get方法取得当前数据库的capability:要使用这个功能,ABAP版本必须是740 SP4以上。field-symbols: <version> type string. assign ('IF_ALV_Z')=>c_api_version to <ve

2020-10-25 13:25:20 112

原创 用SAP ALV Integrated Data Access展示CDS view数据的一些调试截图

底层取数逻辑借助了SADL:从下图能看出,该ALV的数据展示还是离不开SAP GUI的支持,本质上还是dynpro编程:使用ADBC(ABAP Database Connectivity)进行数据读取。关于ADBC和JDBC的比较,参考Jerry这篇博客。通过CL_SADL_SQL_STATEMENT方法的调试,能查到运行时执行的SQL表达式:SELECT COUNT( * ) AS "COUNT" FROM "ZFATINF" AS "ZFATINF" WITH PARAMETERS(

2020-10-25 13:23:11 68

原创 一行代码将SAP CDS view数据以ALV的方式输出

由于国情原因,ABAP ALV相关的报表开发在国内众多SAP技术交流群里永远都是一个热门话题。最近Jerry和朋友的技术交流群里,郭爷向大家介绍了ALV Integrated Data Access,能够轻松实现以ALV格式展示CDS view的数据。感谢郭爷的介绍,Jerry因为工作原因不会进行SAP Dynpro的编程,所以也不知道这个ALV IDA的存在。网上搜了一下,发现早在2018年就有SAP从业者写过介绍它的博客了:因为使用确实非常简单,Jerry不会重复博客里的内容,对其详细用法感兴

2020-10-25 12:36:03 205

原创 如何在SAP Spartacus里增添自定义的配置条目

方法很多,本文只介绍其中一种。app.module.ts里:export function jerryConfigFactory(): any { const configJerry = { name: 'Jerry' }; return configJerry;}在@NgModule定义里:providers: [ provideDefaultConfigFactory(jerryConfigFactory) ],运行时的效果:要获取更多Jerry的原

2020-10-24 22:40:17 69

原创 SAP Spartacus B2cStorefrontModule里提供的默认配置

实现代码:import { ModuleWithProviders, NgModule } from '@angular/core';import { provideConfig, provideDefaultConfig, provideDefaultConfigFactory,} from '@spartacus/core';import { CmsLibModule } from '../cms-components/cms-lib.module';import { Storef

2020-10-23 17:09:34 106

原创 SAP Spartacus StorefrontConfig

import { AnonymousConsentsConfig, AsmConfig, AuthConfig, CartConfig, CmsConfig, ExternalRoutesConfig, GlobalMessageConfig, I18nConfig, KymaConfig, OccConfig, PersonalizationConfig, RoutingConfig, SiteContextConfig, StateConfig,

2020-10-23 16:46:38 55

适合程序员使用的文件搜索工具,支持各种高级搜索条件

程序员

2021-02-20

在没有任何前端开发经验的基础上, 创建第一个 SAP Fiori Elements 应用 的配套源代码

在没有任何前端开发经验的基础上, 创建第一个 SAP Fiori Elements 应用 文章的配套源代码

2021-04-16

将近2万个汉语四字成语大全,txt格式存储

将近2万个汉语四字成语大全,txt格式存储

2021-04-06

dgreadiness_v3.6.zip

windows10 1909版本,如果想安装VMWare Workstation player 15.5.5,需要使用该powershell脚本,在Administration模式下,禁掉hyper V

2021-02-17

winzip70 (1).exe

winzip的经典版本,适用于windows 98实体操作系统及虚拟机

2021-02-16

自己用Java编写的有道云笔记图片批量下载工具

使用方式:java -jar tool.jar [0,1,2] 0,1,2分别是有道云笔记的编号。0的guid:c91a710af51c1e1b20f5d1da2140a9e4; 1的guid:4cc557ab9b7cbde0515b49a155c5dce3 2的guid:6eaae532daaa678cc610f2a34cbc9119

2020-11-29

《Jerry 2017年的五一小长假:8种经典排序算法的ABAP实现》文章的源代码

《Jerry 2017年的五一小长假:8种经典排序算法的ABAP实现》文章的源代码下载,解压之后手动复制粘贴到ABAP系统的SE24或者SE80事物码里。

2020-11-24

汪子熙的留言板

发表于 2020-01-02 最后回复 2020-03-20

怎样才是理想的程序员

发表于 2015-06-28 最后回复 2019-07-29

SAP的这三款CRM解决方案,您能区分清楚么

发表于 2018-01-08 最后回复 2018-01-09

脑子快”的程序员更优秀吗

发表于 2015-08-09 最后回复 2015-10-27

一个平庸程序员的自白

发表于 2015-08-22 最后回复 2015-08-22

金庸小说里程序猿的练级心法

发表于 2015-06-28 最后回复 2015-08-14

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人 TA的粉丝

提示
确定要删除当前文章?
取消 删除