共用方式為


工作流程追蹤服務資料庫

Windows Workflow Foundation 的 SQL 追蹤服務,可讓您加入關於工作流程與其相關活動的追蹤資訊。SqlTrackingQuery 類別提供對追蹤資料庫所含之資料的高層級存取。然而,您也可以對 SQL 追蹤服務資料庫檢視使用直接查詢,以取得更詳細資訊。這些檢視直接對應至基礎 SQL 追蹤服務資料表結構描述。

SQL 追蹤服務資料庫資料表

下列資訊概述 SQL 追蹤服務使用的資料表及其相關資料行。

工作流程

工作流程資料表儲存已經由 SqlTrackingService 追蹤之所有工作流程類型的工作流程定義。它會在工作流程首次具現化 (Instantiated) 及此工作流程類別啟用 SqlTrackingService 時填入。

資料行 描述

WorkflowTypeId

連結至型別資料表,其中儲存型別名稱和組件名稱 (顯示工作流程類型的位置)。

WorkflowDefinition

工作流程的定義。

活動

活動資料表儲存所有出現在對應工作流程類型的活動類別。

資料行 描述

WorkflowTypeId

連結至型別資料表,其中儲存型別名稱和組件名稱 (顯示工作流程類型的位置)。

QualifiedName

來自工作流程定義的活動限定名稱。

ActivityTypeId

連結至型別資料表,其中儲存型別名稱和組件名稱 (顯示活動類型的位置)。

ParentQualifiedName

若活動是在另一個活動中組成,此欄將保留父活動的活動限定名稱。

型別

型別資料表儲存所有型別資訊和型別發生的組件名稱。其中包括工作流程類型、活動類型以及在 SqlTrackingService 中使用的任何其他類型。例如,若您以追蹤資料項目追蹤字串,字串型別資訊即儲存於此資料表。

資料行 描述

TypeId

型別的唯一識別碼。

TypeFullName

型別的完整格式名稱。

AssemblyFullName

儲存型別的組件之完整名稱。

IsInstanceType

布林值,表示工作流程執行個體是否限制為 XOML 的執行個體 (在此例中,型別與組件全名將為 null)。

WorkflowInstance

WorkflowInstance 資料表保留在追蹤資料庫中追蹤的所有工作流程執行個體清單。

資料行 描述

WorkflowInstanceInternalId

資料庫賦予工作流程執行個體的唯一內部識別碼。它的作用是在資料庫聯結其他資料表時當成外部索引鍵。

WorkflowInstanceId

工作流程執行個體的 GUID。

ContextGuid

關於此工作流程執行個體的內容資訊。

CallerInstanceId

叫用此工作流程執行個體的工作流程執行個體識別碼。

CallPath

假如工作流程執行個體呼叫工作流程執行個體,然後它又被其他工作流程執行個體呼叫,此時使用的完整呼叫路徑。

CallerContextGuid

關於呼叫端的內容資訊。

CallerParentContextGuid

關於呼叫執行個體的父工作流程執行個體之內容資訊。

WorkflowTypeId

連結至使用工作流程類型識別碼的工作流程資料表。

InitializedDateTime

工作流程執行個體初始化的日期和時間。

CreatedDateTime

工作流程執行個體建立的日期和時間。

DbInitializedDateTime

工作流程執行個體記錄初始化的資料庫日期和時間。

EndDateTime

工作流程執行個體的完成 / 終止的日期和時間。

DbEndDateTime

工作流程執行個體記錄認可的資料庫日期和時間。

ActivityInstance

ActivityInstance 資料表是用來儲存追蹤的活動執行個體。此資料表對應至 WorkflowInstance 資料表為多對一的關係。

資料行 描述

WorkflowInstanceInternalId

活動所屬之工作流程執行個體的內部資料庫識別碼。

ActivityInstanceId

針對指定工作流程執行個體追蹤活動的唯一識別碼。

QualifiedName

來自工作流程定義的活動限定名稱。

ContextGuid

活動的內容。

ParentContextGuid

父活動的內容。

WorkflowInstanceEventId

工作流程執行個體事件記錄的唯一識別碼。

ActivityExecutionStatusEvent

ActivityExecutionStatusEvent 資料表儲存活動在經過其生命周期時不同的狀態。針對指定工作流程執行個體的指定活動而言,可能有多個活動狀態。其中只有一個是目前狀態。

資料行 描述

ActivityExecutionStatusEventId

