删除临时全局表

2020-09-13 16:55发布

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


嗨,

我需要运行的一个SAP B1查询要求仅在该表已存在的情况下才删除该临时全局表。 在Microsoft SQL中,可以通过使用IF EXISTS函数来解决。

经过研究,我发现HANA SQL脚本没有实现此功能。 我们想到了一种变通方法,该解决方案在系统视图M_TABLES中搜索表名。 (SYS.M_TABLES)。

该解决方案在Hana Studio中进行了测试,并且可以正常工作。 但是,当我们尝试在SAP B1中运行相同的查询时,会出现以下错误:

" [SAP AG] [LIBODBCHDB DLL] [HDBODBC]常规错误; 328个无效的函数或过程名称:tmp_qry_sp_ad16f578-d019-49a1-9080-b5fbeof304d4:line1 col 30'Blanket Agreement'(OOAT)( 在pos 29 .."

引入错误的代码片段(我尝试使用SYS.M_TABLES,但没有用):

声明 table_count 整数

选择 计数(*) M_TABLES 其中 table_name < strong> like 'TmpCarmen';

如果 table_count> 0

然后

放置 " TmpCarmen";

结束 如果

有人可以帮助我提出建议或解决方案吗?

谢谢。

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


嗨,

我需要运行的一个SAP B1查询要求仅在该表已存在的情况下才删除该临时全局表。 在Microsoft SQL中,可以通过使用IF EXISTS函数来解决。

经过研究,我发现HANA SQL脚本没有实现此功能。 我们想到了一种变通方法,该解决方案在系统视图M_TABLES中搜索表名。 (SYS.M_TABLES)。

该解决方案在Hana Studio中进行了测试,并且可以正常工作。 但是,当我们尝试在SAP B1中运行相同的查询时,会出现以下错误:

" [SAP AG] [LIBODBCHDB DLL] [HDBODBC]常规错误; 328个无效的函数或过程名称:tmp_qry_sp_ad16f578-d019-49a1-9080-b5fbeof304d4:line1 col 30'Blanket Agreement'(OOAT)( 在pos 29 .."

引入错误的代码片段(我尝试使用SYS.M_TABLES,但没有用):

声明 table_count 整数

选择 计数(*) M_TABLES 其中 table_name < strong> like 'TmpCarmen';

如果 table_count> 0

然后

放置 " TmpCarmen";

结束 如果

有人可以帮助我提出建议或解决方案吗?

谢谢。

付费偷看设置
发送
2条回答
SAP小菜
1楼-- · 2020-09-13 17:46

错误消息没有指向您发布的代码的任何地方。

它指的是未知过程或函数" 'Blanket Agreement'(OOAT)(")。

因此,这就是您需要在此处检查的内容。

您可以访问此功能/过程吗? 与B1用户一起?

吹牛啤
2楼-- · 2020-09-13 17:56

在哪里可以查看/配置B1用户对基础Hana数据库的权限? 用户可能没有对SYS模式的权限。

一周热门 更多>

点击此处---> EasySAP.com 一起学习S4 HANA ...