Поля и формулы

Вкладка Поля и формулы позволяет найти зависимости выбранного поля или глобальной функции.
Иначе говоря, вы можете увидеть все формулы, которые используют конкретное поле или глобальную функцию.

На ней есть две подвкладки: Список, описанная ниже, и Дерево зависимостей, которая рисует те же зависимости (см. ниже). Выбранная подвкладка и последнее выбранное поле запоминаются для каждой базы.

Чем это полезно

При изменении или удалении поля либо глобальной функции эта возможность помогает оценить последствия для всей остальной базы данных.

Зависимости поля Invoice No на вкладке «Поля и формулы»

Подвкладка Список содержит два сворачиваемых раздела:

  • Скрипты Таблица.Поле: код самого выбранного элемента — формулы и триггеры поля или код глобальной функции; перед каждым скриптом стоит значок его уровня, а код свёрнут под ним; «Скрипты в этой базе данных не найдены», если скриптов нет;
  • Зависимости (N) или Нет зависимостей: скрипты, которые используют выбранный элемент.

Уровни влияния зависимостей

Существует три уровня влияния, обозначенные тремя разными значками:

ЗначокФормулаИнтерфейс пользователяОтображение
Красный значокДаДаДаПоле используется в формуле, в триггере («On click», «Trigger after update», «Trigger on new record»), в глобальной функции, в триггере «After Open» или в выражении печати. Любое изменение или удаление скажется на работе базы данных.
Оранжевый значокДаДаПоле используется правилом интерфейса: «Display field only, if», «Writable if», «Readable if», «Trigger before view», «Trigger after hide», «Show as», «Show data as», формулами динамического выбора или ограничением ссылки. Его изменение повлияет только на поведение интерфейса, но не на работу базы или вычисления.
Зелёный значокДаПоле служит только для отображения: в колонке представления (её формуле или условном форматировании) или в колонке таблицы печати. Его изменение скажется лишь на представлении данных, не затрагивая ни поведение интерфейса, ни вычисления.

Число внутри значка показывает количество прямых зависимостей; в списке же число в значке зависимости считает её собственные зависимости. Начиная с версии 3.2.0 это число везде считается одинаково — в списке, в дереве и в значках, — без учёта скриптов самого поля.

Как устроены зависимости

У поля может быть несколько зависимостей, и у каждой из них — свои собственные.
Эта иерархия помогает понять, как изменение поля или функции отражается на базе данных.

Вложенные зависимости, раскрытые на три уровня

Щелчок по строке списка раскрывает её собственные зависимости, повторный щелчок сворачивает их; шеврон слева отмечает строки, у которых они есть. Щелчок по значку строки выбирает это поле на вкладке «Поля и формулы» (кроме глобальной функции и триггера «After Open»).

Прямое использование

Выберите таблицу или строку глобальных функций:

  • Щёлкните в левой области: список показывает таблицы, а перед ними — два пункта: триггер «After Open» базы и её глобальные функции. Щелчок по таблице раскрывает её поля.

Список таблиц, перед которым идут триггер «After Open» и глобальные функции

Выберите поле или функцию:

  • Введите несколько букв в правой области: в списке останутся только элементы, которые их содержат, из всех таблиц. Щелчок по полю или функции выбирает этот элемент.

Фильтр полей по слову «Date»

Поля и таблицы из других баз той же команды тоже отображаются здесь — с отдельным значком. Зависимости из другой базы, уже загруженной Ninox (другой базы, которая использует поле этой), тоже есть в списке и в дереве — с названием своей базы впереди; отсюда они не открываются: сообщение на английском («This element belongs to another database…») предлагает открыть их базу.

Из редактора полей

В окне «Edit fields» Ninox у каждого поля, используемого где-то ещё, есть значок его зависимостей.
Щелчок по этому значку открывает панель Ninext на вкладке «Поля и формулы» и выбирает в ней это поле. Страница Редактирование поля подробно описывает эти значки и переход от одного поля к другому.

Значок поля Customer в окне Edit fields Ninox

Поле Customer, выбранное на вкладке «Поля и формулы»

Переход к выбранному полю или функции

Нажмите красную кнопку справа от списков. Она появляется только в режиме редактирования Ninox («Edit mode») и становится неактивной, пока в Ninox остаётся изменение, которое нужно сохранить или отменить. Если это поле, Ninext подсвечивает его в форме Ninox и показывает гаечный ключ: щелчок по этому ключу открывает окно редактирования поля. Если поле не видно в форме, Ninext предлагает открыть редактор полей.

Открытие окна редактирования выбранного поля

Для глобальных функций открывается редактор глобального кода с подсветкой нужной функции.

Открытие глобального кода на выбранной функции

