# Interface IOrdinaryActivity OptimaJet.Workflow.Core.Model.IOrdinaryActivity Defines the contract for ordinary activities in a process scheme. Namespace: [OptimaJet.Workflow.Core.Model](https://api.workflowengine.io/core/OptimaJet.Workflow.Core.Model/) ```csharp public interface IOrdinaryActivity ``` ## Type Hierarchy - IOrdinaryActivity Current type - Implementing types - [ActivityDefinition](https://api.workflowengine.io/core/OptimaJet.Workflow.Core.Model/ActivityDefinition/) ## Properties `string OriginalName { get; set; }` Gets or sets the activity name before the activity was first inlined into another process scheme. `string OriginalSchemeCode { get; set; }` Gets or sets the code of the process scheme from which the activity was originally inlined. `string LastTimeInlineName { get; set; }` Gets or sets the [IInlineActivity.Name](https://api.workflowengine.io/core/OptimaJet.Workflow.Core.Model/IInlineActivity/) of the inline activity through which this activity was most recently copied into a parent process scheme. `bool WasInlined { get; set; }` Gets or sets a value indicating whether this activity was copied into another process scheme during scheme inlining. `string Name { get; set; }` Gets or sets the activity name within its containing process scheme. `string State { get; set; }` Gets or sets the business state name associated with this activity. ### Remarks Multiple activities can have the same [IOrdinaryActivity.State](https://api.workflowengine.io/core/OptimaJet.Workflow.Core.Model/IOrdinaryActivity/) value. `bool IsInitial { get; set; }` Gets or sets a value indicating whether this activity is the process entry point. ### Remarks Every scheme has exactly one initial activity. `bool IsFinal { get; set; }` Gets or sets a value indicating whether this activity is marked as final. ### Remarks The process status becomes [ProcessStatus.Finalized](https://api.workflowengine.io/core/OptimaJet.Workflow.Core.Persistence/ProcessStatus/) when execution stops at a final activity. `bool IsForSetState { get; set; }` Gets or sets a value indicating whether this activity is eligible to be selected by state-setting operations. ### Remarks An activity is selected by state only when this property and [IOrdinaryActivity.IsState](https://api.workflowengine.io/core/OptimaJet.Workflow.Core.Model/IOrdinaryActivity/) are [true](https://learn.microsoft.com/dotnet/csharp/language-reference/builtin-types/bool) and the requested state matches [IOrdinaryActivity.State](https://api.workflowengine.io/core/OptimaJet.Workflow.Core.Model/IOrdinaryActivity/). `bool IsAutoSchemeUpdate { get; set; }` Gets or sets a value indicating whether Workflow Engine may automatically update an obsolete process scheme while this activity is current. `bool DisablePersistState { get; set; }` Gets or sets a value indicating whether entering this activity skips updating the stored current activity and business state at the persistence checkpoint. `bool DisablePersistTransitionHistory { get; set; }` Gets or sets a value indicating whether entering this activity skips writing the transition history record at the persistence checkpoint. `bool DisablePersistParameters { get; set; }` Gets or sets a value indicating whether entering this activity skips saving persistent process parameters at the persistence checkpoint. `List Implementation { get; set; }` Gets or sets the actions executed when a process instance enters this activity during normal execution. ### Remarks Actions are invoked in ascending [ActionDefinitionReference.Order](https://api.workflowengine.io/core/OptimaJet.Workflow.Core.Model/ActionDefinitionReference/) order. `List PreExecutionImplementation { get; set; }` Gets or sets the [ActionDefinitionReference](https://api.workflowengine.io/core/OptimaJet.Workflow.Core.Model/ActionDefinitionReference/) instances that identify actions executed during pre-execution simulation. ### Remarks Actions are invoked in ascending [ActionDefinitionReference.Order](https://api.workflowengine.io/core/OptimaJet.Workflow.Core.Model/ActionDefinitionReference/) order. `List Annotations { get; set; }` Gets or sets the [Annotation](https://api.workflowengine.io/core/OptimaJet.Workflow.Core.Model/Annotation/) instances attached to this activity. `bool IsState { get; }` Gets a value indicating whether [IOrdinaryActivity.State](https://api.workflowengine.io/core/OptimaJet.Workflow.Core.Model/IOrdinaryActivity/) is neither [null](https://learn.microsoft.com/dotnet/csharp/language-reference/keywords/null) nor empty. `bool HaveImplementation { get; }` Gets a value indicating whether [IOrdinaryActivity.Implementation](https://api.workflowengine.io/core/OptimaJet.Workflow.Core.Model/IOrdinaryActivity/) contains at least one [ActionDefinitionReference](https://api.workflowengine.io/core/OptimaJet.Workflow.Core.Model/ActionDefinitionReference/). `bool HavePreExecutionImplementation { get; }` Gets a value indicating whether [IOrdinaryActivity.PreExecutionImplementation](https://api.workflowengine.io/core/OptimaJet.Workflow.Core.Model/IOrdinaryActivity/) contains at least one [ActionDefinitionReference](https://api.workflowengine.io/core/OptimaJet.Workflow.Core.Model/ActionDefinitionReference/). [Previous IInlineActivity](https://api.workflowengine.io/core/OptimaJet.Workflow.Core.Model/IInlineActivity/) [Next Localization](https://api.workflowengine.io/core/OptimaJet.Workflow.Core.Model/Localization/)