Документация для разработчиков
Темная тема

GetList

Описание и параметры

CDBResult CFormAnswer::GetList(
 int question_id,
 string &by = "s_sort",
 string &order = "asc",
 array filter = array(),
 bool &is_filtered
)

Возвращает список ответов в виде объекта класса CDBResult. Метод нестатический.

Параметры метода

Параметр Описание
question_id ID вопроса.
by Ссылка на переменную с полем для сортировки результирующего списка. Может принимать значения:
  • s_id - ID ответа;
  • s_sort - индекс сортировки.
оrder Ссылка на переменную с порядком сортировки. Может принимать значения:
  • asc - по возрастанию;
  • desc - по убыванию.
filter Массив для фильтрации. Необязательный параметр. В массиве допустимы следующие ключи:
  • ID* - ID ответа (по умолчанию будет искаться точное совпадение);
  • ID_EXACT_MATCH - если значение равно "N", при фильтрации по ID будет искаться вхождение;
  • ACTIVE - флаг активности, допустимые следующие значения:
  • MESSAGE* - параметр ANSWER_TEXT (по умолчанию будет искаться вхождение);
  • MESSAGE_EXACT_MATCH - если значение равно "Y", при фильтрации по MESSAGE будет искаться точное совпадение;
  • VALUE* - параметр ANSWER_VALUE (по умолчанию будет искаться вхождение);
  • VALUE_EXACT_MATCH - если значение равно "Y", то при фильтрации по VALUE будет искаться точное совпадение;
  • FIELD_TYPE* - тип поля ответа (по умолчанию будет искаться вхождение);
  • FIELD_TYPE_EXACT_MATCH - если значение равно "Y", при фильтрации по FIELD_TYPE будет искаться точное совпадение;
  • FIELD_PARAM* - параметр поля ответа (по умолчанию будет искаться вхождение);
  • FIELD_PARAM_EXACT_MATCH - если значение равно "Y", то при фильтрации по FIELD_PARAM будет искаться точное совпадение.
* - допускается сложная логика
is_filtered Ссылка на переменную, хранящую флаг отфильтрованности результирующего списка. Если значение равно "true", то список был отфильтрован.

Смотрите также

Примеры использования

<?
$QUESTION_ID = 143; // ID вопроса

// сформируем массив фильтра
$arFilter = Array(
    "ID"                      => "589 | 590", // ID ответа равен 589 или 590
    "ID_EXACT_MATCH"          => "Y",         // точное совпадение для ID
    "ACTIVE"                  => "Y",         // флаг активности
    "MESSAGE"                 => "да | нет",  // параметр ANSWER_TEXT равен "да" или "нет"
    "MESSAGE_EXACT_MATCH"     => "Y",         // точное совпадение для MESSAGE
    "FIELD_TYPE"              => "radio",     // тип поля ответа - radio-кнопка
    "FIELD_TYPE_EXACT_MATCH"  => "Y",         // точное совпадение для FIELD_TYPE
    "FIELD_PARAM"             => "checked",   // параметр включает в себя строку "checked"
    "FIELD_PARAM_EXACT_MATCH" => "N"          // вхождение для FIELD_PARAM
);

// получим список всех ответов вопроса #143
$rsAnswers = CFormAnswer::GetList(
    $QUESTION_ID, 
    $by="s_id", 
    $order="desc", 
    $arFilter, 
    $is_filtered
    );
while ($arAnswer = $rsAnswers->Fetch())
{
    echo "<pre>"; print_r($arAnswer); echo "</pre>";
}
?>


Пользовательские комментарии

Мы будем рады, если разработчики добавят свои комментарии по практическому использованию методов системы.

Для этого нужно всего лишь авторизоваться на сайте

Но помните, что Пользовательские комментарии, несмотря на модерацию, не являются официальной документацией. Ответственность за их использование несет сам пользователь.

Также Пользовательские комментарии не являются местом для обсуждения функционала. По подобным вопросам обращайтесь на форумы.
© «Битрикс», 2001-2020, «1С-Битрикс», 2020
Наверх