# Abstract ScalarParameter

Represents the abstract scalar parameter types.

### Description

Represents the abstract scalar parameter types, which defines a single-value parameter.

Abstract scalar parameters can provide a selection list. The list can be static (defined by the `selectionList` property) or dynamic (defined by the `dataSet`, `valueExpr` and `labelExpr` properties.) The user can sort this list by specified key and direction(as controlled by the `sortDirection`, `sortBy` and `sortByColumn` properties).

## dataSetName

Refer to a data set for the dynamic selection list.

### Description

Refer to a data set for the selection list. Once this property is set, the selection list is dynamic.

## dataType

The data type for the parameter.

### Description

The data type for the parameter. The data type controls how the Requester formats, parses and validates the parameter. Every type can optionally provide a choice list. And, the parameter can require that the user select one of the choices.

### See Also

`selectionList` property

## labelExpr

The prompt for the dynamic choices.

### See Also

`valueExpr` property

### Description

An expression that returns the display value for each row in the dynamic list.

## isRequired

The flag that indicates whether the value of the parameter is required.

### Description

The flag indicates whether the value of the parameter is required. `true` if the value of the parameter is required. For string type parameter, if the value is required, it cannot be `null` or empty. For other type parameters, required value cannot be `null`.

## listLimit

List limitation number.

### Description

Value for the list limitation number. If the limitation is provided, only the top-n choices will be available in the parameter request dialog.

## selectionList

Defines a selection list for the parameter: static list of values from which the user can choose.

### Description

The parameter selection list provides a developer-defined list of choices. Every choice has two parts: a choice and a label. The label can be externalized and appears in the UI. The choice is the value passed to the report. For example, labels may be "Open" and "Closed", while the values are 0 and 1.

The items in the list are of the type given by the parameter data type.

## sortBy

The sort key for parameter values when preview.

### Description

The sort key for parameter values when preview.Its value can be label or value.

## sortByColumn

The expression by which the result sorts.

### Description

The expression by which the result sorts.

## sortDirection

The sort order for parameter values when preview.

### Description

The sort order for parameter values when preview. Its value can be asc or desc.

## valueExpr

The expression to get the value for the choice.

### Description

The expression on the data row from the dynamic list data set that returns the value for the choice.

## valueExpr

The expression to get the value for the choice.

### Description

The expression on the data row from the dynamic list data set that returns the value for the choice.

### See Also

`lableExpr` property

## valueType

The parameter type for this scalar parameter.

### Description

The parameter type for this scalar parameter. Its value can be dynamic or static.