• Модуль: crm
  • Путь к файлу: ~/bitrix/modules/crm/lib/item.php
  • Класс: Bitrix\Crm\Item
  • Вызов: Item::getData
public function getData(int $valuesType = Values::ALL): array
{
	//todo temporary decision to avoid error on jsonSerialization of EntityObjects
	$fieldTypeMask = FieldTypeMask::SCALAR|FieldTypeMask::USERTYPE|FieldTypeMask::EXPRESSION;

	$entityFieldNames = array_merge(
		$this->getEntityFieldNames($fieldTypeMask),
		$this->utmTableClassName::getCodeList(),
	);

	if ($this->hasField(static::FIELD_NAME_OBSERVERS))
	{
		$entityFieldNames[] = $this->getEntityFieldNameByMap(static::FIELD_NAME_OBSERVERS);
	}

	/** @var string[][] $fromImplementation */
	$fromImplementation = [];
	foreach ($this->getAllImplementations() as $implementation)
	{
		$fromImplementation[] = $implementation->getSerializableFieldNames();
	}
	$entityFieldNames = array_merge($entityFieldNames, ...$fromImplementation);

	$data = $this->collectValues($entityFieldNames, $valuesType);

	$commonFieldNames = array_map([$this, 'getCommonFieldNameByMap'], array_keys($data));

	return array_combine($commonFieldNames, array_values($data));
}