• Модуль: crm
  • Путь к файлу: ~/bitrix/modules/crm/lib/kanban/entity/order.php
  • Класс: Bitrix\Crm\Kanban\Entity\Order
  • Вызов: Order::getPopupAdditionalFields
protected function getPopupAdditionalFields(string $viewType = self::VIEW_TYPE_VIEW): array
{
	$result = parent::getPopupAdditionalFields($viewType);

	$additionalFields = [
		'TITLE' =>  Loc::getMessage('CRM_KANBAN_FIELD_ORDER_TITLE'),
		'PAYMENT' =>  Loc::getMessage('CRM_KANBAN_FIELD_ORDER_PAYMENTS'),
		'SHIPMENT' =>  Loc::getMessage('CRM_KANBAN_FIELD_ORDER_SHIPMENTS'),
		'PROBLEM_NOTIFICATION' =>  Loc::getMessage('CRM_KANBAN_FIELD_ORDER_PROBLEM_NOTIFICATION'),
	];
	foreach ($additionalFields as $fieldName => $fieldLabel)
	{
		$result[$fieldName] =  [
			'ID' => 'field_' . $fieldName,
			'NAME' => $fieldName,
			'LABEL' => $fieldLabel
		];
	}

	$propertiesRaw = \Bitrix\Crm\Order\Property::getList(
		array(
			'filter' => array(
				'=ACTIVE' => 'Y',
				'=TYPE' => ['STRING', 'NUMBER', 'Y/N', 'ENUM', 'DATE']
			),
			'order' => array(
				"PERSON_TYPE_ID" => "ASC", "SORT" => "ASC"
			),
			'select' => array(
				"ID", "NAME", "PERSON_TYPE_NAME" => "PERSON_TYPE.NAME", "LID" => "PERSON_TYPE.LID", "PERSON_TYPE_ID"
			),
		)
	);

	while ($property = $propertiesRaw->fetch())
	{
		$fieldName = 'PROPERTY_'.$property['ID'];
		$fieldLabel = htmlspecialcharsbx("{$property['NAME']} ({$property['PERSON_TYPE_NAME']}) [{$property['LID']}]");
		$result[$fieldName] =  [
			'ID' => 'field_' . $fieldName,
			'NAME' => $fieldName,
			'LABEL' => $fieldLabel
		];
	}

	return $result;
}