Закажите бесплатную презентацию продуктов РосБизнесСофт прямо сейчас!
В Cистеме существует три вида форм: “Форма редактирования”, “Форма списка” и “Форма выбора”.
Ссылка на существующий Объект в Системе:
/orders/4
Ссылка на новый объект (добавление нового объекта):
/orders/add
Для того, чтобы определить в PHP-коде «Формы редактирования», создан уже «Объект» или нет, используются методы:
Каждый из них возвращает: true или false.
Пример:
protected function onPlay() { if ($this->isEditForm()) { // объект уже создан (идет редактирование объекта) if(!$this->structure->owner->id) { $noAddTable = 1; } else { $noAddTable = 0; } } }
Конструкция $this->structure в «Форме редактирования» указывает на единичный текущий Объект.
После создания Объекта можно обращаться к полям Объекта.
Пример: обратимся к полям «date» и «number»:
echo $this->structure->number; // 100 echo $this->structure->date; // 01-01-2021
Важно! В момент добавления Объекта (/add) структура еще не создана и поэтому обращение к полям через $this->structure приведет к ошибке.
В «Формах списка» и «Формах выбора» $this->structure указывает на список объектов текущего модуля. Чтобы обратиться к полям «Объекта» необходимо пройтись циклом foreach по $this->structure.
Пример: в форме «Списка счетов» есть 3 счета, номера 1, 2, 3 и чтобы их вывести необходимо выполнить код:
foreach($this->structure as $item) { echo '№' . $item->number . ' от ' . $item->date . '<br>'; }
Результат:
№1 от 22.01.2022 №2 от 23.01.2022 №3 от 25.01.2022