Fork me on GitHub
摘要:看到SAP社区中有人问是否存在ABAP实现的Blowfish加密算法,无人回答。于是动手实现了一个blowfish-abap。通过blowfish-abap可以在SAP系统中使用Blowfish对数据进行加密。 什么是Blowfish? Blowfish是一种对称密钥分组密码算法,它有实现简单、不需 阅读全文
posted @ 2019-10-21 16:35 氢氦 阅读 (114) 评论 (0) 编辑
摘要:一图表明本文将要介绍的工具: JSON是常见的数据格式,经常用于接口开发。ABAP开发者通常使用/ui2/cl_json来把JSON数据转换为相应的ABAP类型。 在转换前,必须要定义相应的ABAP类型,比如,如果要转换如下的JSON数据, 则必须定义相应的ABAP结构类型, 转换的代码如下, 这是 阅读全文
posted @ 2019-10-10 11:34 氢氦 阅读 (184) 评论 (0) 编辑
摘要:本文是Azure Application Insights REST API的简单介绍,并会包含一个通过Python消费API的示例/小工具。 新加入的team中的一项工作是制作日常的运维报表,制作方式是手工前往portal.azure.com,在网页中多次执行不同的查询语句、导出excel,之后再 阅读全文
posted @ 2019-09-21 13:42 氢氦 阅读 (174) 评论 (0) 编辑
摘要:前几天群里有人问ABAP有没有Geohash函数,用来帮助SAP存储门店位置、实现查找附近门店的功能。因为没有查到,所以我动手写了一个。 Geohash是什么 Geohash是一种公共域地理编码系统,它将一个地理位置编码成一串字母和数字。字符串越长,表示的范围越精确。两个Geohash字符串的相同前 阅读全文
posted @ 2019-08-30 20:25 氢氦 阅读 (269) 评论 (0) 编辑
摘要:最近参与了一个十分仓促的SAP项目,无论是需求收集、功能设计、程序实现、测试、用户培训,几乎每个环节都有不小的疏漏。最终匆忙上线,自然也导致了悲剧性的结果:上线第二天就发现了几百个订单错误,用户的投诉纷至沓来,后续又持续地产生其它错误和误解。在接下来的一周里面,项目相关人几乎每天都要加班到深夜,而且 阅读全文
posted @ 2019-07-25 23:29 氢氦 阅读 (2048) 评论 (10) 编辑
摘要:本文介绍了Microsoft Dynamics 365(以下简称D365)中的两个概念,事件框架(Event Framework)与事件执行管道(Event execution pipeline)。 本文适用于:Applies To: Dynamics 365 (online), Dynamics 阅读全文
posted @ 2019-06-27 21:20 氢氦 阅读 (294) 评论 (0) 编辑
摘要:数据库表中的索引可以加快查询的速度。索引是数据库表字段的有序副本。附加的字段包含指向真实数据库表行的指针。排序可以使访问表行的速度变快,例如,可以使用二分搜索。数据库表至少有一个主索引,由它的key字段定义。它也可以有一到多个二级索引。 本文链接:https://www.cnblogs.com/hh 阅读全文
posted @ 2019-06-24 19:52 氢氦 阅读 (851) 评论 (1) 编辑
摘要:适用于Dynamics 365 for Customer Engagement apps 9.x版本。 本文是一篇翻译,原文来源是微软官方文档。 本文链接:https://www.cnblogs.com/hhelibeb/p/11042391.html 概述 Client API form cont 阅读全文
posted @ 2019-06-18 22:14 氢氦 阅读 (198) 评论 (0) 编辑
摘要:对SAP系统而言,RFC最常见的系统间通信方式,SAP与SAP系统及SAP与非SAP系统之间的连接都可以使用它。它的使用便利,功能强大,在各种接口技术中,往往是最受(ABAP开发者)青睐的选择。 查询接口通信的日志记录,有助于排查和解决相关开发工作中遇到的问题(以及甩锅给对方系统)。对于webser 阅读全文
posted @ 2019-05-23 19:52 氢氦 阅读 (401) 评论 (1) 编辑
摘要:大人常常是成年人的代名词,有时候也被用来指长辈。本文将试着重新定义大人。 年龄相同的人,可能有相似的身体发展,但思想与心灵的发展水平却可能有很大差别。一个只有身体成长到十八岁的人,是不完全的大人。在我看来,一个可以被称为大人的人,需要满足以下要求, (原文发表于贴吧,因最近众所周知的事件,移到这里) 阅读全文
posted @ 2019-05-22 20:08 氢氦 阅读 (283) 评论 (3) 编辑
摘要:在程序开发的过程中,相同的功能往往有不同的实现方式。对于可以实现同样功能的不同代码,复杂度是用于比较其质量优劣的重要指标。 在本文中,代码复杂度是指代码被理解/修改的难易程度。越容易被理解、修改的代码的复杂度越低;反之其复杂度越高。 复杂度低的代码比复杂度高的代码有更多好处,比如, 从代码“查逻辑” 阅读全文
posted @ 2019-05-16 20:37 氢氦 阅读 (878) 评论 (5) 编辑
摘要:Dynamics 365 CRM提供了多种编程模型,你可以灵活地按需选用最佳模式。 本文是对Dynamics 365 CRM编程模型的综述。 概览 下图表明了Dynamics 365 CRM的主要可编程场景。请根据整体解决方案选择合适的模型。 从扩展的角度来看,你可以在Dynamics 365中实现 阅读全文
posted @ 2019-04-16 22:08 氢氦 阅读 (1271) 评论 (3) 编辑
摘要:类是不是越小越好?最近在读John Ousterhout的《A Philosophy of Software Design》,感到作者文笔流畅,书中内容具有启发性。这里摘要一部分内容,以供开发工作中的参考、学习。 本文链接:https://www.cnblogs.com/hhelibeb/p/107 阅读全文
posted @ 2019-04-15 17:21 氢氦 阅读 (474) 评论 (0) 编辑
摘要:最近加入一个Spark项目,作为临时的开发人员协助进行开发工作。该项目中不存在测试的概念,开发人员按需求进行编码工作后,直接向生产系统部署,再由需求的提出者在生产系统检验程序运行结果的正确性。在这种原始的工作方式下,产品经理和开发人员总是在生产系统验证自己的需求、代码。可以想见,各种直接交给用户的错 阅读全文
posted @ 2019-03-21 15:13 氢氦 阅读 (726) 评论 (0) 编辑
摘要:测试是软件开发中的基础工作,它经常被数据开发者忽视,但是它很重要。在本文中会展示如何使用Python的uniittest.mock库对一段PySpark代码进行测试。笔者会从数据科学家的视角来进行描述,这意味着本文将不会深入某些软件开发的细节。 本文链接:https://www.cnblogs.co 阅读全文
posted @ 2019-03-11 11:11 氢氦 阅读 (491) 评论 (0) 编辑