• Модуль: lists
  • Путь к файлу: ~/bitrix/modules/lists/lib/copy/implement/children/field.php
  • Класс: BitrixListsCopyImplementChildrenField
  • Вызов: Field::addListsFields
private function addListsFields($iblockId, $copiedIblockId, array $fields)
{
	$object = new CList($copiedIblockId);

	foreach ($fields as $field)
	{
		if ($field["ID"] == "NAME")
		{
			$result = $object->updateField("NAME", $field);
		}
		else
		{
			$result = $object->addField($field);
		}

		if ($result)
		{
			$object->save();

			$this->setEnumRatio($iblockId, $field["ID"], $result);
		}
		else
		{
			$this->result->addError(
				new Error(
					Loc::getMessage("COPY_FIELD_ERROR", ["#NAME#" => $field["NAME"]]),
					self::FIELD_COPY_ERROR
				)
			);
		}
	}
}