Base de datos del servicio de seguimiento del flujo de trabajo
El servicio de seguimiento de SQL en Windows Workflow Foundation le permite agregar información de seguimiento sobre los flujos de trabajo y sus actividades asociadas. La clase SqlTrackingQuery proporciona el acceso de alto nivel a los datos que contenidos en la base de datos de seguimiento. Sin embargo, también puede usar las consultas directas en las vistas de la base de datos de servicio de seguimiento de SQL para obtener más información detallada. Estas vistas asignan directamente al SQL subyacente esquemas de tabla del servicio de seguimiento.
Tablas de la base de datos del servicio de seguimiento de SQL
La información siguiente describe las tablas y sus columnas asociadas usadas por el servicio de seguimiento de SQL.
Flujo de trabajo
La tabla de flujo de trabajo almacena la definición de flujo de trabajo de todos los tipos de flujo de trabajo que han sido seguidos por SqlTrackingService. Se rellena la primera vez que se crea una instancia de un flujo de trabajo y SqlTrackingService está habilitado para este tipo de flujo de trabajo.
Columna | Descripción |
---|---|
WorkflowTypeId |
Vincula a la tabla Tipo que almacena el nombre de tipo y el nombre de ensamblado donde aparece el tipo de flujo de trabajo. |
WorkflowDefinition |
Obtiene la definición del flujo de trabajo. |
Actividad
La tabla Actividad almacena todos los tipos de actividad que aparecen en los tipos de flujo de trabajo correspondientes.
Columna | Descripción |
---|---|
WorkflowTypeId |
Vincula a la tabla Tipo que almacena el nombre de tipo y el nombre de ensamblado donde aparece el tipo de flujo de trabajo. |
QualifiedName |
El nombre completo de la actividad de la definición de flujo de trabajo. |
ActivityTypeId |
Vincula a la tabla Tipo que almacena el nombre de tipo y el nombre de ensamblado donde aparece el tipo de actividad. |
ParentQualifiedName |
Si la actividad se crea en otra actividad, este campo contiene el nombre completo de la actividad primaria. |
Tipo
La tabla Tipo almacena toda la información de tipo y los nombres de ensamblado en donde se producen. Esto incluye los tipos de flujo de trabajo, tipos de actividad y cualquier otro tipo usados dentro de SqlTrackingService. Por ejemplo, si realizara el seguimiento de una cadena como un Elemento de datos de seguimiento, la información de tipo de la cadena se almacena en esta tabla.
Columna | Descripción |
---|---|
TypeId |
Identificador único para el tipo. |
TypeFullName |
El nombre completo del tipo. |
AssemblyFullName |
Nombre completo del ensamblado en el que se almacena el tipo. |
IsInstanceType |
Valor booleano que indica si la instancia de flujo de trabajo es un XOML- solo instancia (en este caso, el tipo y los nombres completos de ensamblado serán nulos). |
WorkflowInstance
La tabla WorkflowInstance mantiene la lista de todas las instancias de flujo de trabajo que han estado siguiendo en la base de datos de seguimiento.
Columna | Descripción |
---|---|
WorkflowInstanceInternalId |
Identificador interno único que la base de datos asigna a la instancia de flujo de trabajo. Se usa como una clave externa para unir otras tablas en la base de datos. |
WorkflowInstanceId |
GUID de la instancia de flujo de trabajo. |
ContextGuid |
Información de contexto sobre esta instancia de flujo de trabajo. |
CallerInstanceId |
Id. de la instancia de flujo de trabajo que invocó esta instancia de flujo de trabajo. |
CallPath |
Ruta de acceso de la llamada completa que se usa en caso de que una instancia de flujo de trabajo llame a una instancia de grupo de trabajo, a la que a su vez llama otra instancia de grupo de trabajo. |
CallerContextGuid |
Información de contexto sobre el autor de la llamada. |
CallerParentContextGuid |
Información de contexto sobre la instancia de flujo de trabajo primaria de la instancia de la llamada. |
WorkflowTypeId |
Vínculo a la tabla de flujo de trabajo usando el id. de tipo del flujo de trabajo. |
InitializedDateTime |
La fecha y hora de la iniciación de la instancia de flujo de trabajo. |
CreatedDateTime |
La fecha y hora de la creación de la instancia de flujo de trabajo. |
DbInitializedDateTime |
Fecha de la base de datos y hora cuando se inicializó el registro de la instancia de flujo de trabajo. |
EndDateTime |
La fecha y hora de la realización/finalización de la instancia de flujo de trabajo. |
DbEndDateTime |
Fecha de la base de datos y hora cuando se confirmó el registro de la instancia de flujo de trabajo. |
ActivityInstance
La tabla ActivityInstance se usa para almacenar las instancias de actividades de las que se realiza el seguimiento. Hay una relación de varios a uno de esta tabla a la tabla WorkflowInstance.
Columna | Descripción |
---|---|
WorkflowInstanceInternalId |
Id. de la base de datos interna de la instancia de flujo de trabajo a la que pertenece la actividad. |
ActivityInstanceId |
Identificador único de la actividad sometida a seguimiento para una instancia de flujo de trabajo determinada. |
QualifiedName |
Nombre completo de la actividad de la definición de flujo de trabajo. |
ContextGuid |
Contexto de la actividad. |
ParentContextGuid |
Contexto de la actividad primaria. |
WorkflowInstanceEventId |
Identificador único para el registro de evento de la instancia de flujo de trabajo. |
ActivityExecutionStatusEvent
La tabla ActivityExecutionStatusEvent almacena los estados diferentes en los que una actividad entró a lo largo de su ciclo de vida. Para una actividad determinada en una instancia de flujo de trabajo determinada, puede haber varios estados de actividad. Sólo uno de ellos es el estado actual.
Columna | Descripción |
---|---|
ActivityExecutionStatusEventId |
Identificador único para un registro de estado de ejecución de actividad. |
WorkflowInstanceInternalId |
Id. de la base de datos interna de la instancia de flujo de trabajo a la que pertenece la actividad. |
EventOrder |
Orden en que el evento se produjo. |
ActivityInstance |
Identificador único de la actividad para la que se registra el estado. |
ExecutionStatusId |
Vínculo a la tabla ActivityExecutionStatus, que almacena las diferentes descripciones del estado. |
EventDateTime |
Fecha y hora a la que se produjo el evento. |
DbEventDateTime |
Fecha de la base de datos y hora cuando se produjo el evento. |
ActivityExecutionStatus
La tabla ActivityExecutionStatus es una tabla de referencia que almacena los valores literales de todos los estados por los que puede pasar una actividad.
Columna | Descripción |
---|---|
ExecutionStatusId |
Id. único del valor de estado. |
Descripción |
Valor literal del estado. |
TrackingDataItem
Para cada estado de la actividad, la tabla TrackingDataItem almacena un conjunto de variables como datos, propiedades, etc., si SqlTrackingService está realizando el seguimiento de estos elementos (según se indica en el perfil de seguimiento). El perfil de seguimiento puede especificar de qué atributos de flujo de trabajo se debe realizar el seguimiento cuando una actividad determinada alcanza un estado determinado.
Columna | Descripción |
---|---|
TrackingDataItemId |
Identificador único que representa el registro de un artefacto determinado para un estado determinado de una actividad, que pertenece a un workflowInstance determinado. |
WorkflowInstanceInternalId |
Id. de la base de datos interna para la instancia de flujo de trabajo. |
EventId |
Identificador de eventos donde se extrajo el elemento de datos de seguimiento. |
EventTypeId |
Tipo del evento donde se extrajo el elemento de datos de seguimiento. |
FieldName |
Nombre de la variable (elemento de datos) de la que se realiza el seguimiento. |
FieldTypeId |
Tipo de identificador de la variable (elemento de datos) de la que se realiza el seguimiento. Esto hace referencia a la tabla de tipo. |
Data_Str |
Valor de cadena de los datos de los que se realizan el seguimiento (si es un tipo primitivo y se convierte en cadena). |
Data_Blob |
Valor de objeto binario del valor de los datos seguidos (si es un tipo no primitivo y puede ser binario serializado). |
DataNonSerializable |
Marcador para indicar que hubo datos, pero no se pudo convertir en una cadena o serializado como binario. |
TrackingDataItemAnnotation
La tabla TrackingDataItemAnnotation almacena cualquier anotación que se realiza en el flujo de trabajo para un elemento de datos de seguimiento determinado. El perfil de seguimiento indica las anotaciones.
Columna | Descripción |
---|---|
TrackingDataItemId |
Id. del elemento de datos de seguimiento para el que se está almacenando la anotación. |
WorkflowInstanceInternalId |
Id. de la base de datos interna para la instancia de flujo de trabajo. |
Anotación |
Valor literal de la anotación. |
EventAnnotation
La tabla EventAnnotation almacena cualquier anotación asociada a eventos de flujo de trabajo.
Columna | Descripción |
---|---|
WorkflowInstanceInternalId |
Id. de la base de datos interna para la instancia de flujo de trabajo. |
EventId |
Id. de la base de datos interna para el evento en el que se produjo la anotación. |
EventTypeId |
Id. de la base de datos interno para el tipo de evento. |
Anotación |
Valor literal de la anotación. |
WorkflowInstanceEvent
La tabla WorkflowInstanceEvent almacena los eventos diferentes en los que un flujo de trabajo entró a lo largo de su ciclo de vida. Puede haber varios eventos para una instancia de flujo de trabajo determinada; sin embargo, sólo uno de ellos es el evento actual.
Columna | Descripción |
---|---|
WorkflowInstanceEventId |
Identificador único para el registro de evento de la instancia de flujo de trabajo. |
WorkflowInstanceInternalId |
Id. de la base de datos interna de la instancia de flujo de trabajo a la que pertenece la actividad. |
EventDateTime |
Fecha y hora a la que se produjo el evento. |
EventOrder |
Orden en que el evento se produjo. |
EventArgTypeId |
Id. de la base de datos interna para el tipo de datos de los argumentos de evento |
EventArg |
Datos serializados binarios de los argumentos de evento |
DbEventDateTime |
Fecha de la base de datos y hora en la que se produjo el evento. |
TrackingWorkflowEvent
La tabla TrackingWorkflowEvent almacena los valores literales de todos los eventos por los que un flujo de trabajo puede pasar.
Columna | Descripción |
---|---|
TrackingWorkflowEventId |
Id. único del evento. |
Descripción |
Valor literal del evento. |
UserEvent
La tabla UserEvent almacena los eventos diferentes que los puntos de pista de usuario personalizados emiten y siguen. Una instancia de flujo de trabajo determinada puede tener varios eventos de usuario.
Columna | Descripción |
---|---|
UserEventId |
Identificador único para el evento de usuario. |
WorkflowInstanceInternalId |
Id. de la base de datos interna de la instancia de flujo de trabajo a la que pertenece la actividad. |
EventOrder |
Orden en que el evento se produjo. |
ActivityInstanceId |
Identificador único de la actividad en la que el evento de usuario produjo (donde el código que emite el evento se produce en el código del flujo de trabajo). |
EventDateTime |
Fecha y hora a la que se produjo el evento. |
UserDataKey |
El valor de clave que se pasó en el evento de usuario (al usar el método TrackData ). |
UserDataTypeId |
Id. de tipo en la tabla Tipo de los datos del usuario de los que se realizan el seguimiento. |
UserData_Str |
Valor de cadena de los datos de los que se realiza el seguimiento (si es un tipo primitivo y se convierte en cadena). |
UserData_Blob |
Valor de objeto binario del valor de los datos seguidos (si es un tipo no primitivo y puede ser binario serializado). |
DataNonSerializable |
Marcador para indicar que hubo datos, pero no se pudo convertir en una cadena o serializado como binario. |
DbEventDateTime |
Fecha de la base de datos y hora cuando se produjo el evento. |
AddedActivity
La tabla AddedActivity almacena las actividades que se agregan al flujo de trabajo cuando se produce un cambio del flujo de trabajo. Puede haber muchas actividades agregadas para cada cambio del flujo de trabajo.
Columna | Descripción |
---|---|
WorkflowInstanceInternalId |
Id. de la base de datos interna para la instancia de flujo de trabajo. |
WorkflowInstanceEventId |
Referencia al evento de la instancia de flujo de trabajo. |
QualifiedName |
Nombre completo de la actividad que se agrega. |
ActivityTypeId |
Vínculo a la tabla Tipo para indicar el tipo y nombre de ensamblado para la actividad que se agregó como parte del cambio dinámico. |
ParentQualifiedName |
Nombre completo de la actividad primaria en la que se contiene esta actividad. |
AddedActivityAction |
El valor serializado del objeto ActivityChangeAction creado a partir del evento de actualización dinámica |
Orden |
Orden en que la actividad se agregó al flujo de trabajo |
RemovedActivity
La tabla RemovedActivity almacena todas las actividades que se quitaron por un cambio del flujo de trabajo. Muchas actividades se pueden quitar para cada cambio del flujo de trabajo.
Columna | Descripción |
---|---|
WorkflowInstanceInternalId |
Id. de la base de datos interna para la instancia de flujo de trabajo. |
WorkflowInstanceEventId |
Referencia al evento de la instancia de flujo de trabajo. |
QualifiedName |
Nombre completo de la actividad que se quitó. |
ParentQualifiedName |
Nombre completo de la actividad primaria en la que se contiene esta actividad. |
RemovedActivityAction |
El valor serializado del objeto ActivityChangeAction creado a partir del evento de actualización dinámica |
Order |
Orden en que la actividad se agregó al flujo de trabajo |
TrackingProfile
La tabla TrackingProfile almacena el perfil de seguimiento para un tipo de flujo de trabajo determinado.
Columna | Descripción |
---|---|
TrackingProfileId |
Identificador único del perfil de seguimiento. |
Version |
Versión del perfil de seguimiento, que debería corresponder a la versión del Perfil de seguimiento (TrackingProfile.Version o atributo de versión en el Perfil de seguimiento XML) |
WorkflowTypeId |
Vínculo a la tabla Tipo que almacena el nombre de tipo y el nombre de ensamblado del tipo de flujo de trabajo. |
TrackingProfileXml |
Realizar el seguimiento del perfil XML. |
InsertDateTime |
Fecha y hora en las se actualizó el perfil por última vez. |
TrackingProfileInstance
La tabla TrackingProfileInstance almacena los perfiles del seguimiento asociados a instancias de flujo de trabajo concretas. Se usa esto cuando los perfiles diferentes se emplean para las instancias de flujo de trabajo diferentes.
Columna | Descripción |
---|---|
InstanceId |
Id. interno de la instancia de flujo de trabajo para el que el perfil de seguimiento se está almacenando. |
TrackingProfileXml |
Realizar el seguimiento del perfil XML. |
UpdatedDateTime |
Fecha y hora a la que se produjo la actualización. |
DefaultTrackingProfile
La tabla DefaultTrackingProfile almacena el perfil de seguimiento predeterminado. Si un perfil de seguimiento no está asociado a un tipo de flujo de trabajo determinado, se usa el perfil de seguimiento predeterminado.
Columna | Descripción |
---|---|
Version |
Número de versión del perfil de seguimiento, que debería corresponder a la versión del Perfil de seguimiento (TrackingProfile.Version o atributo de versión en el Perfil de seguimiento XML) |
TrackingProfileXml |
Realizar el seguimiento del perfil XML. |
InsertDateTime |
Fecha y hora en las se insertó el perfil de seguimiento. |
TrackingPartitionInterval
La tabla TrackingPartitionInterval almacena el intervalo de la partición para habilitar la subdivisión para el mantenimiento de los datos. Esto sólo se produce cuando la propiedad PartitionOnCompletion de la clase SqlTrackingService está establecida como true. El valor predeterminado es mensual ("m"). Puede establecerlo como diario ("d") o anual ("y").
Columna | Descripción |
---|---|
Interval |
Intervalo en el que desea particionar las tablas. |
TrackingPartitionSetName
La tabla TrackingPartitionSetName contiene información sobre el nombre del conjunto de partición.
Columna | Descripción |
---|---|
PartitionId |
Identificador único de la partición. |
Name |
Nombre de la partición. |
CreatedDateTime |
Fecha y la hora de creación de la partición. |
EndDateTime |
Fecha y hora a la que finalizó la partición. |
PartitionInterval |
Intervalo de la participación de este conjunto concreto. |
Funciones de la base de datos del servicio de seguimiento de SQL
tracking_writer
Ésta es la función que la cuenta que ejecuta el proceso del host debería ejecutar. La función tiene los permisos para recuperar perfiles de seguimiento perfila y datos de seguimiento de escritura.
tracking_reader
Las cuentas de esta función pueden ver todos los datos pero no pueden actualizarlos ni modificarlos. Los usuarios de esta función tampoco tienen ningún acceso a las tablas base.
tracking_profilereaderwriter
Esta función es para las cuentas de usuario que necesitan modificar los datos del perfil.
Consulte también
Referencia
Otros recursos
Simple Tracking Example
Referencia general sobre Windows Workflow Foundation
Copyright © 2007 Microsoft Corporation. Reservados todos los derechos.