技术答疑.多类别基础资料选择重建视图时报错?
【问题描述】以收款单为例,BOSIDE扩展收款单,当将单据头上的字段【往来单位类型】的属性【不重建视图】取消勾选后去保存元数据时,会报一个错误:元数据保存成功,但是表结构信息保存出错。
ORA-00942: table or view does not exist
从应用服务器上获取的日志文件中(WebSite\App_Data\Log)可抓到报错的SQL为:
DECLARE CNT PLS_INTEGER;
BEGIN
select COUNT(*) FCOUNT INTO CNT from (SELECT 1 FROM (SELECT TABLE_NAME TABLE_NAME, 'U' TABLE_XTYPE FROM USER_TABLES
UNION SELECT VIEW_NAME TABLE_NAME, 'V' TABLE_XTYPE FROM USER_VIEWS) WHERE TABLE_NAME = 'V_FIN_CONTACTTYPE' );
IF CNT > 0 THEN
EXECUTE IMMEDIATE 'DROP VIEW V_FIN_CONTACTTYPE';
END IF;
END;
【原因分析】
标准产品,为了提升性能,把视图V_FIN_CONTACTTYPE创建成了物化视图,导致使用脚本DROP VIEW来删除该物化视图时异常终止。
【解决方案】
如非必要,标准产品内建的物化视图不要去重建。如果确实需要重建,需要DBA手动去Oracle账套下重建。
删除物化视图的脚本语法示例如下:
DROP MATERIALIZED VIEW YOUR_VIEW_NAME;
---------------------------------------------------------------------------------------------------------
【金蝶云星空BOS二次开发案例演示】https://vip.kingdee.com/article/94751030918525696
技术答疑.多类别基础资料选择重建视图时报错?
本文2024-09-23 04:19:41发表“云星空知识”栏目。
本文链接:https://wenku.my7c.com/article/kingdee-k3cloud-164601.html