会员名称: 登录密码: (找回密码) 登录 会员注册

分类

问题
上个主题 下个主题
主题:(MPS运算方案参数)点击下一步时出现“正在调用中间层组件"
avatar
qqlenovo
企业管理 行业
Ta擅长:
数据库(1) 本周回答(0),本月回答(0)
发贴时间:2008-11-13 16:50:16   完成时间: 2008-12-6 18:12:55
赠分:10      回答:3   已经到期    
k3 10.2 sp1 pt000704
进行MPS运算 ,在步骤(MPS运算方案参数)点击下一步 时 出现“正在调用中间层组件“并无法继续,并导致SQL进程占用CPU资源非常高,
尝试处理方法:
1。在中间层进行运算也出现这种情况,中间层重新安装也不行
2。用以前备份的账套进行运算 能正常运算。
3。通过 SQL事件探测器 获取 正常账套(以上2。) 在步骤(MPS运算方案参数)点击下一步 时 的SQL语句:
-----------------------------------------------
--进行BOM向上展开需求物料
select FItemID into #tab from t_ICItem t1
left join t_SubMessage t2 on t1.FPlanTrategy = t2.FInterID
where t2.FID = 'MPS' and t2.FTypeID = 167

while exists (
select w1.FItemID
from ICBom w1
inner join (
select u1.FInterID
from ICBomChild u1
inner join #tab v1 on u1.FItemID = v1.FItemID
union
select u1.FInterID
from ICCustBomChild u1
inner join #tab v1 on u1.FItemID = v1.FItemID ) x1 on w1.FInterID = x1.FInterID
where w1.FStatus = 1 and w1.FUseStatus = 1072
and w1.FItemID not in (select FItemID from #tab)
)

insert into #tab
select distinct w1.FItemID
from ICBom w1
inner join (
select u1.FInterID
from ICBomChild u1
inner join #tab v1 on u1.FItemID = v1.FItemID
union
select u1.FInterID
from ICCustBomChild u1
inner join #tab v1 on u1.FItemID = v1.FItemID ) x1 on w1.FInterID = x1.FInterID
where w1.FStatus = 1 and w1.FUseStatus = 1072
and w1.FItemID not in (select FItemID from #tab)

Truncate table IC_PLMpsItem
insert into IC_PLMpsItem
(FItemID)
select distinct u1.FItemID
from #tab u1

--select * from TempICMRPSelItem
--select * from #tab
drop table #tab

-------------------------------
把以上语句放在故障账套中执行。出现”正在执行批查询“并一直出现,。
也就是以上语句在故障账套中无法执行

请大家帮我想想办法。急呀!谢谢!
avatar
qqlenovo
企业管理 行业
Ta擅长:
数据库(1) 本周回答(0),本月回答(0)
回答时间:2008-11-13 22:33:15
太高兴了,我终于解决了,原来在账套管理中执行优化账套,然后收缩一下数据库就可以了,

可能是数据太大了,有3.5个G.看来出现一些莫明其妙的问题,就试试优化账套.
建议版主把我这个问题放到精华里面去,给大家处理故障时有个参考
发文者评价: (共获积分:10
  根据投票自动设置的最佳答案
网友评价: 60%       40%     (目前有 1 人评价)
你的评价:
其他回答
avatar
qfmiao
IT 行业
Ta擅长:
K/3 BOS(8),插件设计(5) 本周回答(0),本月回答(0)
回答时间:2008-11-13 17:26:32
把语句区分开来~确定到底那句执行超时~
纯粹个人意见~
 
avatar
qqlenovo
企业管理 行业
Ta擅长:
数据库(1) 本周回答(0),本月回答(0)
回答时间:2008-11-13 22:17:01
执行以下正常
select FItemID into #tab from t_ICItem t1
left join t_SubMessage t2 on t1.FPlanTrategy = t2.FInterID
where t2.FID = 'MPS' and t2.FTypeID = 167

执行以下语句不正常
while exists (
select w1.FItemID
from ICBom w1
inner join (
select u1.FInterID
from ICBomChild u1
inner join #tab v1 on u1.FItemID = v1.FItemID
union
select u1.FInterID
from ICCustBomChild u1
inner join #tab v1 on u1.FItemID = v1.FItemID ) x1 on w1.FInterID = x1.FInterID
where w1.FStatus = 1 and w1.FUseStatus = 1072
and w1.FItemID not in (select FItemID from #tab)
)

insert into #tab
select distinct w1.FItemID
from ICBom w1
inner join (
select u1.FInterID
from ICBomChild u1
inner join #tab v1 on u1.FItemID = v1.FItemID
union
select u1.FInterID
from ICCustBomChild u1
inner join #tab v1 on u1.FItemID = v1.FItemID ) x1 on w1.FInterID = x1.FInterID
where w1.FStatus = 1 and w1.FUseStatus = 1072
and w1.FItemID not in (select FItemID from #tab)

就是将查询出来的数据insert to 到#tab 表时不正常,但查询的结果是0行,也就是0行insert into 到#tab 表.
View as RSS news feed in XML
© 2008 金蝶国际软件集团 版权所有  Version:3.2.2008.27643 页面时间:206.8942Ms