• Модуль: crm
  • Путь к файлу: ~/bitrix/modules/crm/lib/integration/documentgenerator/dataprovider/crmentitydataprovider.php
  • Класс: Bitrix\Crm\Integration\DocumentGenerator\DataProvider\CrmEntityDataProvider
  • Вызов: CrmEntityDataProvider::getComplexFieldData
private function getComplexFieldData(string $fieldName, array $fieldDescription, string $dataProviderClass): array
{
	if (!is_a($dataProviderClass, DataProvider::class, true))
	{
		return [];
	}

	$data = [];

	$value = $this->getValue($fieldName);
	if (!is_a($value, $dataProviderClass) && !empty($value))
	{
		$value = DataProviderManager::getInstance()->getValueFromList($value);
		$value = DataProviderManager::getInstance()->createDataProvider($fieldDescription, $value, $this, $fieldName);
	}

	if (is_a($value, $dataProviderClass))
	{
		$data = DataProviderManager::getInstance()->getArray($value);
	}

	return $data;
}