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

# prod()

<span id="atoti.array.prod" />

> atoti.array.prod(<br />
>     *measure*: VariableMeasureConvertible,<br />
>     /,<br />
> ) → MeasureDefinition

Return a measure equal to the product of all the elements of the passed array measure.

```pycon theme={"languages":{"custom":["/engine/python-sdk/0.9/languages/pycon.tmLanguage.json"]}}
>>> pnl_table = session.read_csv(
...     TEST_RESOURCES_PATH / "csv" / "pnl.csv",
...     array_separator=";",
...     keys={"Continent", "Country"},
...     table_name="PnL",
... )
>>> cube = session.create_cube(pnl_table)
>>> l, m = cube.levels, cube.measures
>>> m["Product"] = tt.array.prod(m["PnL.SUM"])
>>> m["Empty product"] = tt.array.prod(m["PnL.SUM"][0:0])
>>> cube.query(m["PnL.SUM"], m["Product"], m["Empty product"])
                          PnL.SUM             Product Empty product
0  doubleVector[10]{-20.163, ...}  122,513,372,194.94          1.00
```

### Parameters

<h4 id="atoti.array.prod.measure">
  *measure*
</h4>

> VariableMeasureConvertible
