# RangeXNPV Функция скрипта и диаграммы

RangeXNPV() возвращает чистую стоимость для графика потоков денежных средств (необязательно периодических), представленных парными числами в выражениях, выданных элементами pmt и date. Все платежи учитываются на основе года с 365 днями.

Синтаксис:

RangeXNPV(discount\_rate, value, date{, value, date})

Возвращаемые типы данных: число

Аргументы

| Аргумент | Описание |
| --- | --- |
| discount\_rate | discount\_rate — годовая ставка дисконта, на которую должны уменьшаться платежи. |
| value | Поток денежных средств или серия потоков, соответствующие расписанию платежей по датам. Каждое значение может быть одиночным значением или диапазоном значений, возвращаемым функцией между записями с третьим дополнительным параметром. Серия значений должна содержать по крайней мере одно положительное и отрицательное значения. |
| date | Дата платежа или расписание дат платежей, соответствующие потоку денежных средств. |

При работе с этой функцией действуют следующие варианты:

* Текстовые значения, значения NULL и отсутствующие значения игнорируются.

* Все платежи учитываются на основе года с 365 днями.

## Пример скрипта

[](https://help.qlik.com/en-US/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/RangeFunctions/RangeXNPV.htm)

#### Скрипт загрузки и результаты

Обзор

Откройте редактор загрузки данных и добавьте приведенный ниже скрипт загрузки в новый раздел.

Скрипт загрузки содержит следующее:

* Финансовые данные, содержащиеся в таблице под именем `RangeTab3`.

* Использование функции RangeXNPV() для расчета чистой текущей стоимости.

Скрипт загрузки

```
RangeTab3:
LOAD *,
recno() as RangeID,
RangeXNPV(DiscountRate,Value1,Date1,Value2,Date2) as RangeXNPV;
LOAD * INLINE [
DiscountRate|Value1|Date1|Value2|Date2
0.1|-100|2021-01-01|100|2022-01-01|
0.1|-100|2021-01-01|110|2022-01-01|
0.1|-100|2021-01-01|125|2022-01-01|
] (delimiter is '|');
```

Результаты

Загрузите данные и откройте лист. Создайте новую таблицу и добавьте эти поля как измерения:

* `RangeID`

* `RangeXNPV`

Результирующая таблица

| RangeID | RangeXNPV |
| --- | --- |
| 1 | -$9.09 |
| 2 | -$0.00 |
| 3 | $13.64 |

## Пример: выражение диаграммы

[](https://help.qlik.com/en-US/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/RangeFunctions/RangeXNPV.htm)

#### Скрипт загрузки и выражение диаграммы

Обзор

Откройте редактор загрузки данных и добавьте приведенный ниже скрипт загрузки в новый раздел.

Скрипт загрузки содержит следующее:

* Финансовые данные, содержащиеся в таблице под именем `RangeTab3`.

* Использование функции RangeXNPV() для расчета чистой текущей стоимости.

Скрипт загрузки

```
RangeTab3:
LOAD *,
recno() as RangeID,
RangeXNPV(DiscountRate,Value1,Date1,Value2,Date2) as RangeXNPV;
LOAD * INLINE [
DiscountRate|Value1|Date1|Value2|Date2
0.1|-100|2021-01-01|100|2022-01-01|
0.1|-100|2021-01-01|110|2022-01-01|
0.1|-100|2021-01-01|125|2022-01-01|
] (delimiter is '|');
```

Результаты

Выполните следующие действия.

Загрузите данные и откройте лист. Создайте новую таблицу и добавьте следующую вычисляемую меру.

`=RangeXNPV(0.1, -2500,'2008-01-01',2750,'2008-09-01')`

Результирующая таблица

| =XIRR(Payments, Date) |
| --- |
| $80.25 |

## Подробнее

* [XNPV Функция скрипта](https://help.qlik.com/ru-RU/cloud-services/Subsystems/Hub/Content/Sense_Hub/Scripting/FinancialAggregationFunctions/XNPV.htm)