F110增强
1.F110 删除操作的增强:
方法:SE19 ZE_F110_DELETE_CHECK
代码:
ENHANCEMENT 1 ZE_F110_DELETE_CHECK. "active version
**ZE_F110_DELETE_CHECK add by xiangc on 20170506 for F110 付款建议删除前的检查,建议ID在审核状态不允许删除.
**require by fi_luotang
DATA:LS_ZTYJ_FK_STATUS TYPE ZTYJ_FK_STATUS.
DATA:lv_answer TYPE c.
CASE OK-CODE.
*------- Zahlungsaufträge löschen --------------------------------------
* WHEN 'PYOD'.
* SUBMIT RFPYORDD AND RETURN WITH PARLAUFD INCL F110V-LAUFD
* WITH PARLAUFI INCL F110V-LAUFI
* VIA SELECTION-SCREEN.
*------- Vorschlagslauf Loeschen ---------------------------------------
WHEN 'VODE'.
* break c_xiangc.
CLEAR:LS_ZTYJ_FK_STATUS.
SELECT SINGLE *
INTO LS_ZTYJ_FK_STATUS
FROM ZTYJ_FK_STATUS
WHERE LAUFD = F110V-LAUFD
AND LAUFI = F110V-LAUFI
AND ZCHEC = 'X'.
IF SY-SUBRC EQ 0.
* MESSAGE S020(ZYUEJIN_FICO) WITH F110V-LAUFD F110V-LAUFI DISPLAY LIKE 'E'.
* EXIT.
CALL FUNCTION 'POPUP_TO_CONFIRM'
EXPORTING
titlebar = '请确认'
text_question = '此付款ID在审核中,是否确认删除?'
text_button_1 = '确认删除'
text_button_2 = '不删除'
default_button = '1' "缺省选中按钮: 1 是; 2 否
display_cancel_button = '' "标识: 为空,不显示 取消按钮
IMPORTING
answer = lv_answer "1 是;
EXCEPTIONS
text_not_found = 1
OTHERS = 2.
IF lv_answer EQ '1'.
UPDATE ztyj_fk_status SET zchec = ' '
datum = sy-datum
uzeit = sy-uzeit
usnam = sy-uname
WHERE laufd = F110V-laufd
AND laufi = F110V-laufi.
MESSAGE S023(ZYUEJIN_FICO) WITH F110V-LAUFD F110V-LAUFI.
else.
exit.
ENDIF.
ENDIF.
WHEN OTHERS.
...
ENDCASE.
ENDENHANCEMENT.
Transaction
Code - F110 自动付款参数
BADI Name Description
FI_BSTM_MC_EXIT FI 帐户报表: 多项兑现转化的退出
FI_F110_SCHEDULE_JOB F110: 在建议/更新运行计划安排前的检查
No
of BADIs: 2
2.F110 付款运行前的 解除凭证行项目冻结标记增强
SE19 :FI_F110_SCHEDULE_JOB
F110: 在建议/更新运行计划安排前的检查
实现方式:SE24
ZCL_IM_FI_F110_SCHEDULE_JB
代码:
METHOD IF_EX_FI_F110_SCHEDULE_JOB~CHECK_PARAMETER.
**供应商所有付款建议有冻结的凭证全部解冻结
TYPE-POOLS: TPIT.
FIELD-SYMBOLS <FS_LIFNR> TYPE STANDARD TABLE.
TYPES: BEGIN OF T_BSEG,
BUKRS TYPE BSEG-BUKRS,
BELNR TYPE BSEG-BELNR,
GJAHR TYPE BSEG-GJAHR,
BUZEI TYPE BSEG-BUZEI,
KOART TYPE BSEG-KOART,
END OF T_BSEG.
DATA: LS_REGUV TYPE REGUV,
LV_FIELD(20),
LT_BSIK TYPE TABLE OF BSIK,
LS_BSIK TYPE BSIK,
LT_BSEG TYPE TABLE OF T_BSEG,
LS_BSEG TYPE T_BSEG,
S_BSEG TYPE BSEG,
LT_BUZTAB TYPE TPIT_T_BUZTAB,
LS_BUZTAB TYPE LINE OF TPIT_T_BUZTAB,
LT_FLDTAB TYPE TPIT_T_FNAME,
LS_FLDTAB TYPE LINE OF TPIT_T_FNAME,
LT_ERRTAB TYPE TPIT_T_ERRDOC,
LS_ERRTAB TYPE LINE OF TPIT_T_ERRDOC,
LR_LIFNR TYPE FAGL_RANGE_T_LIFNR,
LS_LIFNR TYPE FAGL_RANGE_S_LIFNR.
** BREAK-POINT.
** CHECK 1 = 2.
**F110 自动付款时: 参数已输入和收付建议已经建立才跑解冻结
** 状态:点按钮"付款运行"时执行以下解冻结逻辑
* CHECK I_F110V-BUKLS+0(4) = 'CV50' OR I_F110V-BUKLS+0(4) = 'CV51'.
CLEAR: LS_REGUV.
SELECT SINGLE * INTO LS_REGUV
FROM REGUV
WHERE LAUFD = I_F110V-LAUFD
AND LAUFI = I_F110V-LAUFI.
CHECK LS_REGUV-XVORE = 'X' AND LS_REGUV-XECHT IS INITIAL.
**取供应商
REFRESH:LR_LIFNR,LT_BSIK,LT_BSEG.
LV_FIELD = '(SAPF110V)R_LIFNR[]'.
ASSIGN (LV_FIELD) TO <FS_LIFNR>.
IF <FS_LIFNR>[] IS ASSIGNED.
LR_LIFNR[] = <FS_LIFNR>[].
UNASSIGN <FS_LIFNR>.
ENDIF.
**取供应商已被冻结的数据
SELECT * INTO TABLE LT_BSIK
FROM BSIK
WHERE BUKRS = I_F110V-BUKLS+0(4)
AND GJAHR = I_F110V-LAUFD+0(4)
AND LIFNR IN LR_LIFNR
** AND BSTAT = SPACE
** AND BSCHL = '31'
AND ZLSPR = 'X'. "X:(跃进)自动付款冻结
CHECK LT_BSIK[] IS NOT INITIAL.
**取科目类型
SELECT BUKRS BELNR GJAHR BUZEI KOART
INTO CORRESPONDING FIELDS OF TABLE LT_BSEG
FROM BSEG
FOR ALL ENTRIES IN LT_BSIK
WHERE BUKRS = LT_BSIK-BUKRS
AND BELNR = LT_BSIK-BELNR
AND GJAHR = LT_BSIK-GJAHR
AND BUZEI = LT_BSIK-BUZEI.
SORT LT_BSEG BY BUKRS BELNR GJAHR BUZEI.
LOOP AT LT_BSIK INTO LS_BSIK.
CLEAR: S_BSEG,LS_BSEG,LS_FLDTAB,LT_FLDTAB[],
LS_FLDTAB,LT_FLDTAB[],LS_ERRTAB,LT_ERRTAB[].
READ TABLE LT_BSEG INTO LS_BSEG WITH KEY BUKRS = LS_BSIK-BUKRS
BELNR = LS_BSIK-BELNR
GJAHR = LS_BSIK-GJAHR
BUZEI = LS_BSIK-BUZEI
BINARY SEARCH.
LS_BUZTAB-BUKRS = LS_BSIK-BUKRS.
LS_BUZTAB-BELNR = LS_BSIK-BELNR.
LS_BUZTAB-GJAHR = LS_BSIK-GJAHR.
LS_BUZTAB-BUZEI = LS_BSIK-BUZEI.
LS_BUZTAB-KOART = LS_BSEG-KOART.
LS_BUZTAB-BSCHL = LS_BSIK-BSCHL.
APPEND LS_BUZTAB TO LT_BUZTAB.
LS_FLDTAB-FNAME = 'ZLSPR'.
APPEND LS_FLDTAB TO LT_FLDTAB.
**
CALL FUNCTION 'FI_ITEMS_MASS_CHANGE'
EXPORTING
S_BSEG = S_BSEG
IMPORTING
ERRTAB = LT_ERRTAB
TABLES
IT_BUZTAB = LT_BUZTAB
IT_FLDTAB = LT_FLDTAB
EXCEPTIONS
BDC_ERRORS = 1
OTHERS = 2.
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
EXIT.
ENDIF.
ENDLOOP.
ENDMETHOD.
3.财务凭证项目付款条件替代
*---------------------------------------------------------------------*
* FORM Z002 *
*---------------------------------------------------------------------*
*替代付款方式:BSEG-ZTERM
*1.系统根据BSEG-BUKRS(公司代码)=(CV50,CV51,CV52),
* BSEG-KOART(科目类型)=K,
* 根据BSEG-LIFNR(供应商账号)到LFB1-LIFNR=BSEG-LIFNR,
* LFB1-BUKRS=BESG-BUKRS(公司代码),找到LFB1-ZTERM赋值给BSEG-ZTERM
*
*---------------------------------------------------------------------*
FORM Z002.
*BREAK-POINT.
*&--->add on 16.05.2017 10:30:38 by cx.
DATA:l_zterm TYPE lfb1-zterm.
CLEAR:l_zterm.
SELECT SINGLE zterm
INTO l_zterm
FROM lfb1
WHERE lifnr = bseg-lifnr
AND bukrs = bseg-bukrs.
IF l_zterm NE space.
CONDENSE l_zterm NO-GAPS.
bseg-zterm = l_zterm.
ENDIF.
*&--->end add.
ENDFORM.
F110增强的更多相关文章
- F110 BADI增强
F110*JOB*&------------------------------------------------------------- F110 BADI FI_BSTM_MC_EXI ...
- 将表里的数据批量生成INSERT语句的存储过程 增强版
将表里的数据批量生成INSERT语句的存储过程 增强版 有时候,我们需要将某个表里的数据全部或者根据查询条件导出来,迁移到另一个相同结构的库中 目前SQL Server里面是没有相关的工具根据查询条件 ...
- ES5对Array增强的9个API
为了更方便的对Array进行操作,ES5规范在Array的原型上新增了9个方法,分别是forEach.filter.map.reduce.reduceRight.some.every.indexOf ...
- Taurus.MVC 2.2 开源发布:WebAPI 功能增强(请求跨域及Json转换)
背景: 1:有用户反馈了关于跨域请求的问题. 2:有用户反馈了参数获取的问题. 3:JsonHelper的增强. 在综合上面的条件下,有了2.2版本的更新,也因此写了此文. 开源地址: https:/ ...
- 马里奥AI实现方式探索 ——神经网络+增强学习
[TOC] 马里奥AI实现方式探索 --神经网络+增强学习 儿时我们都曾有过一个经典游戏的体验,就是马里奥(顶蘑菇^v^),这次里约奥运会闭幕式,日本作为2020年东京奥运会的东道主,安倍最后也已经典 ...
- 升讯威ADO.NET增强组件(源码):送给喜欢原生ADO.NET的你
目前我们所接触到的许多项目开发,大多数都应用了 ORM 技术来实现与数据库的交互,ORM 虽然有诸多好处,但是在实际工作中,特别是在大型项目开发中,容易发现 ORM 存在一些缺点,在复杂场景下,反而容 ...
- 增强学习(三)----- MDP的动态规划解法
上一篇我们已经说到了,增强学习的目的就是求解马尔可夫决策过程(MDP)的最优策略,使其在任意初始状态下,都能获得最大的Vπ值.(本文不考虑非马尔可夫环境和不完全可观测马尔可夫决策过程(POMDP)中的 ...
- FFmpeg滤镜实现区域视频增强 及 D3D实现视频播放区的拉大缩小
1.区域视频增强 FFmpeg滤镜功能十分强大,用滤镜可以实现视频的区域增强功能. 用eq滤镜就可以实现亮度.对比度.饱和度等的常用视频增强功能. 推荐两篇写得不错的博文: (1)ffmpeg综合应用 ...
- 最新GHOST XP系统下载旗舰增强版 V2016年
系统来自:系统妈:http://www.xitongma.com 深度技术GHOST xp系统旗舰增强版 V2016年3月 系统概述 深度技术ghost xp系统旗舰增强版集合微软JAVA虚拟机IE插 ...
随机推荐
- Web开发技术---简单的登录验证
制作一个APP或系统最基础的是登录界面,下面通过一个简单的登录注册界面的程序,来熟练掌握Web开发的技术. 一.知识点: 1.在网页界面获取用户的输入信息 2.标签的基本应用 3.用户输入结果的错误提 ...
- 时间模块-datetime精确到微妙级
1.标准转换格式符号说明 %a 本地星期的短名称 如:Sun, Mon, ..., Sat (en_US); So, Mo, ..., Sa (de_DE) %A 本地星期全名称 如 :Sunday, ...
- (18)打鸡儿教你Vue.js
介绍一下怎么安装Vue.js vue.js Vue 不支持 IE8 及以下版本,因为 Vue 使用了 IE8 无法模拟的 ECMAScript 5 特性. Vue.js是一个渐进的,可逐步采用的Jav ...
- C# 使用配置文件配置应用
使用配置文件配置应用 .NET Framework 通过配置文件为开发人员和管理员提供了对应应用程序运行方式的控制权和灵活性.配置文件可以按需要更改的XML文件.管理员能够控制应用程序可以访问哪些受保 ...
- ModuleNotFoundError: No module named 'cv2'
pip3 install opencv-python
- 浅谈bitset
维护二进制的数据结构,常数可近似看作\(\frac{1}{32}\) 定义 bitset<4> bitset1; 长度为4,下标[0,3],默认为0 bitset<4> bit ...
- CF1203F2 Complete the Projects (hard version)(结论+背包+贪心)
题目 做法 对于加分的直接贪心 而掉分的用排序后的背包动规 假设有两个物品\((a_1,b_1)(a_2,b_2)\) 选第一个物品后无法选择第二个物品,假设开始值为\(r\):\(r>a_1, ...
- 使用composer下载依赖包下载失败的解决方法
下载好的composer默认的下载地址是国外的,在下载的过程中网络不好或者可能被墙,将下载的地址换成国内的地址即可 有两种方式启用本镜像服务: 系统全局配置: 即将配置信息添加到 Composer 的 ...
- 面试题 int(3) int(10) 区别
1.MySQL 中 int(3) int(10) 区别 答案 存储大小并无差异,只是不足位数的时候,左边补0. ###补充知识点 创建数据库表时,加zerofill ,可以看出效果.mysql 默认 ...
- 反编译pyinstaller打包的exe安装包
PyInstaller将Python文件打包为exe后如何反编译(破解源码)以及防止反编译 在这里分享一些技巧和经验给大家.辛苦撰文分享,转载或引用请保留本文作者信息及文章链接. 作者的环境: win ...