当前位置:主页 > 云解析 > 正文

轻量服务器_http文件服务器_哪家好

时间:2021-07-23 03:38 来源:埃里克云 编辑:埃里克云

核心提示

在谈到了数量显示的奇怪之处(更准确地说,是选择性地执行CUNI设置)之后,我是时候讲述SAP的一个更奇怪、更古怪的行为了。 当我浏览下面的屏幕截图(左侧:TM UI,右侧:调试器...

在谈到了数量显示的奇怪之处(更准确地说,是选择性地执行CUNI设置)之后,我是时候讲述SAP的一个更奇怪、更古怪的行为了。

当我浏览下面的屏幕截图(左侧:TM UI,右侧:调试器)

时,你可能会很想"什么…??"。

事实上,"457,-EUR"的金额内部存储为0045700是基于两个规则:

数据类型CURR中的基数位置无关紧要相反,该值以压缩格式写入,右对齐,使用表TCURX中指定的小数位数(如果为受影响的货币维护),否则使用两个小数(这就是为什么开发人员总是强制为数据字典中的货币指定引用字段,以及使用涉及金额字段的写语句时)。

基础负责显示,并应用货币自定义。您也可以在SE16中看到预期值。

与许多其他SAP奇怪的东西一样,这一点在很长时间内都没有被注意到,因为R/3数据元素使用一个带两个小数的域,而且全球绝大多数货币也有两个小数。因此,这些值碰巧以与在UI上看到的完全相同的方式被持久化。好吧,除了日元(众所周知日元没有小数)和其他几个。在R/3表中,100日元的值被保留为1,00,这在过去引起了一些关注,快速的SCN搜索应该会发现这一点。

但是SAP TM使用了一个域,/SCMTMS/AMOUNT,它有六个小数。显然,设计和创建这个域的人忘记了这个行为。六个小数是无用的,不要添加任何"精度",数据元素也可以定义得很好,没有小数,没有任何明显的影响。

最终用户看不到这一切,甚至有经验的开发人员有时也会感到困惑,因为基础很好地隐藏了内部。

但是,有有三个方面值得一提:

当上述货币从欧元变为日元时会发生什么?如果只更改了货币(并且0045700的值在后端保持不变),那么在触发往返之后,UI中的值会突然转换为45700,00日元!!

这正是六年前发布的SAP Note 1538380之前在Web Dynpro屏幕上发生的事情。大多数用户天真的期望是,价值保持不变,并作为投诉的结果,最终作出纠正。之后,货币的变化也可能导致持久量的变化(为了保持显示稳定,DB值必须补偿小数点的差异–0045700应该变成0000457)。

持久值的变化可能会引发不必要的副作用,这就是为什么Web Dynpro引入了一个应用程序参数,wdreffieldbehavior,允许任何客户影响在这种情况下发生的事情。默认值是"常识"值–值在屏幕上保持稳定(并在DB上修改)。无论谁喜欢原始行为,都必须明确设置其他参数值。

这种情况很少发生,因为只有很少的货币偏离了"两个小数"的常见行为。

到现在为止,每个人都应该意识到,在一个系统中,小数的数量永远不应该在TCURX中改变,在这个系统中,一些金额已经与受影响的货币保持一致!!

这样做会影响持久值的解释。虽然可以编写类似XPRA的调整报告,但是没有简单的方法(除非记录所有内容)来检测哪些值发生了更改,哪些值没有发生更改,以防异常报告终止。

现在变得很有趣。sapbasis负责在ui上显示正确的值,但是内核将该值视为普通的压缩数。在两个变量之间移动数据时,会考虑小数点。

让我们假设一个TM特定变量LV_TM作为金额,如果您注意的话,它有六个小数,另一个变量LV_ERP-一个像经典商务套件中那样有两个小数的金额。

LV_TM的值为15.000,-欧元,因此内部格式为1500000(您需要)可能已经注意到我一直使用欧洲数字符号:逗号作为基数字符,句号作为数字组分隔符)。在执行报表

时,结果将显示LV泷U ERP的内部值为1,50,代表1,50欧元。同样,LV泷U ERP中的3,14欧元将变成LV泷U TM中的3140000欧元,这当然意味着31.400欧元,

