> ## Documentation Index
> Fetch the complete documentation index at: https://docs.abbyy.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Using scripts

> Extend Scanning Station with custom scripts that run on events or commands.

Custom scripts let you add your own scenarios to Scanning Station. Typical examples:

* Reorder pages after duplex scanning.
* Auto-split oversized pages after scanning.
* Fill in registration parameters automatically on newly created batches or documents.

Scripts run in response to [events](/vantage/documentation/scanning-station/admin/events) or when an Operator invokes them explicitly.

## Supported languages

* **JScript®**
* **VBScript**
* **C#.Net**
* **VisualBasic.Net**
* **JScript.Net**

See [Specific .NET scripts](/vantage/documentation/scanning-station/admin/specific-net-scripts) for guidance on the .NET variants.

## Language notes

In VBScript, use the keyword `Me` when referring to methods and fields of the current object. In JScript the equivalent is `this`; in VisualBasic.Net, use `Workspace`.

## Working with collections

Every collection exposes these members:

| Name               | Type            | Access    | Description                                                     |
| :----------------- | :-------------- | :-------- | :-------------------------------------------------------------- |
| `Count`            | `int`           | Read-only | The number of items in the collection.                          |
| `Item(index: int)` | `ItemInterface` | Read-only | Returns the item at the given index. Enumeration starts at `0`. |

Instead of calling `Item`, you can use parentheses:

```
Items( 1 ).Text = "Hello"
```

In C#.Net, use square brackets instead:

```csharp theme={null}
Items[1].Text = "Hello"
```

All collections can be used in `for each` loops and similar constructs.

## Related topics

* [Events](/vantage/documentation/scanning-station/admin/events)
* [Objects available from event scripts](/vantage/documentation/scanning-station/admin/available-objects)
* [External assemblies](/vantage/documentation/scanning-station/admin/external-assemblies)
* [Scripts in .NET languages](/vantage/documentation/scanning-station/admin/specific-net-scripts)
* [Administrator mode](/vantage/documentation/scanning-station/admin/admin-mode)
