如何配置范围形状
“作用域”形状为其内容提供上下文框架。 范围形状的第一个块是上下文块或正文,其中发生了作用域的基本操作;它类似于 try/catch 语句中的 try 块。 在正文之后, “作用域” 形状还可以包含一个或多个异常处理程序块和一个补偿块。
注意
在BizTalk Server和SQL Server位于不同计算机上的多台计算机环境中,如果协调世界时 (UTC) 在两台计算机上不同,则为 Scope 形状配置的 Timeout 属性可能会提前触发,因为BizTalk Server 和SQL Server计算机未同步。 请注意,这不是一个时区问题,因为世界时不受时区影响。
将作用域形状配置为事务边界
在属性窗口中,将“事务类型”属性设置为 Atomic 或 Long Running。
注意
业务流程本身必须为长期事务,这样您才能将“事务类型”设置为“原子”或“长期”。
如果事务类型设置为 Atomic,则在属性窗口中指定以下属性:
属性 说明 Batch 布尔值,确定此事务是否可与多个业务流程实例中的其他事务一起成批处理。 由于 BizTalk Server 不支持对多个业务流程实例中的原子事务进行成批处理,所以 BizTalk Server 中从不使用此属性。 在将来版本中将弃用此属性。 隔离级别 确定并发事务中数据可访问的程度:
- 读取已提交 - 防止所选事务访问并发事务中的数据修改,直到提交。 此选项是 Microsoft SQL Server 的默认设置。
- 可重复读取 - 在所选事务完成之前需要读取锁。
- 可序列化 - 防止并发事务在所选事务完成之前进行数据修改。 此选项是最严格的隔离级别。重试 布尔值,确定是否在出错时重试此事务。 默认值为 True。 注意: 如果引发 Microsoft.XLANG.BaseTypes.RetryTransactionException,或者业务流程引擎无法存储其状态或提交事务,则将重试原子事务。 超时 确定事务失败之前处于非活动状态的时间(以秒计)。 如果不想使用超时,可将此属性值设置为 0。 注意: 这是 DTC 超时,不由业务流程引擎强制执行。 仅对于原子事务,该引擎不会中断事务。 该引擎会在提交前正常运行,只有在通过 DTC 事务中的某一对象参与该事务时,该引擎才会在提交时失败。 如果事务类型设置为“长时间运行”,则在属性窗口中指定以下属性:
属性 说明 超时 确定事务超时并被视为失败事务之前经过的时间(以秒计)。 如果不想使用超时,可将此属性值设置为 0。
配置作用域形状以包含局部变量
在“业务流程视图”窗口中,双击作用域。
右键单击作用域下的“变量”文件夹,然后单击“ 新建变量”。
从如何添加业务流程变量中的“添加变量”中的步骤 2 继续操作。