GetList
Описание и параметры
CDBResult CPrice::GetList( array arOrder = array(), array arFilter = array(), array arGroupBy = false, array arNavStartParams = false, array arSelectFields = array() );
Метод возвращает результат выборки записей цен в соответствии со своими параметрами. Нестатический метод.
Метод устарел, вместо него используйте метод \Bitrix\Catalog\PriceTable::getList
Примечание: Если выборку нужно произвести без учёта прав доступа, то лучше использовать метод GetListEx.
Параметры вызова
Параметр | Описание |
---|---|
arOrder | Массив, в соответствии с которым сортируются результирующие записи. Массив имеет вид:
array( "название_поля1" => "направление_сортировки1", "название_поля2" => "направление_сортировки2", . . . )В качестве "название_поляN" может стоять любое поле цены, а в качестве "направление_сортировкиX" могут быть значения "ASC" (по возрастанию) и "DESC" (по убыванию). Если массив сортировки имеет несколько элементов, то результирующий набор сортируется последовательно по каждому элементу (т.е. сначала сортируется по первому элементу, потом результат сортируется по второму и т.д.). Значение по умолчанию - пустой массив array() - означает, что результат отсортирован не будет. |
arFilter | Массив, в соответствии с которым фильтруются
записи типов цены. Массив имеет вид:
array( "[модификатор1][оператор1]название_поля1" => "значение1", "[модификатор2][оператор2]название_поля2" => "значение2", . . . )Удовлетворяющие фильтру записи возвращаются в результате, а записи, которые не удовлетворяют условиям фильтра, отбрасываются. Допустимыми являются следующие модификаторы:
Пример фильтра: array("PRODUCT_ID" => 150)Этот фильтр означает "выбрать все записи, в которых значение в поле PRODUCT_ID (код товара) равно 150". Значение по умолчанию - пустой массив array() - означает, что результат отфильтрован не будет. |
arGroupBy | Массив полей, по которым группируются записи типов
цены. Массив имеет вид:
array("название_поля1", "название_поля2", . . .)В качестве "название_поляN" может стоять любое поле типов цены. Если массив пустой, то метод вернет число записей, удовлетворяющих фильтру. Значение по умолчанию - false - означает, что результат группироваться не будет. |
arNavStartParams | Массив параметров выборки. Может содержать следующие ключи:
|
arSelectFields | Массив полей записей, которые будут возвращены методом. Можно указать только те поля, которые необходимы. Если в массиве присутствует значение
"*", то будут возвращены все доступные поля. Значение по умолчанию - пустой массив array() - означает, что будут возвращены все поля основной таблицы запроса. |
Возвращаемые значения
Возвращается объект класса CDBResult, содержащий набор ассоциативных массивов с ключами:
Ключ | Описание |
---|---|
ID | Код ценового предложения. |
PRODUCT_ID | Код товара или торгового предложения (ID элемента инфоблока). |
EXTRA_ID | Код наценки. |
CATALOG_GROUP_ID | Код типа цены. |
PRICE | Цена. |
CURRENCY | Валюта. |
CAN_ACCESS | Флаг (Y/N), может ли текущий пользователь видеть эту цену. |
CAN_BUY | Флаг (Y/N), может ли текущий пользователь покупать по этой цене. |
CATALOG_GROUP_NAME | Название группы цен на текущем языке. |
TIMESTAMP_X | Дата последнего изменения записи. |
QUANTITY_FROM | Количество товара, начиная с приобретения которого действует эта цена. |
QUANTITY_TO | Количество товара, при приобретении которого заканчивает действие эта цена. |
Если в качестве параметра arGroupBy передается пустой массив, то метод вернет число записей, удовлетворяющих фильтру.
Примеры использования
<? // Выведем цену типа $PRICE_TYPE_ID товара с кодом $PRODUCT_ID $db_res = CPrice::GetList( array(), array( "PRODUCT_ID" => $PRODUCT_ID, "CATALOG_GROUP_ID" => $PRICE_TYPE_ID ) ); if ($ar_res = $db_res->Fetch()) { echo CurrencyFormat($ar_res["PRICE"], $ar_res["CURRENCY"]); } else { echo "Цена не найдена!"; } ?>
© «Битрикс», 2001-2024, «1С-Битрикс», 2024