这种错误经常发生在SAP系统和"外部"世界之间的代码中–B2B、A2A接口受到影响。甚至SAP TM和SAP ERP之间的集成也会受到影响。在这种情况下,不能使用MOVE语句,而应使用合适的中心例程,如函数组ISOC中的函数模块(如CURRENCY\u AMOUNT\u BAPI\u TO\u SAP)或类CL\u GDT\u转换中与金额相关的方法,有些程序员只是简单地将这些数字相乘或除(小数点的差为/除以10),而不是使用上述函数。您可能会遇到–例如,在与结算文件传输到ERP相关的TM代码中–像

这样的语句当然有效,而且非常安全(任何头脑正常的人都不会更改TM和ERP中金额域的定义),但我个人更喜欢使用中心方法,因为它使情况更加透明。一个初学者看了上面的语句,几乎没有机会弄明白为什么这个值必须乘以一万。在另一种情况下,技术上的解释也不简单,但中心方法至少给出了一个提示,说明需要进行某种特殊处理。

-

PS:您可以在CL\u GDT\u CONVERSION=>AMOUNT\u INBOUND的源代码中看到,没有在TCURX中维护的货币是如何默认为两位小数:

  • 企业网站_分布式数据库的特点_免费 企业网站_分布式数据库的特点_免费

    在上传.csv文件时,了解需要填写哪些信息是很重要的。综上所述,上传需要ID ORIGIN和ID。原因是ID ORIGIN说明信息来自哪个来源,ID给每个与品牌/公司有过接触的人一个唯一的号码。 例...

  • <strong>网站服务器_邮箱发件服务器_试用</strong> 网站服务器_邮箱发件服务器_试用

    就在最近,我遇到了一个我以前从未见过的问题,那就是在准备一个高效的sapsolutionmanager7.2系统之后。我决定分享我解决这个问题的小任务的结果。 当我试图将一个ojbect保存到传输请...

  • <strong>网站空间_mysql数据库概述_企业级</strong> 网站空间_mysql数据库概述_企业级

    欢迎回到saps/4HANA云用例系列的第三部分。在过去的两周里,我们研究了在数字经济中非常重要的价值杠杆的三个维度中的两个。为了使企业的数字化转型取得成功,有必要了解发生了...

  • <strong>腾讯云_商务中国域名注册_新注册优惠</strong> 腾讯云_商务中国域名注册_新注册优惠

    本博客旨在提供实施所谓"生日活动"的提示。 生日活动的商业目的是每天向所有客户或联系人发送"生日快乐"邮件,在各自的日子庆祝生日。 SAP Hybris Marketing的起点是一个动态的目标群...

  • <strong>中间件_ftp服务器怎么登陆_精选特惠</strong> 中间件_ftp服务器怎么登陆_精选特惠

    在组织制定有效的数据管理计划之前,他们必须首先了解数据管理在内存系统时代是如何演变的。 像S/4HANA这样的内存系统与其他传统企业系统不同,具有内置的数据管理功能。这是因...

  • <strong>香港服务器_百度云平台_新注册优惠</strong> 香港服务器_百度云平台_新注册优惠

    要在SIA的BI 4.2 SP4中设置SSL,请执行以下步骤 生成证书使用SSL证书配置SIA 生成证书: 在BI 4.2SP4中,除了根/可信和服务器证书(如下所示)之外,BOE还需要使用sapgenpse 生成PSE证书,以...

  • <strong>云存储_微微一笑很倾城小说百度云_最新</strong> 云存储_微微一笑很倾城小说百度云_最新

    简介 在任何行业,人力资源运营的核心功能之一就是分离流程。绝大多数离职都是自愿辞职。因此,使流程自动化并获取与之相关的所有基本信息是非常必要的。 业务挑战 成功因素...

  • <strong>数据库服务器_安徽高端网站建设_便宜的</strong> 数据库服务器_安徽高端网站建设_便宜的

    如您所知,从HANA的SP09开始,我们就可以使用EIM服务作为HANA的一部分,即SDI和SDQ。这些服务允许您通过我们称为SDA(智能数据访问)的联合功能虚拟地从外部数据库加载数据,或通过...

  • <strong>谷歌云_腾讯云ocr文字识别_限量秒杀</strong> 谷歌云_腾讯云ocr文字识别_限量秒杀

    通知是让用户了解需要及时采取行动或注意的情况的一种很好的方法。这可能是刚刚发生的事件的信息,也可能是需要立即关注的工作流任务。fiori2.0最值得期待的特性之一是通知中心...