解决不完整的 BAM 活动实例 - BizTalk Server
BAM 将不完整活动实例的数据存储在 BAMPrimaryImport 数据库的特殊 活动实例 表中。
如果某些实例记录是在最近一次备份 BAMPrimaryImport 数据库之前启动的,但在完成备份之后才完成这些记录,则这些实例记录将保留在活动的实例表中。 这是因为在还原 BAMPrimaryImport 数据库后,这些实例的完成记录将会丢失。
尽管活动的实例表中的记录不会妨碍 BAM 正常运行,但仍建议您将这些记录标记为“已完成”,然后将它们移出活动的实例表。
必备条件
以BizTalk Server管理员组的成员身份登录。
创建不完整 ActivityID 的列表
请对 BAMPrimaryImport 数据库运行以下查询:
Select ActivityID from bam_<ActivityName>_Active where IsComplete = 0
如果来自外部系统的数据指明查出的活动实例实际上已完成,请运行以下查询以手动完成该实例:
begin transaction exec bam_<ActivityName>_PrimaryImport @ActivityID=N'<ActivityID>', @IsStartNew=0, @IsComplete=1 commit transaction
注意
可以通过将 替换为 ActivityID
ContinuationID
来遵循相同的过程来完成延续活动。
只要主跟踪有任何活动的继续符跟踪,则该主跟踪将一直保持活动状态,直到继续符跟踪完成。
删除不完整的实例
还可以使用自定义 SQL 脚本从 BAMPrimaryImport 数据库中删除不完整的活动实例。 有关示例 ,请参阅删除不完整的活动实例 。