Описание и параметры
record set
CTicket::GetList(
varchar &by,
varchar &order,
array arFilter=array(),
boolean &is_filtered,
char(1) checkRights="Y",
char(1) getUserName="Y",
);
Метод предназначен для получения списка обращений в техподдержку. Метод нестатический.
Параметры метода
Параметр | Описание | С версии |
by | Идентификатор, позволяющий задать имя поля для сортировки. Допустимы следующие значения:
- s_id - по ID
- s_lid - по сайту, для которого было создано обращение
- s_lamp - по индикатору
- s_date_create - по дате создания
- s_timestamp - по дате изменения
- s_date_close - по дате закрытия
- s_owner - по автору
- s_modified_by - по ID пользователя - изменившего обращение
- s_title - по заголовку
- s_responsible - по ID ответственного
- s_messages - по количеству сообщений
- s_category - по ID категории
- s_criticality - по ID критичности
- s_status - по ID статуса
- s_mark - по ID оценки
- s_online - по количеству пользователей
|
|
order | Порядок сортировки. Допустимы следующие значения:
- desc - по убыванию (значение по умолчанию)
- asc - по возрастанию
|
|
arFilter | Массив для фильтрации значений. Необязательный параметр. В массиве допустимы следующие индексы:
- ID - ID обращения (допускается сложная логика)
- ID_EXACT_MATCH - "Y" - при фильтрации по ID обращения будет искаться точное совпадение (по умолчанию); "N" - в противном случае будет искаться вхождение
- LID - ID сайта
- LID_EXACT_MATCH - "Y" - при фильтрации по ID языка будет искаться точное совпадение (по умолчанию); "N" - в противном случае будет искаться вхождение
- LAMP - массив индикаторов: "red", "yellow", "green", "green_s", "grey"
- DATE_CREATE_1 - левая часть интервала для даты создания обращения
- DATE_CREATE_2 - правая часть интервала для даты создания обращения
- DATE_TIMESTAMP_1 - левая часть интервала для даты модификации обращения
- DATE_TIMESTAMP_2 - правая часть интервала для даты модификации обращения
- DATE_CLOSE_1 - левая часть интервала для даты закрытия обращения
- DATE_CLOSE_2 - правая часть интервала для даты закрытия обращения
- AUTO_CLOSE_DAYS1 - левая часть интервала для количества дней по истечении которых обращение будет автоматически закрыто при отсутствии ответа от автора
- AUTO_CLOSE_DAYS2 - правая часть интервала для количества дней по истечении которых обращение будет автоматически закрыто при отсутствии ответа от автора
- TICKET_TIME_1 - левая часть интервала для количества дней прошедших с даты создания до даты закрытия обращения
- TICKET_TIME_2 - правая часть интервала для количества дней прошедших с даты создания до даты закрытия обращения
- TITLE - заголовок обращения (допускается сложная логика)
- TITLE_EXACT_MATCH - "Y" - при фильтрации по заголовку обращения будет искаться точное совпадение (по умолчанию); "N" - в противном случае будет искаться вхождение
- MESSAGES1 - левая часть интервала для количества сообщений в обращении
- MESSAGES2 - правая часть интервала для количества сообщений в обращении
- OWNER - автор обращения, поиск осуществляется по ID пользователя, логину, имени, фамилии, символному коду (допускается сложная логика)
- OWNER_EXACT_MATCH - "Y" - при фильтрации по автору обращения будет искаться точное совпадение (по умолчанию); "N" - в противном случае будет искаться вхождение
- CREATED_BY - кем было создано обращение, поиск осуществляется по ID пользователя, логину, имени, фамилии, названии модуля из которого было создано обращение (допускается сложная логика)
- CREATED_BY_EXACT_MATCH - "Y" - при фильтрации по создателю обращения будет искаться точное совпадение (по умолчанию); "N" - в противном случае будет искаться вхождение
- MODIFIED_BY - изменивший обращение, поиск осуществляется по ID пользователя, логину, имени, фамилии, названии модуля из которого было изменено обращение (допускается сложная логика)
- MODIFIED_BY_EXACT_MATCH - "Y" - при фильтрации по символьному коду статуса будет искаться точное совпадение (по умолчанию); "N" - в противном случае будет искаться вхождение
- RESPONSIBLE - ответственный за обращение, поиск осуществляется по ID пользователя, логину, имени, фамилии (допускается сложная логика)
- RESPONSIBLE_EXACT_MATCH - "Y" - при фильтрации по ответственному за обращение будет искаться точное совпадение (по умолчанию); "N" - в противном случае будет искаться вхождение
- RESPONSIBLE_ID - ID пользователя ответственного за обращение, при задании "0" будут выбраны только те обращения у которых нет ответственного
- CATEGORY - ID категории обращения (0 - без категории)
- CATEGORY_SID - символьный код категории обращения (допускается сложная логика)
- CATEGORY_SID_EXACT_MATCH - "Y" - при фильтрации по символьному коду категории будет искаться точное совпадение (по умолчанию); "N" - в противном случае будет искаться вхождение
- CRITICALITY - ID критичности обращения (0 - без критичности)
- CRITICALITY_SID - символьный код критичности обращения (допускается сложная логика)
- CRITICALITY_SID_EXACT_MATCH - "Y" - при фильтрации по символьному коду критичности будет искаться точное совпадение (по умолчанию); "N" - в противном случае будет искаться вхождение
- STATUS - ID статуса обращения (0 - без статуса)
- STATUS_SID - символьный код статуса обращения (допускается сложная логика)
- STATUS_SID_EXACT_MATCH - "Y" - при фильтрации по символьному коду статуса будет искаться точное совпадение (по умолчанию); "N" - в противном случае будет искаться вхождение
- MARK_SID_EXACT_MATCH - "Y" - при фильтрации по символьному коду оценки ответа будет искаться точное совпадение (по умолчанию); "N" - в противном случае будет искаться вхождение
- MARK - ID оценки ответов (0 - без оценки)
- MARK_SID - символьный код оценки ответов (допускается сложная логика)
- SOURCE - ID источника (0 - источник "web")
- SOURCE_SID - символьный код источника (допускается сложная логика)
- SOURCE_SID_EXACT_MATCH - "Y" - при фильтрации по символьному коду источника будет искаться точное совпадение (по умолчанию); "N" - в противном случае будет искаться вхождение
- MESSAGE - текст сообщения (допускается сложная логика)
- MESSAGE_EXACT_MATCH - "Y" - при фильтрации по сообщению будет искаться точное совпадение (по умолчанию); "N" - в противном случае будет искаться вхождение
- LAST_MESSAGE_USER_ID - ID пользователя написавшего последнее сообщение в обращении (допускается сложная логика)
- LAST_MESSAGE_USER_ID_EXACT_MATCH - "Y" - при фильтрации по ID пользователя написавшего последнее сообщение в обращении будет искаться точное совпадение (по умолчанию); "N" - в противном случае будет искаться вхождение
- LAST_MESSAGE_SID - символьный идентификатор написавшего последнее сообщение в обращении (если источник "email", то это может быть email, если источник "телефон", то это может быть номер телефона) (допускается сложная логика)
- LAST_MESSAGE_SID_EXACT_MATCH - "Y" - при фильтрации по символьному идентификатору пользователя написавшего последнее сообщение в обращении будет искаться точное совпадение (по умолчанию); "N" - в противном случае будет искаться вхождение
- SUPPORT_COMMENTS - комментарий техподдержки, видимый в стандартных формах только для пользователей входящих в группу техподдержки
- SUPPORT_COMMENTS_EXACT_MATCH - "Y" - при фильтрации по ID пользователя написавшего последнее сообщение в обращении будет искаться точное совпадение (по умолчанию); "N" - в противном случае будет искаться вхождение
- SITE_ID - идентификатор сайта
- CLOSE - Y\N - закрыт тикет, или нет
- S_SPAM - Y\N - флаг, является ли тикет спамом
- IS_OVERDUE - Y\N - флаг, просрочен ли тикет.
- SLA_ID - по ID уровня техподдержки (допускается сложная логика).
- SUPPORTTEAM_GROUP_ID - по ID группы техподдержки (число или массив чисел).
- CLIENT_GROUP_ID - Y\N - по ID группы клиентов (число или массив чисел).
|
|
is_filtered | Переменная возвращающая true в том случае если список результатов отфильтрован по какому либо критерию; либо false в противном случае. Изменен на isFiltered c 12.0.0 |
|
checkRights | Необязательный параметр. "Y" - будут выбраны только те обращения которые текущий пользователь может просматривать (по умолчанию); "N" - выбирать все обращения независимо от прав текущего пользователя. До версии 12.0.0 назывался check_rights. |
3.3.9 |
getUserName | Необязательный параметр. "Y" - при выборке обращений будут также выбраны такие поля как OWNER_LOGIN, OWNER_NAME, RESPONSIBLE_LOGIN, RESPONSIBLE_NAME, MODIFIED_LOGIN, MODIFIED_NAME, LAST_MESSAGE_LOGIN, LAST_MESSAGE_NAME, CREATED_LOGIN, CREATED_EMAIL, CREATED_NAME, описывающие параметры пользователей имевших отношение к данному обращению (по умолчанию); "N" - вышеперечисленные поля не будут выбраны, но зато это ускорит работу метода. До версии 12.0.0 назывался get_user_name. |
3.3.15 |
get_dictionary_name | Необязательный параметр. "Y" - при выборке обращений будут также выбраны такие поля как CATEGORY_NAME, CATEGORY_SID, CRITICALITY_NAME, CRITICALITY_SID, STATUS_NAME, STATUS_SID, MARK_NAME, MARK_SID, SOURCE_NAME, SOURCE_SID, описывающие поля из справочника техподдержки (по умолчанию); "N" - вышеперечисленные поля не будут выбраны, но зато это ускорит работу метода. Удален с 4.0.6 |
3.3.15 |
lang | Двухсимвольный код языка в формате которого необходимо выбрать временные параметры обращения (время создания, изменения, закрытия); необязательный параметр, по умолчанию - код текущего сайта. Удален с 4.0.0 |
3.3.15 |
siteID | Необязательный параметр. Значение по умолчанию - "false". До версии 12.0.0 назывался site_id. |
4.0.0 |
getExtraNames | Необязательный параметр. Значение по умолчанию - "Y". |
4.0.6 |
arParams | Необязательный параметр. |
12.0.0 |
Примеры использования
<?
$FilterArr = Array(
"find_id",
"find_lid",
"find_lamp",
"find_date_create1",
"find_date_create2",
"find_date_timestamp1",
"find_date_timestamp2",
"find_date_close1",
"find_date_close2",
"find_close",
"find_ticket_time_1",
"find_ticket_time_2",
"find_title",
"find_messages1",
"find_messages2",
"find_owner",
"find_created_by",
"find_responsible",
"find_responsible_id",
"find_category_id",
"find_criticality_id",
"find_status_id",
"find_mark_id",
"find_source_id",
"find_modified_by",
"find_message"
);
if (strlen($set_filter)>0) InitFilterEx($FilterArr,"TICKET_LIST","set",true); else InitFilterEx($FilterArr,"TICKET_LIST","get",true);
if (strlen($del_filter)>0) DelFilterEx($FilterArr,"TICKET_LIST",true);
if (CheckFilter())
{
$arFilter = Array(
"ID" => $find_id,
"LID" => $find_lid,
"LAMP" => $find_lamp,
"DATE_CREATE_1" => $find_date_create1,
"DATE_CREATE_2" => $find_date_create2,
"DATE_TIMESTAMP_1" => $find_date_timestamp1,
"DATE_TIMESTAMP_2" => $find_date_timestamp2,
"DATE_CLOSE_1" => $find_date_close1,
"DATE_CLOSE_2" => $find_date_close2,
"CLOSE" => $find_close,
"TICKET_TIME_1" => $find_ticket_time_1,
"TICKET_TIME_2" => $find_ticket_time_2,
"TITLE" => $find_title,
"MESSAGES1" => $find_messages1,
"MESSAGES2" => $find_messages2,
"OWNER" => $find_owner,
"CREATED_BY" => $find_created_by,
"RESPONSIBLE" => $find_responsible,
"RESPONSIBLE_ID" => $find_responsible_id,
"CATEGORY" => $find_category_id,
"CRITICALITY" => $find_criticality_id,
"STATUS" => $find_status_id,
"MARK" => $find_mark_id,
"SOURCE" => $find_source_id,
"MODIFIED_BY" => $find_modified_by,
"MESSAGE" => $find_message
);
}
$tickets = CTicket::GetList($by, $order, $arFilter, $is_filtered);
?>