• Модуль: rpa
  • Путь к файлу: ~/bitrix/modules/rpa/lib/integration/bizproc/document/item.php
  • Класс: BitrixRpaIntegrationBizprocDocumentItem
  • Вызов: Item::createPropertyFromUserField
static function createPropertyFromUserField(string $fieldType, BitrixRpaUserFieldUserField $field): array
{
	$property = [
		'Name' => $field->getTitle(),
		'Editable' => $field->isEditable(),
		'Type' => $fieldType,
		'Required' => $field->isMandatory(),
		'Multiple' => $field->isMultiple(),
		'Settings' => $field->getSettings(),
	];

	if ($fieldType === 'select')
	{
		$data = $field->toArray();
		$options = [];
		if (isset($data['ENUM']))
		{
			$map = [];
			foreach ($data['ENUM'] as $enum)
			{
				$options[$enum['XML_ID']] = $enum['VALUE'];
				$map[$enum['XML_ID']] = $enum['ID'];
			}
			$property['Settings']['ExternalValues'] = $map;
			$property['Settings']['ENUM'] = $data['ENUM'];
		}
		$property['Options'] = $options;
	}
	elseif ($fieldType === 'bool')
	{
		$property['Settings']['ExternalValues'] = ['N' => 0, 'Y' => 1];
	}
	elseif ($fieldType === 'user')
	{
		$property['Settings']['ExternalExtract'] = true;
	}

	return $property;
}