ABAP报表中负值展示问题的处理方法
现象描述
在使用ABAP报表展示数据的时候会涉及到金额类字段,在手动计算金额的时候,有时会发生存在负值而无法正常展示的情况。
处理过程
ABAP报表的数据展示常用的方法有两种,分别是表控制和ALV
1、使用ALV展示时负值不会报错,但是金额字段的负号默认显示在结尾如图

如果希望按照习惯将负号置于数字前段,则需要手动编写一个转换例程的函数来实现。
首先创建一个函数,命名规则CONVERSION_EXIT_XXXX_OUTPUT,其中XXXX为自定义名称,参考代码为

再创建对应的另外一个函数,命名规则CONVERSION_EXIT_XXXX_INPUT,其中XXXX为自定义名称,参考代码为

然后在设置ALV字段属性时将刚刚创建的转换例程添加进去

最后重新执行报表就可以得到我们想要的展示结果

2、使用表控制展示时,如果数据存在负值,会出现Short Dump。

解决方法是将表控制中的该金额字段的属性设置为带记号的,如下图

设置完成后重新执行报表,程序能够正常执行,负号显示在末尾

如果希望加负号置前,可以在退出对话中将之前创建的转换例程添加进去

添加以后的执行效果

在ABAP程序中负值展示问题的处理是一种特例,需要用上述特殊的方式来进行处理,否则会出现显示不正常甚至是Short Dump。所以在程序设计的时候,如果涉及到金额字段,应该充分考虑是否存在负值的情况,并且进行全面的测试,防范传输之后出现此种问题。
ABAP报表中负值展示问题的处理方法的更多相关文章
- ABAP程序中关于长文本的处理方法
现象描述 长文本在SAP的运用主要体现在一些notes的记录,或者一些比较长的文本的存取,比如工作流的审批意见,采购申请和采购订单的附加说明等等.如下图: 处理过程 1:SAP中所有的长文本都存在两张 ...
- 016 Android 图片选择器(在选中和未选中的过程中,切换展示图片)
1.目标效果 在选中和未选中的过程中,切换展示图片 2.实现方法 (1)在app--->res--->drawable 右击drawable文件夹右键,new ---->drawab ...
- ABAP报表程序编写规范 .
一. 程序的结构: 典型的ABAP报表程序是由多个代码区域组成,各代码区的存放位置以下列顺序为准,具体格式如下: *----------------------------- ...
- 动态切换 web 报表中的统计图类型
统计图在浏览器端展现时,不同的使用人员对图形的展现形式会有不同的要求,有的需要柱形图.有的想看折线图等,报表支持用户在浏览器端动态的选择统计图类型,关注乾学院,查看具体实现方法动态切换 web 报表中 ...
- ActiveReports 报表中 RDF 文件解析
AcitveReport 提供两种报表模板,XML(RPX)模板和Code-Based 模板.两者都可以用于设计报表. 但是 RDF 格式文件我们大多不是很了解.许多客户在提到 RDF 格式时显得无所 ...
- 【BIEE】04_当维度表中的维不存在事实表中,需要展示所有维度并且数据类展示为0
有时候,我们往往会存在这样的需求 例如:事实表的数据如下 EMP_FACT表示事实表,DIM_LEVEL是维度表 预期效果:(根据员工信息,分析各等级员工工资与员工个数) 我们在BIEE报表中新建报表 ...
- WebGIS中等值面展示的相关方案简析
文章版权由作者李晓晖和博客园共有,若转载请于明显处标明出处:http://www.cnblogs.com/naaoveGIS/ 1.背景 等值面是气象.环保等相关项目上常用到的效果展示.在传统的CS项 ...
- ABAP 数据字典中的参考表和参考字段的作用
ABAP数据字典中的参考表和参考字段的作用 大家最初在SE11中创建表和结构的时候都会遇到一个问题,如果设定了某个字段为QUAN或者CURR类型,也就是数量或金额的时候,总会要求输入一个参考 ...
- Oracle EBS的BIP报表中显示特殊字体
http://oracleseeker.com/2009/08/25/font_mapping_setup_for_special_character_print_in_oracle_ebs_bip/ ...
随机推荐
- 初识Android && 搭建Android开发环境
搭建Android开发环境需要的工具: JDK(Java Development Kit) Eclipse Android Sdk(Software Development Kit) ADT (And ...
- redis-cli 命令总结
redis-cli 命令总结 Redis提供了丰富的命令(command)对数据库和各种数据类型进行操作,这些command可以在Linux终端使用.在编程时,比如使用Redis 的Java语言包,这 ...
- C++ 优先队列
C++ 优先队列 #include <queue> priority_queue<Type, Container, Functional>:Type为数据的类型,Contain ...
- How to do logging in C# with log4net
If you are writing server code in C# or to a lesser extent desktop/client then it's a good idea to i ...
- Asp.net中HttpRequest.Params与Reques.Item之异同
今天才注意到HttpRequest.Params与HttpRequest.Item这两个玩意竟然有微妙的不同.上午的时候同事被坑了发现这玩意的说明还真微妙. 场景再现: 前台提交一个POST请求到后台 ...
- 记录ASP.NET Web API 服务接口响应时间
实现起来很简单,一个Filter就可以搞定!!! /// <summary> /// 监控接口执行时间 /// </summary> public class TimingAc ...
- C# 中 async/await 调用传统 Begin/End 异步方法
最近在改进园子的图片上传程序,希望实现用户上传图片时同时将图片文件保存在三个地方:1)服务器本地硬盘:2)又拍云:3)阿里云OSS.并且在保存时使用异步操作. 对于异步保存到本地硬盘,只需用 Stea ...
- Kali Linux Web 渗透测试视频教程—第十四课-arp欺骗、嗅探、dns欺骗、session劫持
Kali Linux Web 渗透测试视频教程—第十四课-arp欺骗.嗅探.dns欺骗.session劫持 文/玄魂 目录 Kali Linux Web 渗透测试—第十四课-arp欺骗.嗅探.dns欺 ...
- Spec模板
Spec模板 一.概述 1.项目背景 图书馆在正常运营中面对大量书籍.读者信息以及两者间相互联系产生的借书信息.还书信息.现有的人工记录方法既效率低又错误过多,大大影响了图书馆 ...
- Nim教程【四】
这是国内第一个关于Nim的系列教程 先说废话 不得不说Rust也是门不错的语言,园子里 有人曾经说: Rust语言除了library或keyword缩写比较恶心以外其他所有地方完爆go 还有人曾这样评 ...