活動執行狀態記錄的唯一識別碼。

WorkflowInstanceInternalId

活動所屬之工作流程執行個體的內部資料庫識別碼。

EventOrder

發生事件的順序。

ActivityInstanceId

活動狀態記錄的唯一識別碼。

ExecutionStatusId

連結至儲存不同狀態描述的 ActivityExecutionStatus 資料表。

EventDateTime

事件發生的日期與時間。

DbEventDateTime

發生此事件的資料庫日期和時間。

ActivityExecutionStatus

ActivityExecutionStatus 資料表是儲存活動經歷之所有可能執行狀態之常值的參考資料表。

資料行 描述

ExecutionStatusId

狀態的唯一識別碼。

描述

狀態的常值。

TrackingDataItem

針對每個活動狀態,若 SqlTrackingService 追蹤諸如變數、屬性等項目 (如追蹤設定檔所示),TrackingDataItem 資料表就會儲存一組資料。追蹤設定檔可指定當特定活動達到特定狀態時,必須追蹤哪些工作流程屬性。

資料行 描述

TrackingDataItemId

唯一的識別碼代表特定 workflowInstance 之活動的指定狀態之指定成品記錄。

WorkflowInstanceInternalId

工作流程執行個體的內部資料庫識別碼。

EventId

擷取追蹤資料項目的事件識別碼。

EventTypeId

擷取追蹤資料項目的事件型別。

FieldName

追蹤的變數名稱 (資料項目)。

FieldTypeId

追蹤的變數型別識別碼 (資料項目)。參考型別資料表。

Data_Str

追蹤的資料字串值 (若為基本型別且可轉換為字串)。

Data_Blob

追蹤資料值的二進位大型物件值 (若為非基本型別且能以二進位序列化)。

DataNonSerializable

表示資料存在,但不能轉換為字串或二進位序列化的旗標。

TrackingDataItemAnnotation

TrackingDataItemAnnotation 資料表儲存針對指定追蹤資料項目在工作流程中產生的所有附註。附註由追蹤設定檔指示。

資料行 描述

TrackingDataItemId

附註儲存之追蹤資料項目的識別碼。

WorkflowInstanceInternalId

工作流程執行個體的內部資料庫識別碼。

附註

附註的常值。

EventAnnotation

EventAnnotation 資料表儲存所有與工作流程事件相關的附註。

資料行 描述

WorkflowInstanceInternalId

工作流程執行個體的內部資料庫識別碼。

EventId

發生附註之事件的內部資料庫識別碼。

EventTypeId

事件型別的內部資料庫識別碼。

附註

附註的常值。

WorkflowInstanceEvent

WorkflowInstanceEvent 資料表儲存工作流程在經過其生命周期時不同的事件。指定工作流程執行個體可能具有多個事件;但其中只有一個為目前事件。

資料行 描述

WorkflowInstanceEventId

工作流程執行個體事件記錄的唯一識別碼。

WorkflowInstanceInternalId

活動所屬之工作流程執行個體的內部資料庫識別碼。

EventDateTime

事件發生的日期與時間。

EventOrder

發生事件的順序。

EventArgTypeId

事件引數之資料型別的內部資料庫識別碼

EventArg

事件引數的二進位序列化資料

DbEventDateTime

發生此事件的資料庫日期和時間。

TrackingWorkflowEvent

TrackingWorkflowEvent 資料表儲存工作流程可能經歷的所有事件之常值。

資料行 描述

TrackingWorkflowEventId

事件的唯一識別碼。

描述

事件的常值。

UserEvent

UserEvent 資料表儲存發出的不同事件並按自訂的使用者追蹤點加以追蹤。指定工作流程執行個體可以有多個使用者事件。

資料行 描述

UserEventId

使用者事件的唯一識別碼。

WorkflowInstanceInternalId

活動所屬之工作流程執行個體的內部資料庫識別碼。

EventOrder

發生事件的順序。

ActivityInstanceId

使用者事件發生的活動之唯一識別碼 (發出事件的程式碼屬於工作流程程式碼)。

EventDateTime

事件發生的日期與時間。

UserDataKey

使用者事件所傳送的關鍵值 (當您使用 TrackData 方法)。

UserDataTypeId

追蹤的使用者資料中,位於型別資料表的型別識別碼。

UserData_Str

追蹤的資料字串值 (若為基本型別且可轉換為字串)。

UserData_Blob

