点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)大家好, 我试图从表TCURR...
点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)大家好, 我试图从表TCURR...
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
大家好,
我试图从表TCURR.GDATU转换日期,我尝试了各种不起作用的方法
系统详细信息:SAP HANA 1.0 SP 12
从SCHEMA.TCURR中选择(99999999- cast(" GDATU"为Integer))作为" CasT"
错误:[6930]属性值不是数字; int sqlsub(int'99999999',int [here] int(string" GDATU")),GDATU =''[string]; checkNull false选择KURST,FCURR,TCURR,CAST(左(99999999-GDATU,4)* 10000 + RIGHT(左(99999999-GDATU,6),2)* 100 +右(99999999-GDATU,2)作为日期) SCHEMA.TCURR
起START_DATE错误:"无法在61 ms 768 µs内执行'select KURST,FCURR,TCURR,...'。SAP DBTech JDBC:[339]:无效数字:[6930]属性值不是数字; daydate逗号 (string string(int sqlsub(int'99999999',int [here] int(string" GDATU")))),daydate daydate(int sqladd(int sqladd(int times(int int(string midstru(string" __common1"),int '1',int'4')),int'10000'),int times(int int(string rightstru(string midstru(string" __common1",int'1',int'6'),int'2') ),int'100')),int int(string rightstru(字符串" __common1",int'2'))))))),GDATU =''[string]; checkNull false"
请让我知道如何从TCURR.GDATU转换日期?
谢谢!
好吧,所以您显然知道GDATU是"反"日期格式,其中存储了每个数字的9er补码,而不是YYYYMMDD(标准DATS格式)。
这就是为什么您尝试 通过减号99999999-GDATU来"取消补码"日期数字。
到目前为止,如此正确。
现在,您收到的错误是由于GDATU中的任何内容转换为整数引起的。
错误消息声称:属性值不是数字。
现在是时候检查您的表是否存在GDATU中无法转换为数字的条目。
像''或''(空格和空字符串)之类的东西在这里很合适。
由于您正在查看TCURR(转换率表),因此很有可能在表中找到一种"初始记录",其中的GDATU值为空。
最简单的方法是使用过滤器简单地排除那些条目(如果有多个条目的话)。
中,如果还有其他条目,则无法转换 变成整数,您可能需要先清理表。
嗨,拉尔斯
非常感谢您的帮助!
您是正确的!
我们的TCURR表中有一个空格
我们正在尝试在SLT方面对其进行修复,还有许多其他存储过程可供使用,这些存储过程取决于Same table字段。我希望这将是一个很好的解决方案,而不是更改系统中所有可用的脚本。 节省时间和成本。
如果您有其他意见,请告诉我。
一周热门 更多>