Element Renumbering ru - kuvbur/AddOn_SomeStuff GitHub Wiki
Нумерация элементов
Элементам с одинаковым значением свойства-критерия присваиваются одинаковые номера (позиции).
Для работы нумерации необходимо создать два свойства:
- Свойство-флаг включения нумерации
- Свойство для хранения позиции (номера)
Правила нумерации и флаги указываются в описаниях свойств элемента.
v1.7+ При нумерации учитываются позиции выделенных заблокированных (в том числе находящихся в модуле) элементов.
v1.74+ Если выделен только один элемент - будут обработаны все элементы с видимых слоёв, у которых доступны правила нумерации выбранного элемента.
Флаг включения нумерации в одном из форматов
| Формат флага | Описание | Версия |
|---|---|---|
Renum_flag{имя_свойства} |
Стандартная нумерация | |
Renum_flag{имя_свойства ; NULL} |
Автоматическое заполнение нулями с учётом групп (например: 1 → 001) |
|
Renum_flag{имя_свойства ; SPACE} |
Автоматическое заполнение пробелами с учётом групп (например: 1 → 1) |
v1.6 |
Renum_flag{имя_свойства ; ALLNULL} |
Автоматическое заполнение нулями без учёта групп | |
Renum_flag{имя_свойства ; ALLSPACE} |
Автоматическое заполнение пробелами без учёта групп | |
Renum_flag{имя_свойства ; n_NULL} |
Жёсткое заполнение нулями (до n символов) с учётом групп |
v1.76 |
Renum_flag{имя_свойства ; n_SPACE} |
Жёсткое заполнение пробелами (до n символов) с учётом групп |
v1.76 |
Renum_flag{имя_свойства ; n_ALLNULL} |
Жёсткое заполнение нулями (до n символов) без учёта групп |
v1.76 |
Renum_flag{имя_свойства ; n_ALLSPACE} |
Жёсткое заполнение пробелами (до n символов) без учёта групп |
v1.76 |
Особенности работы:
-
Автоподбор длины:
- Для
NULL/SPACE/ALLNULL/ALLSPACEдлина заполнения определяется по максимальной позиции в группе - Пример: позиции
[5, 12, 100]→ количество символов в максимальной позиции 3 длина заполнения →005,012,100
- Для
-
Жёсткое задание длины (n_* команды):
n- минимальная длина результирующей строки- Если максимальная позиция длиннее
n- используется фактическая длина - Пример:
4_NULLдля позиций[1, 25, 100]→0001,0025,0100
Имя свойства с правилом задаётся в формате Property:имя группы/имя свойства
Тип данных свойства-флага: Критерий соответствия (ИСТИНА/ЛОЖЬ), v1.6 либо набор параметров со значениями Добавить, Перенумеровать, Исключить
Свойство для позиции в одном из форматов
| Формат | Описание | Версия |
|---|---|---|
Renum{имя_свойства_критерия} |
Стандартная нумерация по одному критерию | |
Renum{имя_свойства_критерия; имя_свойства_разбивки} |
Нумерация с группировкой по дополнительному свойству | |
Renum{библ_параметр_критерия} |
Использование параметра библиотечного элемента вместо свойства-критерия | v1.6 |
Renum{библ_параметр_критерия; библ_параметр_разбивки} |
Использование параметров библиотечных элементов для обоих критериев | v1.6 |
Пояснения:
- Свойство-критерий - определяет группу элементов для совместной нумерации
- Свойство-разбивки - отделяет одну группу нумерации от другой. Для каждой группы нумерация самостоятельная.
- Библиотечные параметры должны быть доступны через API Archicad
Для записи получившейся позиции в ID нужно добавить в описание свойства с позицией Sync_to{ID}
Возможные ошибки
| Сообщение об ошибке | Причина | Решение |
|---|---|---|
| Не найдены свойства, заданные в правилах нумерации | ||
| Часть элементов не была пронумерована из-за ошибок в свойствах | ||
| Изменение нумерации не требуется | ||
| Ошибка в правиле нумерации |