SAP HANA Studio中Calculation View的take over选项置灰如何解决
遇到过这种卡壳的情况,几个亲测有效的处理方法,你可以挨个尝试:
检查并释放跨工作区的锁定
这个提示说明对象属于多个工作区,很可能其他工作区的会话还在锁定它。先关闭所有HANA Studio实例,重新打开后只加载你需要编辑的目标工作区,再打开视图看看Take Over按钮是否恢复可用。
如果你有权限,也可以通过管理控制台手动解锁:打开Window > Perspective > Open Perspective > Other,选择Administration Console连接到HANA系统,切换到Locks标签页,找到对应Calculation View的锁定条目,右键选择释放。验证工作区映射与权限
右键点击当前项目,选择Properties > SAP HANA Development > Workspace Mapping,确认当前工作区正确映射到了视图所在的包,同时联系管理员确认你拥有该包的修改权限(比如REPO.EDIT_NATIVE_OBJECTS权限)。
另外,可以尝试把该视图从其他关联工作区移除:在其他工作区右键视图,选择Delete,注意要选Delete from workspace only(别删服务器上的对象),之后回到目标工作区重新打开视图。清理HANA Studio本地缓存
本地缓存损坏也可能导致这种异常。关闭HANA Studio,找到你的工作区目录下的.metadata文件夹,删除其中的.plugins/com.sap.hana.studio.repository子文件夹,重启Studio后重新连接系统,再打开视图试试。用SQL手动获取所有权
如果GUI按钮完全失效,可以试试直接用SQL操作。打开SQL Console连接到目标HANA系统,执行以下语句(替换成你的用户名和视图名称):UPDATE "_SYS_REPO"."ACTIVE_OBJECT_LOCKS" SET "LOCK_OWNER" = '<你的HANA用户名>', "LOCK_TIMESTAMP" = CURRENT_TIMESTAMP WHERE "OBJECT_NAME" = '<Calculation View名称>' AND "OBJECT_TYPE" = 'CALCVIEW'; COMMIT;执行完成后回到编辑器刷新视图,应该就能正常编辑了(注意需要有
_SYS_REPO表的修改权限)。
内容的提问来源于stack exchange,提问作者Thorsten Niehues