追蹤資料值的二進位大型物件值 (若為非基本型別且能以二進位序列化)。

DataNonSerializable

表示資料存在,但不能轉換為字串或二進位序列化的旗標。

DbEventDateTime

發生此事件的資料庫日期和時間。

AddedActivity

AddedActivity 資料表儲存活動,當工作流程發生變更時,活動即加入工作流程。每個工作流程的變更可能加入許多活動。

資料行 描述

WorkflowInstanceInternalId

工作流程執行個體的內部資料庫識別碼。

WorkflowInstanceEventId

參考工作流程執行個體的事件。

QualifiedName

加入的活動之限定名稱。

ActivityTypeId

連結至型別資料表以針對活動指示型別和組件名稱,這些活動是因動態變更而加入。

ParentQualifiedName

包含此活動之父活動的限定名稱。

AddedActivityAction

從動態更新事件建立的 ActivityChangeAction 物件之序列值。

順序

活動加入工作流程的順序

RemovedActivity

RemovedActivity 資料表儲存所有被工作流程變更所移除的活動。每個工作流程變更都可能移除許多活動。

資料行 描述

WorkflowInstanceInternalId

工作流程執行個體的內部資料庫識別碼。

WorkflowInstanceEventId

參考工作流程執行個體的事件。

QualifiedName

移除的活動之限定名稱。

ParentQualifiedName

包含此活動之父活動的限定名稱。

RemovedActivityAction

從動態更新事件建立的 ActivityChangeAction 物件之序列值。

順序

活動加入工作流程的順序

TrackingProfile

TrackingProfile 資料表儲存指定之工作流程類型的追蹤設定檔。

資料行 描述

TrackingProfileId

追蹤設定檔的唯一識別碼。

版本

追蹤設定檔的版本,應當對應追蹤設定檔的版本 (追蹤設定檔 XML 中的 TrackingProfile.Version 或版本屬性)。

WorkflowTypeId

連結至型別資料表,其中儲存工作流程的型別名稱和組件名稱。

TrackingProfileXml

追蹤設定檔 XML。

InsertDateTime

設定檔插入的日期與時間。

TrackingProfileInstance

TrackingProfileInstance 資料表儲存特定工作流程執行個體相關的追蹤設定檔。不同工作流程執行個體使用不同設定檔時使用。

資料行 描述

InstanceId

追蹤設定檔儲存的工作流程執行個體內部識別碼。

TrackingProfileXml

追蹤設定檔 XML。

UpdatedDateTime

更新發生的日期與時間。

DefaultTrackingProfile

DefaultTrackingProfile 資料表儲存預設追蹤設定檔。若追蹤設定檔未與指定工作流程類型相關聯,此時會使用預設追蹤設定檔。

資料行 描述

版本

追蹤設定檔的版本編號,應當對應追蹤設定檔的版本 (追蹤設定檔 XML 中的 TrackingProfile.Version 或版本屬性)。

TrackingProfileXml

追蹤設定檔 XML。

InsertDateTime

追蹤設定檔插入的日期與時間。

TrackingPartitionInterval

TrackingPartitionInterval 資料表儲存分割間隔,以啟用分割供資料維護之用。只有當 SqlTrackingService 類別的 PartitionOnCompletion 屬性設定為 true 時才會發生。預設為每月 ("m")。您可將它設定為每日 ("d") 或每年 ("y")。

資料行 描述

Interval

資料表要分割的間隔。

TrackingPartitionSetName

TrackingPartitionSetName 資料表保留關於分割集名稱的資訊。

資料行 描述

PartitionId

分割的唯一識別碼。

名稱

分割的名稱。

CreatedDateTime

分割建立的日期與時間。

EndDateTime

分割結束的日期與時間。

PartitionInterval

此特定集的分割間隔。

SQL 追蹤服務資料庫角色

  • tracking_writer

    這是執行主機處理程序之帳戶應扮演的角色。該角色擁有權限可取出追蹤設定檔及寫入追蹤資料。

  • tracking_reader

    此種角色的帳戶可檢視所有資料,但無法更新或修改資料。此角色的使用者也無法存取基礎表格。

  • tracking_profilereaderwriter

    此角色是針對需要修改設定檔資料的使用者帳戶。

請參閱

參考

SqlTrackingService

其他資源

Simple Tracking Example
Windows Workflow Foundation 一般參考

Footer image

Copyright © 2007 by Microsoft Corporation. All rights reserved.