
# IULB_Operation interface

*No description yet.*

```csharp
public interface IULB_Operation : IEDM_ShareableRecord
```

**Namespace:** DXP · **Assembly:** Altium.SDK.Interfaces

**Inherits:** [IEDM_Object](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IEDM_Object.md) → [IEDM_Record](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IEDM_Record.md) → [IEDM_ShareableRecord](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IEDM_ShareableRecord.md)

## Properties

| Property | Type | Access | Description |
| --- | --- | --- | --- |
| [Attributes](#attributes) | `int` | get; set |  |
| [Description](#description) | `string` | get; set |  |
| [IsShared](#isshared) | `bool` | get; set |  |
| [ParentOperationGUID](#parentoperationguid) | `string` | get; set |  |
| [SharedName](#sharedname) | `string` | get; set |  |
| [SharingControl](#sharingcontrol) | `int` | get; set |  |
| [SubOperation](#suboperation) | [IULB_Operation](#) | get; set |  |

### Attributes

*No description yet.*

```csharp
int GetAttributes();
void SetAttributes(int argValue);
```

**Type:** `int` · **Access:** read/write

### Description

*No description yet.*

```csharp
string GetDescription();
void SetDescription(string argValue);
```

**Type:** `string` · **Access:** read/write

### IsShared

*No description yet.*

```csharp
bool GetIsShared();
void SetIsShared(bool argValue);
```

**Type:** `bool` · **Access:** read/write

### ParentOperationGUID

*No description yet.*

```csharp
string GetParentOperationGUID();
void SetParentOperationGUID(string argValue);
```

**Type:** `string` · **Access:** read/write

### SharedName

*No description yet.*

```csharp
string GetSharedName();
void SetSharedName(string argValue);
```

**Type:** `string` · **Access:** read/write

### SharingControl

*No description yet.*

```csharp
int GetSharingControl();
void SetSharingControl(int argValue);
```

**Type:** `int` · **Access:** read/write

### SubOperation

*No description yet.*

```csharp
IULB_Operation GetSubOperation(int argIndex);
void SetSubOperation(int argIndex, IULB_Operation argRecord);
```

**Type:** [IULB_Operation](#) · **Access:** read/write · **Index:** `argIndex` (`int`)

The accessors are extension methods of `IULB_OperationHelper` (`using DXP;`).

## Methods

| Method | Returns | Description |
| --- | --- | --- |
| [AddOperationParameter](#addoperationparameter) | `void` |  |
| [AddSubOperation](#addsuboperation) | `void` |  |
| [ClearSubOperations](#clearsuboperations) | `void` |  |
| [DeleteSubOperation](#deletesuboperation) | `void` |  |
| [FilterOperationTree](#filteroperationtree) | `void` |  |
| [FindOperation](#findoperation) | [IULB_Operation](#) |  |
| [GetParameter](#getparameter) | [IULB_OperationParameter](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IULB_OperationParameter.md) |  |
| [GetParameterByGUID](#getparameterbyguid) | [IULB_OperationParameter](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IULB_OperationParameter.md) |  |
| [GetParameterCount](#getparametercount) | `int` |  |
| [GetSubOperationCount](#getsuboperationcount) | `int` |  |
| [RemoveAllParameters](#removeallparameters) | `void` |  |
| [RemoveOperationParameter](#removeoperationparameter) | `void` |  |

### AddOperationParameter

*No description yet.*

```csharp
void AddOperationParameter(IULB_OperationParameter argParameter);
void AddOperationParameter(object argParameter);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argParameter` | [IULB_OperationParameter](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IULB_OperationParameter.md) | value |

**Returns:** nothing (`void`)

The first overload is an extension method of `IULB_OperationHelper` (`using DXP;`) with typed parameters; the second is declared by the interface.

### AddSubOperation

*No description yet.*

```csharp
void AddSubOperation(IULB_Operation argRecord);
void AddSubOperation(object argRecord);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argRecord` | [IULB_Operation](#) | value |

**Returns:** nothing (`void`)

The first overload is an extension method of `IULB_OperationHelper` (`using DXP;`) with typed parameters; the second is declared by the interface.

### ClearSubOperations

*No description yet.*

```csharp
void ClearSubOperations();
```

**Returns:** nothing (`void`)

### DeleteSubOperation

*No description yet.*

```csharp
void DeleteSubOperation(int argIndex);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argIndex` | `int` | value |

**Returns:** nothing (`void`)

### FilterOperationTree

*No description yet.*

```csharp
void FilterOperationTree(string argContentTypes);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argContentTypes` | `string` | value |

**Returns:** nothing (`void`)

### FindOperation

*No description yet.*

```csharp
IULB_Operation FindOperation(string argGUID);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argGUID` | `string` | value |

**Returns:** [IULB_Operation](#)

Extension method of `IULB_OperationHelper` (`using DXP;`).

### GetParameter

*No description yet.*

```csharp
IULB_OperationParameter GetParameter(int argi);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argi` | `int` | value |

**Returns:** [IULB_OperationParameter](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IULB_OperationParameter.md)

Extension method of `IULB_OperationHelper` (`using DXP;`).

### GetParameterByGUID

*No description yet.*

```csharp
IULB_OperationParameter GetParameterByGUID(string argGUID);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argGUID` | `string` | value |

**Returns:** [IULB_OperationParameter](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IULB_OperationParameter.md)

Extension method of `IULB_OperationHelper` (`using DXP;`).

### GetParameterCount

*No description yet.*

```csharp
int GetParameterCount();
```

**Returns:** `int`

### GetSubOperationCount

*No description yet.*

```csharp
int GetSubOperationCount();
```

**Returns:** `int`

### RemoveAllParameters

*No description yet.*

```csharp
void RemoveAllParameters();
```

**Returns:** nothing (`void`)

### RemoveOperationParameter

*No description yet.*

```csharp
void RemoveOperationParameter(string argGUID);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argGUID` | `string` | value |

**Returns:** nothing (`void`)

## Inherited members

- From [IEDM_ShareableRecord](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IEDM_ShareableRecord.md): [CanCreate](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IEDM_ShareableRecord.md#cancreate), [CanDelete](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IEDM_ShareableRecord.md#candelete), [CanRead](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IEDM_ShareableRecord.md#canread), [CanUpdate](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IEDM_ShareableRecord.md#canupdate)
- From [IEDM_Record](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IEDM_Record.md): [CreatedByGUID](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IEDM_Record.md#createdbyguid), [CreatedByName](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IEDM_Record.md#createdbyname), [CreatedDate](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IEDM_Record.md#createddate), [GUID](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IEDM_Record.md#guid), [HRID](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IEDM_Record.md#hrid), [LastModifiedByGUID](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IEDM_Record.md#lastmodifiedbyguid), [LastModifiedByName](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IEDM_Record.md#lastmodifiedbyname), [LastModifiedDate](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IEDM_Record.md#lastmodifieddate)
- From [IEDM_Object](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IEDM_Object.md): [CopyTo](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IEDM_Object.md#copyto), [Replicate](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IEDM_Object.md#replicate)

## Returned by

[IEDMS_Vault.CreateOperation](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IEDMS_Vault.md#createoperation), [IEDMS_Vault.OperationByGUID](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IEDMS_Vault.md#operationbyguid), [IEDMS_Vault.OperationByHRID](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IEDMS_Vault.md#operationbyhrid), [IULB_OperationsResult.GetFirstOperation](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IULB_OperationsResult.md#getfirstoperation), [IULB_OperationsResult.GetOperationByGUID](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IULB_OperationsResult.md#getoperationbyguid)
