• Модуль: bizproc
  • Путь к файлу: ~/bitrix/modules/bizproc/lib/integration/ui/entityselector/templateprovider.php
  • Класс: BitrixBizprocIntegrationUIEntitySelectorTemplateProvider
  • Вызов: TemplateProvider::getComplexDocumentTypes
protected function getComplexDocumentTypes(string $moduleId = ''): array
{
	if ($this->complexDocumentTypesCache === null)
	{
		$query =
			WorkflowTemplateTable::query()
				->setDistinct()
				->setSelect(['MODULE_ID', 'ENTITY', 'DOCUMENT_TYPE'])
				->where($this->getDefaultTemplateFilter())
		;
		$complexDocumentTypes = $query->exec()->fetchAll();

		$this->complexDocumentTypesCache = [];
		foreach ($complexDocumentTypes as $documentType)
		{
			$this->complexDocumentTypesCache[] =
				[$documentType['MODULE_ID'], $documentType['ENTITY'], $documentType['DOCUMENT_TYPE']]
			;
		}
	}

	$filter = static fn ($docType) => ($docType[0] === $moduleId);

	return $moduleId ? array_filter($this->complexDocumentTypesCache, $filter) : $this->complexDocumentTypesCache;
}