# StepCycleAsync Method

## Overloads

| [StepCycleAsync(String, Int32, Int32)](https://help.qlik.com/en-US/sense-developer/May2026/Subsystems/NetSDKAPIref/Content/Qlik.Engine.IGenericObject.StepCycleAsync.htm#Qlik_Engine_IGenericObject_StepCycleAsync_System_String_System_Int32_System_Int32_) |  | You can use the StepCycle method with any object that contains a cyclic group as a dimension.<br><br>This method allows you to move between different fields in a cyclic dimension.<br><br>A hypercube will avoid field collisions with its other dimensions when cycling in this manner. If all other fields cause collisions then no cycling is performed. |
| --- | --- | --- |
| [StepCycleAsync(AsyncHandle, String, Int32, Int32)](https://help.qlik.com/en-US/sense-developer/May2026/Subsystems/NetSDKAPIref/Content/Qlik.Engine.IGenericObject.StepCycleAsync.htm#Qlik_Engine_IGenericObject_StepCycleAsync_Qlik_Engine_AsyncHandle_System_String_System_Int32_System_Int32_) |  | You can use the StepCycle method with any object that contains a cyclic group as a dimension.<br><br>This method allows you to move between different fields in a cyclic dimension.<br><br>A hypercube will avoid field collisions with its other dimensions when cycling in this manner. If all other fields cause collisions then no cycling is performed. |

[](https://help.qlik.com/en-US/sense-developer/Subsystems/NetSDKAPIref/Content/Qlik.Engine.IGenericObject.StepCycleAsync.htm) [](https://help.qlik.com/en-US/sense-developer/Subsystems/NetSDKAPIref/Content/Qlik.Engine.IGenericObject.StepCycleAsync.htm)

## StepCycleAsync(String, Int32, Int32)

You can use the StepCycle method with any object that contains a cyclic group as a dimension.

This method allows you to move between different fields in a cyclic dimension.

A hypercube will avoid field collisions with its other dimensions when cycling in this manner. If all other fields cause collisions then no cycling is performed.

### Declaration

```

          Task StepCycleAsync([QixName("qPath")] string path, [QixName("qDimNo")] int dimNo, [QixName("qNbrSteps")] int nbrSteps)
    
  
```

### Parameters

| Type | Name | Description |
| --- | --- | --- |
| System.String | path | Path to the definition of the object to be selected.<br>For example, `/qHyperCubeDef` . |
| System.Int32 | dimNo | Dimension number or index starting from 0.<br>The default value is 0. |
| System.Int32 | nbrSteps | Number of steps you want to cycle.<br>Positive values cycle forwards while negative values cycle backwards. A value of 0 leads to no action being taken. |

### Returns

| Type | Description |
| --- | --- |
| System.Threading.Tasks.Task |  |

[](https://help.qlik.com/en-US/sense-developer/Subsystems/NetSDKAPIref/Content/Qlik.Engine.IGenericObject.StepCycleAsync.htm) [](https://help.qlik.com/en-US/sense-developer/Subsystems/NetSDKAPIref/Content/Qlik.Engine.IGenericObject.StepCycleAsync.htm)

## StepCycleAsync(AsyncHandle, String, Int32, Int32)

You can use the StepCycle method with any object that contains a cyclic group as a dimension.

This method allows you to move between different fields in a cyclic dimension.

A hypercube will avoid field collisions with its other dimensions when cycling in this manner. If all other fields cause collisions then no cycling is performed.

### Declaration

```

          Task StepCycleAsync(AsyncHandle asyncHandle, [QixName("qPath")] string path, [QixName("qDimNo")] int dimNo, [QixName("qNbrSteps")] int nbrSteps)
    
  
```

### Parameters

| Type | Name | Description |
| --- | --- | --- |
| [AsyncHandle](https://help.qlik.com/en-US/sense-developer/May2026/Subsystems/NetSDKAPIref/Content/Qlik.Engine.AsyncHandle.htm) | asyncHandle | Handle to asynchronous method request |
| System.String | path | Path to the definition of the object to be selected.<br>For example, `/qHyperCubeDef` . |
| System.Int32 | dimNo | Dimension number or index starting from 0.<br>The default value is 0. |
| System.Int32 | nbrSteps | Number of steps you want to cycle.<br>Positive values cycle forwards while negative values cycle backwards. A value of 0 leads to no action being taken. |

### Returns

| Type | Description |
| --- | --- |
| System.Threading.Tasks.Task |  |