赶上DBSQL_TABLE_UNKNOWN

2020-08-15 08:28发布

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

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


我们使用tc DBCO连接了辅助数据库。 已设置读取访问权限,并且可以正常工作。

我们在不同的表名上使用一些动态SELECT,其中P_DBCON是辅助数据库。

示例

*-辅助数据库

尝试。
从(lv_tabname)中选择计数(*)从连接(p_dbcon)。
CATCH cx_sy_dynamic_osql_semantics。

如果在LV_TABNAME中指定了无效的表名,则会出现问题。 系统确实注意到引发了可捕获的异常CX_SY_DYNAMIC_OSQL_SEMANTICS。 相反,它将创建运行时错误DBSQL_TABLE_UNKNOWN。

  • 是否可以确定辅助数据库中是否存在表LV_TABNAME? 请注意,没有可访问的元数据(例如表DD02L)来查找。
  • 或者有什么办法可以解决这种情况,所以不会导致转储?

预先感谢您,乌尔里希

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

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


我们使用tc DBCO连接了辅助数据库。 已设置读取访问权限,并且可以正常工作。

我们在不同的表名上使用一些动态SELECT,其中P_DBCON是辅助数据库。

示例

*-辅助数据库

尝试。
从(lv_tabname)中选择计数(*)从连接(p_dbcon)。
CATCH cx_sy_dynamic_osql_semantics。

如果在LV_TABNAME中指定了无效的表名,则会出现问题。 系统确实注意到引发了可捕获的异常CX_SY_DYNAMIC_OSQL_SEMANTICS。 相反,它将创建运行时错误DBSQL_TABLE_UNKNOWN。

  • 是否可以确定辅助数据库中是否存在表LV_TABNAME? 请注意,没有可访问的元数据(例如表DD02L)来查找。
  • 或者有什么办法可以解决这种情况,所以不会导致转储?

预先感谢您,乌尔里希

付费偷看设置
发送
3条回答
SAP德到
1楼-- · 2020-08-15 08:56

桑德拉,你好

是的,我尝试捕获不同的异常类,从CX_SY_DYNAMIC_OSQL_SEMANTICS(在主数据库上捕获)开始,然后将类树扩展到CX_ROOT。 它仍然转储:-/

ABAP文档中满足的要求已得到满足:辅助数据库是主数据库的子集。

haha101010
2楼-- · 2020-08-15 08:56

您确定ABAP不会捕获该信息吗?是否尝试过CATCH cx_root? 请查阅SAP注释或与SAP支持人员联系以确保它不仅仅是一个错误。

ABAP文档说:

当前ABAP中指定的数据库表或视图 SQL语句
 必须在当前AS ABAP的ABAP词典中处于活动状态,无论
 指定的数据库连接。 在辅助数据库中,相同
 每个对象必须存在具有适当结构的已命名和可用对象
 当前ABAP SQL语句中指定的数据库表或视图。 如果不,
 
当学会了学习
3楼-- · 2020-08-15 08:43

请使用COMMENT,保留按钮ANSWER来提出解决方案。

一周热门 更多>