• Модуль: crm
  • Путь к файлу: ~/bitrix/modules/crm/classes/general/crm_product_row.php
  • Класс: \CAllCrmProductRow
  • Вызов: CAllCrmProductRow::GetFieldsInfo

Этот метод GetFieldsInfo() представляет собой статическую функцию, используемую для инициализации и получения метаданных полей (field definitions) в виде массива. Такие данные часто используются в системах CRM (например, Bitrix24) для определения структуры сущности, валидации данных, генерации форм и т. д.

static function GetFieldsInfo()
{
	if(!self::$FIELD_INFOS)
	{
		self::$FIELD_INFOS = array(
			'ID' => array(
				'TYPE' => 'integer',
				'ATTRIBUTES' => array(CCrmFieldInfoAttr::ReadOnly)
			),
			'OWNER_ID' => array(
				'TYPE' => 'integer',
				'ATTRIBUTES' => array(CCrmFieldInfoAttr::Required, CCrmFieldInfoAttr::Immutable)
			),
			'OWNER_TYPE' => array(
				'TYPE' => 'string',
				'ATTRIBUTES' => array(CCrmFieldInfoAttr::Required, CCrmFieldInfoAttr::Immutable)
			),
			'PRODUCT_ID' => array(
				'TYPE' => 'integer',
				'ATTRIBUTES' => array(CCrmFieldInfoAttr::Required)
			),
			'PRODUCT_NAME' => array('TYPE' => 'string'),
			'PRICE' => array('TYPE' => 'double'),
			'PRICE_EXCLUSIVE' => array('TYPE' => 'double'),
			'PRICE_NETTO' => array('TYPE' => 'double'),
			'PRICE_BRUTTO' => array('TYPE' => 'double'),
			'QUANTITY' => array('TYPE' => 'double'),
			'DISCOUNT_TYPE_ID' => array('TYPE' => 'integer'),
			'DISCOUNT_RATE' => array('TYPE' => 'double'),
			'DISCOUNT_SUM' => array('TYPE' => 'double'),
			'TAX_RATE' => array('TYPE' => 'double'),
			'TAX_INCLUDED' => array('TYPE' => 'char'),
			'CUSTOMIZED' => array('TYPE' => 'char'),
			'MEASURE_CODE' => array('TYPE' => 'integer'),
			'MEASURE_NAME' => array('TYPE' => 'string'),
			'SORT' => array('TYPE' => 'integer'),
			'TYPE' => array(
				'TYPE' => 'integer',
				'ATTRIBUTES' => array(CCrmFieldInfoAttr::ReadOnly)
			),
		);
	}

	return self::$FIELD_INFOS;
}