guanshan

 

清除流程内部的所有相关数据

eg1:

declare @procedureTemp table
(
[ProcedureCode] varchar(10)
)
declare @ProcedureCode varchar(10)

INSERT into @procedureTemp SELECT ProcedureCode FROM WorkFlowProcedure

WHILE EXISTS(select [ProcedureCode] from @procedureTemp)
begin
--SET ROWCOUNT 1 --等同TOP(1)
select top(1)@ProcedureCode=[ProcedureCode] from @procedureTemp

declare @caseTemp table
(
[caseCode] varchar(10)
)
declare @caseCode varchar(10)

INSERT into @caseTemp SELECT CaseCode FROM WorkFlowCase WHERE ProcedureCode = @ProcedureCode

WHILE EXISTS(select [caseCode] from @caseTemp)
begin
--SET ROWCOUNT 1 --等同TOP(1) ;最关键是不能使用\'ROWCOUNT \'在循环嵌套里面
select top(1) @caseCode=[caseCode] from @caseTemp

--删除,Add here
--DECLARE @applicationCode VARCHAR(50)

--SELECT @procedureCode=ProcedureCode FROM WorkFlowProcedure

--PRINT @procedureCode

--set @applicationCode = \'20140613100462001\'

--SELECT @caseCode=CaseCode FROM WorkFlowCase WHERE ProcedureCode=@procedureCode AND ApplicationCode = @applicationCode

PRINT @caseCode + \' \' + @ProcedureCode

DELETE FROM [WorkFlowOpinion] WHERE ([CaseCode]=@caseCode)
DELETE FROM [WorkFlowCaseProperty] WHERE ([WorkFlowCaseCode]=@caseCode)
DELETE FROM [WorkFlowAct] WHERE ([CaseCode]=@caseCode)
DELETE FROM [WorkFlowActUser] WHERE ([CaseCode]=@caseCode)
DELETE FROM [WorkFlowCase] WHERE ([CaseCode]=@caseCode)

--SET ROWCOUNT 0
delete from @caseTemp where [caseCode] = @caseCode

end


--SET ROWCOUNT 0
delete from @procedureTemp where [ProcedureCode] = @ProcedureCode

--print \'Name:----\'+@ProcedureCode
end

分类:

技术点:

相关文章:

  • 2021-12-21
  • 2021-12-14
  • 2021-08-27
  • 2021-09-14
  • 2021-06-25
  • 2021-06-16
  • 2021-11-07
  • 2021-09-01
猜你喜欢
  • 2021-10-02
  • 2021-12-04
  • 2021-11-05
  • 2021-12-04
  • 2021-12-04
  • 2021-11-10
相关资源
相似解决方案