Пользовательские подстановки
В K3 Мебель версии v7.3 появился ряд пользовательских подстановок, используемых при создании таких мебельных объектов, как мебельная панель, мебельный профиль и др. Каждой их таких подстановок соответствует свой внутренний номер (YAD-номер). Для работы с такими подстановками используются следующие функции:
Int GetYADSubst(Int <YadNum>)
Функция возвращает код подстановки по YAD-номеру <YadNum> или 0, если такой подстановки нет.
Int SetYADSubst(int <YadNum>, int <Subst>)
Функция устанавливает код подстановки <Subst>, соответствующий YAD-номеру <YadNum> или 0, если такого номера нет.
INT GetSubstYAD(INT <Subst>)
Функция ищет YAD-номер по номеру группы подстановки <Subst> и возвращает его значение. В случае ошибки возвращает 0. По своему смыслу функция обратна функции GetYADSubst.
INT GetMPLSubst(INT <YadNum>, STRING <ArrIDName>, STRING <ArrSubstName>[, LOGICAL <IsSubstNum>])
Функция создает массивы с именами <ArrIDName> и <ArrSubstName> и заполняет их соответственно ID и названием элемента подстановки с внутренним номером <YadNum>. Если задан параметр <IsSubstNum> и он равен единице, то вместо внутреннего номера, заданного параметром <YadNum> берется реальный номер подстановки.
Функция возвращает количество заполненных элементов массива и 0 в случае ошибки.
INT GetMPLSubstR(INT ARRAY <Arr>, STRING <ArrIDName>, STRING <ArrSubstName>, STRING <ArrNum>)
Функция создает двумерные массивы с именами <ArrIDName> и <ArrSubstName>, и одномерный массив с именем <ArrNum> и заполняет их ID (<ArrIDName>) и названиями (<ArrSubstName>) элементов подстановки, ссылка на номер которых содержится в массиве <Arr>. Массив с именем <ArrNum> создаётся и заполняется количеством элементов в каждой группе, ссылка на которую содержится в массиве <Arr>. Функция возвращает общее количество заполненных элементов массива.
Примечание. Если результат функции GetMPLSubstR присваивается какой-то переменной, то эта переменная должна быть определена до вызова функции.
Доступные коды подстановок представлены в таблице:
|
|
|
|
|---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| Функции этого раздела работают только с подстановками базовой библиотеки прототипов Shkaf |