Прямой переход к скрипту

  • Щёлкните по выделенному жирным фрагменту строки результата (здесь «Show as»): откроется редактор Ninox с кодом, содержащим зависимость, и нужный фрагмент будет подсвечен.
  • Красная кнопка, которая появляется при наведении справа от строки (в режиме редактирования Ninox), подчиняется тому же правилу, что и верхняя. Для строки, относящейся к полю (его формула, один из его триггеров, его «Show as»…), она выделяет это поле в его форме и несёт ключ в рамке; для остальных (триггер таблицы, колонка представления, печать, глобальная функция, «After Open») она открывает редактор скрипта и несёт только ключ.

Открытие кода зависимости одним щелчком

Длинные списки

Длинный список выводится порциями по 100 строк. Внизу списка +100 показывает следующие 100 строк, а Все (N) — оставшиеся N.

Бейдж при наведении на поле

В режиме редактирования Ninox («Edit mode») при наведении на поле в форме в правом верхнем углу поля появляется бейдж. Он объединяет следующее, и поле не нужно предварительно выбирать:

ЗонаПри наведенииПри щелчке
ТипТип поля или тип, который возвращает его формула.—
Fx (только поля-формулы)Полная формула с кнопкой Копировать; ошибки в ней подчёркнуты (красная волнистая линия, янтарный пунктир для предупреждения), а при наведении на подчёркнутый фрагмент появляется сообщение.Открывает редактор формулы Ninox.
Красный гаечный ключ—Открывает окно редактирования поля.
Счётчик зависимостейПредпросмотр дерева зависимостей.Открывает панель Ninext и выбирает поле на вкладке «Поля и формулы».

Цвет счётчика обозначает уровень влияния, как и значки выше; серый «0» означает поле, от которого ничего не зависит. Бейдж отключается в Настройках Ninext, раздел «Дополнительные инструменты»: Бейдж зависимостей при наведении.

При наведении на поле NET Total записи — бейдж Ninext; при наведении на его счётчик — предпросмотр дерева зависимостей

Дерево зависимостей

Подвкладка Дерево зависимостей рисует зависимости выбранного поля в обоих направлениях:

  • слева, вверх по цепочке, — поля, которые читает его формула;
  • в центре — само поле;
  • справа, вниз по цепочке, — формулы, которые его используют.

Пронумерованные полосы (-2, -1, 0, 1, 2…) обозначают уровни. При наведении на ячейку её цепочка подсвечивается, а остальное приглушается; во всплывающей подсказке с кодом ячейки выделено имя её непосредственного родителя. Глобальная функция тоже раскрывается — к собственным зависимым элементам (начиная с 3.2.0).

Дерево зависимостей поля NET Total: пронумерованные полосы, группа и её нижняя строка, ячейка под курсором

В ячейке:

  • значок перецентрирует дерево на этом поле, которое становится выбранным;
  • значок Fx показывает код при наведении и открывает его редактор по щелчку; красная кнопка подчиняется тому же правилу, что и в списке;
  • круглый значок + (Раскрыть) раскрывает зависимости ячейки, − (Свернуть) сворачивает их — так раскрывается и глобальная функция; вверх по цепочке второй значок показывает или скрывает дочерние элементы вне цепочки;
  • перечёркнутый глаз (Скрыть эту ячейку) прячет ячейку.

Если в колонке больше 10 элементов, ячейка «… +N» показывает остальные.

Группы. Ячейки с одинаковыми родителями объединяются в рамку — группу. Возьмитесь за её ручку, чтобы изменить порядок группы или перенести её в другую колонку; после этого в углу группы появляется круговая стрелка, которая возвращает её на исходное место. Группа показывает 5 ячеек; её кнопки −5, +5 и Все (N) показывают меньше или больше, стрелка возвращает её к 5 ячейкам, а нижняя строка группы сообщает, сколько ячеек остаются скрытыми.

Панель инструментов содержит:

  • Копировать как изображение: открывается окно с кнопками Копировать (буфер обмена) и Скачать PNG;
  • глаз, который показывает или скрывает спрятанные ячейки: он появляется, только если спрятана хотя бы одна ячейка, и показывает их число;
  • уменьшение, процент масштаба, увеличение и Подогнать к области;
  • Полный экран, из которого выходят той же кнопкой или клавишей Esc.

Дерево запоминает для каждого поля скрытые ячейки и расположение групп. Когда вы выбираете другое поле, оно сохраняет текущий масштаб и центрирует новое поле; обновление схемы не меняет ни масштаба, ни положения.

То же дерево показывается в предпросмотре при наведении на счётчик зависимостей бейджа.

История навигации

Значок в виде следов в заголовке панели Ninext при наведении или по щелчку открывает список последних полей, глобальных функций и отчётов, просмотренных через Ninext, — включая триггер «After Open». Элемент, просмотренный повторно, перемещается в конец списка без дублей; щелчок снова выбирает его. Список хранит 50 пунктов за день; Очистить всю историю навигации удаляет их все. Эта история, доступная только администраторам, отключается в Настройках Ninext, раздел «Улучшения интерфейса»: История навигации по схеме (администраторы).

Не путайте её с кнопкой Просмотренные записи с таким же значком, но расположенной в верхней панели Ninox: она доступна всем пользователям и показывает недавно открытые записи (см. Просмотренные записи).