# Class WorkflowProcessScheme OptimaJet.Workflow.DbPersistence.WorkflowProcessScheme Namespace: [OptimaJet.Workflow.DbPersistence](https://api.workflowengine.io/sql-server/OptimaJet.Workflow.DbPersistence/) ```csharp public class WorkflowProcessScheme : DbObject ``` ## Type Hierarchy - [DbObject](https://api.workflowengine.io/sql-server/OptimaJet.Workflow.DbPersistence/DbObject-TEntity/) - WorkflowProcessScheme Current type ## Constructors `public WorkflowProcessScheme(string schemaName, int commandTimeout)` ### Parameters | Name | Type | Description | | --- | --- | --- | | `schemaName` | `String` | | | `commandTimeout` | `Int32` | | ## Methods `public Task SelectAsync(SqlConnection connection, string schemeCode, string tenantId, bool? isObsolete, Guid? rootSchemeId)` ### Parameters | Name | Type | Description | | --- | --- | --- | | `connection` | `SqlConnection` | | | `schemeCode` | `String` | | | `tenantId` | `String` | | | `isObsolete` | `Nullable` | | | `rootSchemeId` | `Nullable` | | ### Returns | Type | Description | | --- | --- | | `Task` | | `public Task SetObsoleteAsync(SqlConnection connection, string schemeCode, string tenantId)` ### Parameters | Name | Type | Description | | --- | --- | --- | | `connection` | `SqlConnection` | | | `schemeCode` | `String` | | | `tenantId` | `String` | | ### Returns | Type | Description | | --- | --- | | `Task` | | `public static Task DeleteUnusedAsync(SqlConnection connection)` ### Parameters | Name | Type | Description | | --- | --- | --- | | `connection` | `SqlConnection` | | ### Returns | Type | Description | | --- | --- | | `Task` | | [Previous WorkflowProcessInstanceStatus](https://api.workflowengine.io/sql-server/OptimaJet.Workflow.DbPersistence/WorkflowProcessInstanceStatus/) [Next WorkflowProcessTimer](https://api.workflowengine.io/sql-server/OptimaJet.Workflow.DbPersistence/WorkflowProcessTimer/)