一个 SAP 开发工程师的 2022 年终总结:四十不惑
儿时对于一年四季,我最中意的便是冬季,因为冬季意味着即将到来的寒假,可以回到老家,和多日不见的玩伴们痛痛快快玩上一段时间。冬季也总是和春节联系在一起,过年就意味着可以从长辈那拿到一笔压岁钱,把自己心仪了大半年的玩具和图书带回家。那种在等待了很长时间后,终于能够如愿以偿的满足感,现在回忆起来仍然觉得很幸福。 长大以后,尤其是 35 岁以后,我对每年年末有一种说不出的复杂感情,甚至有点抗拒年末的来临
交流学习SAP ERP的各种问题和方法,如何快速入行?
笔者从 2007 年大学计算机专业硕士毕业后加入 SAP 成都研究院从事 SAP 各种标准产品的设计和研发工作已经十五余年,期间也曾经在 SAP ERP 上工作过一段时间,当然也包含 SAP 次世代的最新 ERP 产品 S/4HANA. 在我看来,SAP ERP 有一定的进入门槛,这个门槛体现在 SAP ERP 各个模块的行业知识和底层的 ABAP 技术实现。入门 SAP ERP,无论是其业务模
SAP MM 模块的入门者,想学习 ABAP 编程语言应该如何入手?
本人自 2007年计算机专业研究生毕业加入 SAP 成都研究院,在这之前也从未听说过 ABAP 这门编程语言,我算是 ABAP 零基础开始学习。根据我的过往经验,可以先简单了解一下 ABAP 这门编程语言诞生的时代背景,它是为了解决一个什么特定领域的问题而设计的?ABAP 编程语言的现状和将来的发展方向?了解了这些问题,学习 ABAP 时会更有针对性。对于这些问题,笔者另一篇知乎文章已经做了详细的
SAP R/3,SAP ECC 和 SAP S/4HANA 的联系和区别
有朋友在我的知识星球里提问: 汪哥,我想问一下,就是 r/3 和 ecc 和 s/4 之间的联系和区别。 我们首先聊聊 R/3 和 S/4 的联系和区别。 在笔者这篇文章ABAP 真的会过时吗?聊聊 ABAP 的过去,现在和未来里,我曾经介绍过,SAP R/3 于 1992 年发布,是 SAP ERP 系统的客户机/服务器版本,后来成为 SAP 最受客户欢迎的产品之一。SAP R
SAP UI5 按钮的类型和背景色设置例子
我在 SAP UI5 XML 视图里有一个 Button 控件,类型为 Accept: 运行时渲染出来的效果如下: 这个按钮对应生成的 HTML 视图代码里,起作用的 css: span.sapMBtnInner.sapMBtnAccept { background-image: none; background-color: #ebf5cb; bord
CSS Flex 布局的引入背景
Flexbox 布局(Flexible Box)模块(截至 2017 年 10 月的 W3C 候选推荐)旨在提供一种更有效的方式来布局、对齐和分配容器中 item 元素之间的空间,即使它们的大小未知和/或动态,这就是布局名称中 弹性 的由来。 flex 布局背后的主要思想是让容器能够改变其项目的宽度/高度(和顺序)以自适应地填充可用空间(主要是为了适应所有类型的显示设备和屏幕尺寸)。弹性容器扩展
CSS Flex 布局的 flex-direction 属性讲解
flex-direction 设置了主轴,从而定义了弹性项目放置在弹性容器中的方向。 Flexbox 是一种单向布局概念,可将弹性项目视为主要以水平行或垂直列布局。 .container { flex-direction: row | row-reverse | column | column-reverse; } 几种支持的属性: row (default): left
SAP UI5 应用 FlexBox 控件 growFactor 的使用方法
使用 Flex Box Layout 布局方式,开发人员可以让浏览器处理元素的分布。 这确保应用的元素始终填充沿主轴的可用空间。 为了达到这个目的,需要为 Flex Item 设置一个弹性系数(flexibility factor)。 控制 flexibility factor 的具体属性称为 growFactor。它通过 layoutData 聚合上的 FlexItemData 设置在弹性项目
SAP UI5 应用里 FlexBox 控件的设计原理
sap.m.FlexBox 控件为 flexible box layout 构建容器。VBox 控件为垂直的框布局(vertical flexible box layout)构建容器。 VBox 是一种使用的控件,因为它只是一个定制化的 FlexBox 控件。 VBox 包含 items 聚合,从 FlexBox 继承而来。 HBox 控件为水平框布局(horizontal flexible
SAP UI5 应用里一些容器控件的介绍
sap.m.Shell 控件可用作应用程序的根元素。 它可以包含 App 或 SplitApp 控件。 Shell 为整个应用程序提供了一些总体功能,并负责在桌面浏览器平台上进行视觉适配,例如应用程序周围的框架。 sap.m.App: 该 App 继承自 sap.m.NavContainer 并因此提供其导航功能。 它将某些标头标签添加到 HTML 页面,这些标签在 SAP UI5 运行在移动设
答读者疑问:为什么我的 manifest.json 文件无法正确被加载试读版
有教程的读者向我提问:已经完成了下列两个步骤的学习: SAP UI5 应用开发教程之十 - 什么是 SAP UI5 应用的描述符 DescriptorSAP UI5 应用开发教程之一百三十三 - SAP UI5 应用元数据文件 manifest.json 的加载和解析原理讲解 自己本地 Visual Studio Code 开发了一个 SAP UI5 应用,使用命令行 ui5 serve
SAP UI5 Smart Chart 功能介绍
笔者已经写过一篇详细的文章介绍 SAP UI5 Smart Chart 的使用方法: SAP UI5 应用开发教程之一百五十三 - 使用 SAP UI5 Smart Chart 控件轻松绘制十数种不同类型的专业图表 本文泛泛地介绍 Smart Chart 提供的一些其他功能。 工具栏右侧的按钮可用于选择图表类型: 跳转到按钮旁边的两个按钮可用于 drill up 和 drill d
SAP UI5 Smart control 的 Page Variant Management
本文介绍 VariantManagement 控件的页面变体,它是 SmartVariantManagement 控件的增强功能,可以处理多个智能控件。 基本上,VariantManagement 控件的分页版本与(非分页)VariantManagement 控件相同。 不同之处在于,页面变体使用 persistencyKey 属性进行初始化,可以处理多个智能控件的持久化。 每个通过页面变体
SAP ERP 里的 Costing Sheet 成本核算表
有朋友在我的知识星球里向我提问: 请您帮忙讲一下这个AP0100的costing sheet rows这里都表示什么意思吗?比如row10、base Z010、overhead啥、描述、from、to row、credit都说明了什么,能够实现上面👆🏻的目标吗,感谢!!! SAP 帮助文档地址如下。 成本核算表结合了所有间接费用的成本核算,并确定了要公布的价值的计算规则。 成本
SAP Product Lifecycle Costing 里的 Costing Sheet 成本核算表
有朋友在我的知识星球里向我提问: 请您帮忙讲一下这个AP0100的costing sheet rows这里都表示什么意思吗?比如row10、base Z010、overhead啥、描述、from、to row、credit都说明了什么,能够实现上面👆🏻的目标吗,感谢!!! 我在 Google 里根据关键字 Costing sheet rows 进行搜索,第一个搜索结果就是 SAP
如何在 SAP UI5 应用里显示 PDF 文件试读版
一套适合 SAP UI5 初学者循序渐进的学习教程本专栏计划的文章数在 300 篇左右,到 2022年12月23日为止,目前已经更新了 155 篇,专栏完成度为 51.6%,完成度已经超过了一半了.作者简介Jerry Wang,2007 年从电子科技大学计算机专业硕士毕业后加入 SAP 成都研究院工作至今。Jerry 是 SAP 社区导师,SAP 中国技术大使。在长达 15 年的 SAP 标准产品
SAP UI5 加载本地并不存在的 PDF 文件的错误处理
这个 _onLoadListener 函数什么时候注册的呢? iframe 完成加载之后,就触发这个 load 事件注册的处理函数: PDFViewer.prototype.onAfterRendering = function () { var fnInitIframeElement = function () { // can
SAP Smart Table 的 Personalization(个性化配置)试读版
本教程的前一步骤,我们介绍了 SAP Smart Table 和 Smart Filter Bar 配合起来的使用方法: SAP UI5 应用开发教程之一百五十四 - SAP UI5 Smart Table 和 Smart Filter Bar 的联合使用方法介绍 本文我们在此基础上更进一步,为 Smart Table 增添一个 Personalization(个性化配置)功能,此功能
Smart Table Personalization 功能的一些单步调试
SmartTable 的 _onMetadataInitialised 方法里: 如果标志位 bIsInitialised 已经赋值,说明已经初始化过了,直接返回。 这里说明 SmartTable 有一个自动调整宽度的属性设置:getEnableAutoColumnWidth 拿到 Table view 的metadata: 这里读取 XML 视图里是否允许 Smart Table 进
SAP UI5 Smart Table 和 Smart Filter Bar 的联合使用方法介绍试读版
本教程第 147 个步骤,我们介绍了 SAP UI5 Smart Table 控件的用法: SAP UI5 应用开发教程之一百四十七 - SAP UI5 SmartTable 控件的使用介绍 如下图所示: 本步骤我们在 Smart Table 本身的基础上再进一步,学习如何将 Smart Table 配合 Smart Filter Bar 共同使用。 先看一下效果。我们进入文件夹