⟵ сюдатуда ⟶
  • Установка
  • Конфигурация на Ubuntu
  • Обновления
  • Бэкапы
  • Multi/no-multi
  • Консольная утилита bin/totum
  • Основы для пользователей
  • Интерфейс и компоновка
  • Таблицы и их параметры
  • Префильтр
  • Поля и их параметры
  • Синтаксис
  • Код, действия, форматирование
  • Реляционные взаимосвязи
  • Порядок расчета и единицы пересчета
  • Сравнения
  • Функции
  • Отладка
  • Автозаполнение расчетных и временных
  • Дублирование строк и циклов
  • Дублирование строк
  • Дублирование циклов
  • Код при дублировании
  • Быстрая переменная duplicatedId
  • Деревья
  • Печать и CSV
  • API
  • Роли и пользователи
  • Нотификации
  • Действия по расписанию
  • Анонимные таблицы
  • Внешние формы
  • Экспорт и импорт таблиц
  • Системные таблицы
  • Подключение функций
  • Дополнительные интерфейсы
  • Структура файлов
  • Структура базы
  • Дублирование строк и циклов

    Дублирование строк

    Алгоритм определения значения поля при дублировании

    • При активном copyOnDuplicate и отсутствии расчетного значения либо активном codeOnlyInAdd либо установленном ручном значении — значение из дублируемой строки.

    • Если нет default либо code — значение из дублируемой строки.

    • Если тип поля Уникальное и было переопределено — пишется новое значение.

    • Во всех иных случаях значение расчитывается заново на основе данных новой строки.

    Дублирование циклов

    При дублировании цикла значения в полях всех его таблиц дублируются полностью.

    Версии таблиц в дублированной копии остаются такими-же как и в дублируемом цикле.

    Коды действий на добавление не срабатывают.

    Код при дублировании

    При наличии кода при дублировании он исполняется полностью вместо стандартного механизма дублирования.

    При исполнении кода в нем будет доступна переменная $#ids, содержащая список id дублируемых строк (отмеченных галочкой).

    Быстрая переменная duplicatedId

    Только для КОД при добавлении дуюлированной строки!

    ex: $#duplicatedId
    

    Возвращает id строки, с которой было осуществлено дублирование.

    Если добавление происходит не через дублирование то возвращает 0.