【开发笔记】新开发的单据,发布后提示表或者视图不存在原创
7人赞赏了该文章
228次浏览
编辑于2023年06月14日 09:48:25
出现场景:新开发的单据,点击发布业务单元,启动测试后,点击对应单据报错。
主要错误如下:
WHERE ("UNIT".FLongNumber = '1' OR ("UNIT".FLongNumber LIKE'1!%')) AND "ORGSTRUCTURE".FUnitId IN (SELECT funitid FROM t_org_oupartfiWHERE FIsSealUp = 0)AND "PARTFI".FIsBizUnit = 1 AND "UNIT".FControlUnitID IN (SELECT forgidFROM t_pm_orgrange WHERE fuserid = '00000000-0000-0000-0000-00000000000013B7DE7F' AND ftype = 10)))ORDER BY"ID" ASC) AS TMP_SUBSELECT_ALIAS Caused exception message is: ORA-00942: 表或视图不存在
一般就是这种带有“sql语句,然后提示表或视图不存在”的错误,就是数据库未发布造成的,可以尝试回到bos设计器,点击更新数据库,再次测试即可成功。
错误详情如下:
错误信息:com.kingdee.bos.BOSException: select key ID error. selectSQL is : SELECT TOP 10000 TMP_SUBSELECT_ALIAS."ID", TMP_SUBSELECT_ALIAS."ENTRYS.ID" FROM (SELECT TOP 10000 "ACCRUEDFARM".FID AS "ID", "ENTRYS".FID AS "ENTRYS.ID" FROM CT_ACC_AccruedFarm AS "ACCRUEDFARM" LEFT OUTER JOIN CT_ACC_AccruedFarmEntry AS "ENTRYS" ON "ACCRUEDFARM".FID = "ENTRYS".FParentID WHERE ("ACCRUEDFARM".FControlUnitID = ? OR "ACCRUEDFARM".FControlUnitID = ? OR "ACCRUEDFARM".FControlUnitID = ?) AND (("ACCRUEDFARM".CFFICompanyID IS NULL) OR "ACCRUEDFARM".CFFICompanyID IN (SELECT "UNIT".FID FROM T_ORG_Structure AS "ORGSTRUCTURE" LEFT OUTER JOIN T_ORG_BaseUnit AS "UNIT" ON "ORGSTRUCTURE".FUnitId = "UNIT".FID LEFT OUTER JOIN T_ORG_Tree AS "TREE" ON "ORGSTRUCTURE".FTreeId = "TREE".FID LEFT OUTER JOIN T_ORG_OUPartFI AS "PARTFI" ON "UNIT".FPartFIID = "PARTFI".FID LEFT OUTER JOIN T_ORG_CtrlUnit AS "CU" ON "UNIT".FControlUnitID = "CU".FID WHERE ("UNIT".FLongNumber = '1' OR ("UNIT".FLongNumber LIKE '1!%')) AND "ORGSTRUCTURE".FUnitId IN (SELECT funitid FROM t_org_oupartfi WHERE FIsSealUp = 0) AND "PARTFI".FIsBizUnit = 1 AND "UNIT".FControlUnitID IN (SELECT forgid FROM t_pm_orgrange WHERE fuserid = '00000000-0000-0000-0000-00000000000013B7DE7F' AND ftype = 10))) ORDER BY "ID" ASC) AS TMP_SUBSELECT_ALIAS Caused exception message is: ORA-00942: 表或视图不存在 错误详细堆栈信息:java.lang.RuntimeException: com.kingdee.bos.BOSException: select key ID error. selectSQL is : SELECT TOP 10000 TMP_SUBSELECT_ALIAS."ID", TMP_SUBSELECT_ALIAS."ENTRYS.ID" FROM (SELECT TOP 10000 "ACCRUEDFARM".FID AS "ID", "ENTRYS".FID AS "ENTRYS.ID" FROM CT_ACC_AccruedFarm AS "ACCRUEDFARM" LEFT OUTER JOIN CT_ACC_AccruedFarmEntry AS "ENTRYS" ON "ACCRUEDFARM".FID = "ENTRYS".FParentID WHERE ("ACCRUEDFARM".FControlUnitID = ? OR "ACCRUEDFARM".FControlUnitID = ? OR "ACCRUEDFARM".FControlUnitID = ?) AND (("ACCRUEDFARM".CFFICompanyID IS NULL) OR "ACCRUEDFARM".CFFICompanyID IN (SELECT "UNIT".FID FROM T_ORG_Structure AS "ORGSTRUCTURE" LEFT OUTER JOIN T_ORG_BaseUnit AS "UNIT" ON "ORGSTRUCTURE".FUnitId = "UNIT".FID LEFT OUTER JOIN T_ORG_Tree AS "TREE" ON "ORGSTRUCTURE".FTreeId = "TREE".FID LEFT OUTER JOIN T_ORG_OUPartFI AS "PARTFI" ON "UNIT".FPartFIID = "PARTFI".FID LEFT OUTER JOIN T_ORG_CtrlUnit AS "CU" ON "UNIT".FControlUnitID = "CU".FID WHERE ("UNIT".FLongNumber = '1' OR ("UNIT".FLongNumber LIKE '1!%')) AND "ORGSTRUCTURE".FUnitId IN (SELECT funitid FROM t_org_oupartfi WHERE FIsSealUp = 0) AND "PARTFI".FIsBizUnit = 1 AND "UNIT".FControlUnitID IN (SELECT forgid FROM t_pm_orgrange WHERE fuserid = '00000000-0000-0000-0000-00000000000013B7DE7F' AND ftype = 10))) ORDER BY "ID" ASC) AS TMP_SUBSELECT_ALIAS Caused exception message is: ORA-00942: 表或视图不存在 at: com.kingdee.eas.framework.client.ListUI.fillFirstData(ListUI.java:3108) at: com.kingdee.eas.framework.client.ListUI.getDataFirsetTime(ListUI.java:2970) at: com.kingdee.eas.framework.client.ListUI.tblMain_doRequestRowSetForHasQueryPK(ListUI.java:2849) at: com.kingdee.eas.framework.client.ListUI.tblMain_doRequestRowSet(ListUI.java:2736) at: com.kingdee.eas.framework.client.CoreBillListUI.tblMain_doRequestRowSet(CoreBillListUI.java:337) at: com.kingdee.eas.framework.client.AbstractListUI$2.doRequestRowSet(AbstractListUI.java:332) at: com.kingdee.bos.ctrl.kdf.data.impl.DataSetWrapperFactory.fireRequestRowSet(DataSetWrapperFactory.java:257) at: com.kingdee.bos.ctrl.kdf.data.impl.DataSetWrapperFactory.requestData(DataSetWrapperFactory.java:233) at: com.kingdee.bos.ctrl.kdf.table.KDTDataRequestManager.requestData(KDTDataRequestManager.java:597) at: com.kingdee.bos.ctrl.kdf.table.KDTDataRequestManager.doDataRequestPage(KDTDataRequestManager.java:515) at: com.kingdee.bos.ctrl.kdf.table.KDTDataRequestManager.doDataRequest2(KDTDataRequestManager.java:420) at: com.kingdee.bos.ctrl.kdf.table.KDTDataRequestManager.doDataRequest(KDTDataRequestManager.java:331) at: com.kingdee.bos.ctrl.kdf.table.KDTBody.getRow(KDTBody.java:145) at: com.kingdee.bos.ctrl.kdf.table.KDTable.getRow(KDTable.java:4421) at: com.kingdee.eas.framework.client.ListUI.selectFirstRow(ListUI.java:6630) at: com.kingdee.eas.framework.client.ListUI.onShow(ListUI.java:6571) at: com.kingdee.eas.framework.client.CoreBillListUI.onShow(CoreBillListUI.java:2340) at: com.kingdee.eas.framework.client.CoreUI.doLayout(CoreUI.java:3588) at: java.awt.Container.validateTree(Container.java:1507) at: java.awt.Container.validateTree(Container.java:1513) at: java.awt.Container.validate(Container.java:1480) at: com.kingdee.eas.base.uiframe.client.BodyUI.setCurTabIndex(BodyUI.java:154) at: com.kingdee.eas.base.uiframe.client.UIObjectManager.changeTab(UIObjectManager.java:120) at: com.kingdee.eas.base.uiframe.client.UIObjectManager.changeTab(UIObjectManager.java:128) at: com.kingdee.eas.base.uiframe.client.UINewTab.show(UINewTab.java:42) at: com.kingdee.eas.base.uiframe.client.UIShowHelper.showUI(UIShowHelper.java:48) at: com.kingdee.eas.base.uiframe.client.UIShowHelper.showUI(UIShowHelper.java:24) at: com.kingdee.eas.base.uiframe.client.LeafMenuCellPane.performDblclick(LeafMenuCellPane.java:220) at: com.kingdee.eas.base.uiframe.client.LeafMenuCellPane.access$500(LeafMenuCellPane.java:37) at: com.kingdee.eas.base.uiframe.client.LeafMenuCellPane$TopLabelMouseAdapter.mouseClicked(LeafMenuCellPane.java:89) at: java.awt.Component.processMouseEvent(Component.java:6332) at: javax.swing.JComponent.processMouseEvent(JComponent.java:3275) at: java.awt.Component.processEvent(Component.java:6094) at: java.awt.Container.processEvent(Container.java:2041) at: java.awt.Component.dispatchEventImpl(Component.java:4692) at: java.awt.Container.dispatchEventImpl(Container.java:2099) at: java.awt.Component.dispatchEvent(Component.java:4520) at: java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4582) at: java.awt.LightweightDispatcher.processMouseEvent(Container.java:4252) at: java.awt.LightweightDispatcher.dispatchEvent(Container.java:4173) at: java.awt.Container.dispatchEventImpl(Container.java:2085) at: java.awt.Window.dispatchEventImpl(Window.java:2492) at: java.awt.Component.dispatchEvent(Component.java:4520) at: java.awt.EventQueue.dispatchEventImpl(EventQueue.java:681) at: java.awt.EventQueue.access$400(EventQueue.java:81) at: java.awt.EventQueue$2.run(EventQueue.java:640) at: java.awt.EventQueue$2.run(EventQueue.java:638) at: java.security.AccessController.doPrivileged(Native Method) at: java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:58) at: java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:68) at: java.awt.EventQueue$3.run(EventQueue.java:654) at: java.awt.EventQueue$3.run(EventQueue.java:652) at: java.security.AccessController.doPrivileged(Native Method) at: java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:58) at: java.awt.EventQueue.dispatchEvent(EventQueue.java:651) at: com.kingdee.bos.invokecounter.RPCLogEventQueue.dispatchEvent(RPCLogEventQueue.java:176) at: sun.reflect.GeneratedMethodAccessor20.invoke(Unknown Source) at: sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at: java.lang.reflect.Method.invoke(Method.java:597) at: com.kingdee.eas.client.recorder.UserInputEventQueue.myDispatchEvent(UserInputEventQueue.java:126) at: com.kingdee.eas.client.recorder.UserInputEventQueue.dispatchEvent(UserInputEventQueue.java:59) at: java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269) at: java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184) at: java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174) at: java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169) at: java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161) at: java.awt.EventDispatchThread.run(EventDispatchThread.java:122) com.kingdee.bos.BOSException: select key ID error. selectSQL is : SELECT TOP 10000 TMP_SUBSELECT_ALIAS."ID", TMP_SUBSELECT_ALIAS."ENTRYS.ID" FROM (SELECT TOP 10000 "ACCRUEDFARM".FID AS "ID", "ENTRYS".FID AS "ENTRYS.ID" FROM CT_ACC_AccruedFarm AS "ACCRUEDFARM" LEFT OUTER JOIN CT_ACC_AccruedFarmEntry AS "ENTRYS" ON "ACCRUEDFARM".FID = "ENTRYS".FParentID WHERE ("ACCRUEDFARM".FControlUnitID = ? OR "ACCRUEDFARM".FControlUnitID = ? OR "ACCRUEDFARM".FControlUnitID = ?) AND (("ACCRUEDFARM".CFFICompanyID IS NULL) OR "ACCRUEDFARM".CFFICompanyID IN (SELECT "UNIT".FID FROM T_ORG_Structure AS "ORGSTRUCTURE" LEFT OUTER JOIN T_ORG_BaseUnit AS "UNIT" ON "ORGSTRUCTURE".FUnitId = "UNIT".FID LEFT OUTER JOIN T_ORG_Tree AS "TREE" ON "ORGSTRUCTURE".FTreeId = "TREE".FID LEFT OUTER JOIN T_ORG_OUPartFI AS "PARTFI" ON "UNIT".FPartFIID = "PARTFI".FID LEFT OUTER JOIN T_ORG_CtrlUnit AS "CU" ON "UNIT".FControlUnitID = "CU".FID WHERE ("UNIT".FLongNumber = '1' OR ("UNIT".FLongNumber LIKE '1!%')) AND "ORGSTRUCTURE".FUnitId IN (SELECT funitid FROM t_org_oupartfi WHERE FIsSealUp = 0) AND "PARTFI".FIsBizUnit = 1 AND "UNIT".FControlUnitID IN (SELECT forgid FROM t_pm_orgrange WHERE fuserid = '00000000-0000-0000-0000-00000000000013B7DE7F' AND ftype = 10))) ORDER BY "ID" ASC) AS TMP_SUBSELECT_ALIAS Caused exception message is: ORA-00942: 表或视图不存在 at: com.kingdee.bos.dao.query.server.SeqTableDiskCacheAcuquire.acquire(SeqTableDiskCacheAcuquire.java:232) at: com.kingdee.bos.dao.query.server.SeqTableManager.acquire(SeqTableManager.java:123) at: com.kingdee.bos.dao.query.server.VirtualModeDataAccess.innerOpenQuery(VirtualModeDataAccess.java:330) at: com.kingdee.bos.dao.query.server.VirtualModeDataAccess.doAllQueryTask(VirtualModeDataAccess.java:2156) at: rpc_generate._PROXY_com_1_kingdee_1_bos_1_dao_1_query_1_server_1_IVirtualModeDataAccess.pi11(Unknown Source) at: rpc_generate._PROXY_com_1_kingdee_1_bos_1_dao_1_query_1_server_1_IVirtualModeDataAccess.processInvoke(Unknown Source) at: com.kingdee.bos.rpc.impl.ObjectProxy.processInvoke(ObjectProxy.java:177) at: com.kingdee.bos.rpc.impl.RPCService.serviceCreateObjectAndInvoke(RPCService.java:618) at: com.kingdee.bos.rpc.impl.RPCService.service(RPCService.java:125) at: com.kingdee.bos.rpc.impl.ServiceDispatcher.run(ServiceDispatcher.java:153) at: java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:439) at: java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303) at: java.util.concurrent.FutureTask.run(FutureTask.java:138) at: com.kingdee.bos.rpc.impl.ThreadPoolExecutorReImpl.runWorker(ThreadPoolExecutorReImpl.java:1152) at: com.kingdee.bos.rpc.impl.ThreadPoolExecutorReImpl$Worker.run(ThreadPoolExecutorReImpl.java:622) at: java.lang.Thread.run(Thread.java:682) java.sql.SQLException: ORA-00942: 表或视图不存在 at: oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:447) at: oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:396) at: oracle.jdbc.driver.T4C8Oall.processError(T4C8Oall.java:951) at: oracle.jdbc.driver.T4CTTIfun.receive(T4CTTIfun.java:513) at: oracle.jdbc.driver.T4CTTIfun.doRPC(T4CTTIfun.java:227) at: oracle.jdbc.driver.T4C8Oall.doOALL(T4C8Oall.java:531) at: oracle.jdbc.driver.T4CPreparedStatement.doOall8(T4CPreparedStatement.java:208) at: oracle.jdbc.driver.T4CPreparedStatement.executeForDescribe(T4CPreparedStatement.java:879) at: oracle.jdbc.driver.OracleStatement.executeMaybeDescribe(Unknown Source) at: oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(Unknown Source) at: oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java:3608) at: oracle.jdbc.driver.OraclePreparedStatement.executeQuery(OraclePreparedStatement.java:3652) at: oracle.jdbc.driver.OraclePreparedStatementWrapper.executeQuery(OraclePreparedStatementWrapper.java:1207) at: com.kingdee.bos.sql.shell.KDPreparedStatement.executeQuery(KDPreparedStatement.java:322) at: com.apusic.jdbc.adapter.PreparedStatementHandle.executeQuery(Unknown Source) at: com.kingdee.bos.dao.query.server.SeqTableDiskCacheAcuquire.acquire(SeqTableDiskCacheAcuquire.java:116) at: com.kingdee.bos.dao.query.server.SeqTableManager.acquire(SeqTableManager.java:123) at: com.kingdee.bos.dao.query.server.VirtualModeDataAccess.innerOpenQuery(VirtualModeDataAccess.java:330) at: com.kingdee.bos.dao.query.server.VirtualModeDataAccess.doAllQueryTask(VirtualModeDataAccess.java:2156) at: rpc_generate._PROXY_com_1_kingdee_1_bos_1_dao_1_query_1_server_1_IVirtualModeDataAccess.pi11(Unknown Source) at: rpc_generate._PROXY_com_1_kingdee_1_bos_1_dao_1_query_1_server_1_IVirtualModeDataAccess.processInvoke(Unknown Source) at: com.kingdee.bos.rpc.impl.ObjectProxy.processInvoke(ObjectProxy.java:177) at: com.kingdee.bos.rpc.impl.RPCService.serviceCreateObjectAndInvoke(RPCService.java:618) at: com.kingdee.bos.rpc.impl.RPCService.service(RPCService.java:125) at: com.kingdee.bos.rpc.impl.ServiceDispatcher.run(ServiceDispatcher.java:153) at: java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:439) at: java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303) at: java.util.concurrent.FutureTask.run(FutureTask.java:138) at: com.kingdee.bos.rpc.impl.ThreadPoolExecutorReImpl.runWorker(ThreadPoolExecutorReImpl.java:1152) at: com.kingdee.bos.rpc.impl.ThreadPoolExecutorReImpl$Worker.run(ThreadPoolExecutorReImpl.java:622) at: java.lang.Thread.run(Thread.java:682)
推荐阅读