i.s.h.med Enhancement for cancelling an appointment
This article intends to introduce my experience about enhancement for canceling an appointment. I try writing in English. Maybe there are many syntax errors in the article. This is the first time to do like this for me and I am glad to receive your feedback.
Link to this article: http://www.cnblogs.com/hhelibeb/p/6292205.html
As the description in SAP Help Portal, you can define customer-specific enhancements with the following Business Add-Ins (BAdIs) for appointment planning:
Appointments general:
BAdI for changing the appointment template (
N1_CHG_APP_TEMPLATE
)BAdI for the object "Appointment" (
N1_APPOINTMENT
)BAdI for controlling the planning tool (
N1_SET_PLAN_TOOL
)Exit for checking an appointment (
EXIT_SAPLN1TM_002
)BAdI to check when canceling an appointment (
N1_CANCEL
)BAdI for presetting an appointment (
ISH_PLANNING_PREALLOC
)Exit for checking an appointment (
ISH_PLANNING_CHECK
)BAdI for checking for changes to an appointment (
ISH_PLANNING_CHECK_CHG
)BAdI for saving an appointment (
ISH_PLANNING_SAVE
)Patient appointment calendar: Define aspects
BAdI for appointment lists – Additional fields (
ISHMED_APPVIEW_FIELD
)
In theory, when creating, modifying or cancelling an appointment, the BAdi ISH_PLANNING_SAVE
is triggered. So if we want to implement an enhancement for canceling, this BAdi is useful.
But in a certain condition, ISH_PLANNING_SAVE does not work. In the Planning Grid, if we cancel an appoitment by clicking the cancellation button in toolbar instead of "Maintain Appointment" window, the BAdi will not be triggered in canceling process ( also the cancellation option in right click menu of an appointment has same action):


To solve the problem, there are two ideas,
- Look for another BAdi. ( Actually, there is a "N1_CANCEL" can be used)
- Look for a postion which can be enhanced in source code .
I choose the second solution.
Debug the program, we can see when canceling an appointment by the button in toolbar, the program calls CL_ISH_CANCEL-> CANCEL_APPOINTMENT internally:

Go to t-code SE24, open this method:

Choose Method->Enhance:

Then choose Edit->Enhancement operation->Display implicit ehancement option:

Editor displays the indicator of the positon where we can insert enhancement codes in:

Choose "Create implemention", and then we can write our own codes in the enhancement:

i.s.h.med Enhancement for cancelling an appointment的更多相关文章
- iOS - Xcode项目统计总代码行数
最新公司需要把项目代码量统计一下,第一时间找到Xcode插件管理工具Alcatraz,查找插件ZLXCodeLine,这是一个快速统计Xcode工程项目代码量的插件,好像已经不支持Alcatraz安装 ...
- [cocos2dx enhancement] CCPlatformMacros.h
为了更好的调试Log,优化CCLOG格式 path: cocos2dx/platform/CCPlatformMacros.h line 218: #define CCLOGERROR(format, ...
- 论文翻译:Speech Enhancement Based on the General Transfer Function GSC and Postfiltering
论文地址:基于通用传递函数GSC和后置滤波的语音增强 博客作者:凌逆战 博客地址:https://www.cnblogs.com/LXP-Never/p/12232341.html 摘要 在语音增强应 ...
- h.264语法结构分析
NAL Unit Stream Network Abstraction Layer,简称NAL. h.264把原始的yuv文件编码成码流文件,生成的码流文件就是NAL单元流(NAL unit Stre ...
- 【论文:麦克风阵列增强】Signal Enhancement Using Beamforming and Nonstationarity with Applications to Speech
作者:桂. 时间:2017-06-06 13:25:58 链接:http://www.cnblogs.com/xingshansi/p/6943833.html 论文原文:http://pan.bai ...
- 【论文:麦克风阵列增强】Speech Enhancement Based on the General Transfer Function GSC and Postfiltering
作者:桂. 时间:2017-06-06 16:10:47 链接:http://www.cnblogs.com/xingshansi/p/6951494.html 原文链接:http://pan.ba ...
- H.264流媒体协议格式中的Annex B格式和AVCC格式深度解析
版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/Romantic_Energy/article/details/50508332本文需要读者对H.26 ...
- 数字图像处理实验(16):PROJECT 06-03,Color Image Enhancement by Histogram Processing 标签: 图像处理MATLAB 2017
实验要求: Objective: To know how to implement image enhancement for color images by histogram processing ...
- How to use VideoToolbox to decompress H.264 video stream
来源:http://stackoverflow.com/questions/29525000/how-to-use-videotoolbox-to-decompress-h-264-video-str ...
随机推荐
- ThreadLocalMap里Entry为何声明为WeakReference?
Java里,每个线程都有自己的ThreadLocalMap,里边存着自己私有的对象.Map的Entry里,key为ThreadLocal对象,value即为私有对象T.在spring MVC中,常用T ...
- js获取带#号链接后的参数
现在许多的主流网站都将'#'大规模用于重要URL中,我们通过正则表达式和window.location.search获取参数已经行不通了. 一.'#'号是什么 1.#代表网页中的一个位置.其后面的字符 ...
- 启动设置mongodb
启动 ①:启动之前,我们要给mongodb指定一个文件夹,这里取名为”db",用来存放mongodb的数据. ②:微软徽标+R,输入cmd,首先找到“mongodb”的路径,然后运行mong ...
- Ubuntu安装SSH SERVER
apt-get update apt-get install openssh-server 安装好后查看SSH是否启动 打开”终端窗口”,输入”sudo ps -e |grep ssh“–>回车 ...
- 01-Java基本语法
注释 单行注释: // 注释内容 多行注释: /* 注释内容 */ 文档注释: /** 注释内容 */ 数据类型 整型 byte short int lo ...
- 【JVM】6、聊聊JVM常用参数设置
整体考虑堆大小 -Xms3550m, 初始化堆大小.通常情况和-Xmx大小设置一样,避免虚拟机频繁自动计算后调整堆大小. -Xmx3550m,最大堆大小. 考虑分代设置堆大小 首先通过jstat等工具 ...
- Matlab Gauss quadrature
% matlab script to demonstrate use of Gauss quadrature clear all close all % first derive the 2-poin ...
- es6中的Promise学习
关于Promise Promise实例一旦被创建就会被执行 Promise过程分为两个分支:pending=>resolved和pending=>rejected Promise状态改变后 ...
- inheritConstructorStealing.js
// 借用构造函数 // 其基本思路是在子类型构造函数的内部调用父类型的构造函数 function Person(name){ this.name = name; this.friends = [&q ...
- 前端打包文件在 nginx 上 403 的解决办法
遇到的问题表现出来就是如题所述,因此作为题目. 我们知道,前端有很多方便的构建和打包工具,如 webpack 等,通常我们会把前端文件打包到dist目录下,部署到服务器上,如 nginx 等. 这次遇 ...