Compartir a través de


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

SqlTrackingService

Otros recursos

Simple Tracking Example
Referencia general sobre Windows Workflow Foundation

Footer image

Copyright © 2007 Microsoft Corporation. Reservados todos los derechos.