| Опции в диалоге настройки шаблона | Аналог в ПОЛИНОМ:MDM | Пример использования функций в формуле ПОЛИНОМ:MDM |
|---|---|---|
| Префикс или Пробел для типов полей Атрибут и Значение свойства | StringPrefixSuffix(string, prefix, suffix) – возвращает пустую строку, если входная строка null или пустая, иначе обрамляет строку префиксом и суффиксом | StringPrefixSuffix([Состояние поверхности.Название группы свойства], '-', '') |
| Префикс или Пробел для типов полей Спец. символ и Текст | 'Префикс' или ' ' | '-' , ' ' |
| Удалять лидирующий префикс |
StringTrimStart(string, array) – убирает первый символ\символы, которые есть в массиве(array) из начала строки(string)
Необходимо записать префиксы свойств каждой из групп в StringArray('value1', 'value2') – возвращает массив 'value1', 'value2'. Если в группе два одинаковых префикса, в StringArray() необходимо добавить только один. Затем преобразовать группу свойств(поля шаблона обозначения) сверху, снизу и справа от разделителя в строку, используя ToString(выражение). Удалить первый префикс у каждой группы свойств, используя функцию StringTrimStart(): StringTrimStart(группа свойств сверху, StringArray(префиксы «группы свойств сверху» через запятую)) |
StringTrimStart(ToString([Сортамент.Форма] + StringPrefixSuffix([Состояние поверхности], '-', '')), StringArray('-')) |
| Скрывать нулевые значения |
StringPrefixSuffix(string, prefix, suffix) – для значений, у которых есть префикс.
if() – для значений, у которых нет префикса. |
if(IsNull([Новый параметр]), '', '[Новый параметр]') |
| Применить маску |
StringRemove(string, array) – убирает все значения, которые есть в массиве(array) из строки(string):
StringRemove(свойство, 'массив значений, которые нужно убрать из свойства') Для хранения масок полей шаблонов обозначений используется StringArray() |
[Материал.Марка] = StringRemove(ToString(GetPropertyValue(First(GetLinkedObjects([this], 'ld:ExSortMatLinkCode::lde:Destination')), 'c:@Materials::c:Materials::pd:MaterialsMark', '')), EvaluateFormula('PatternFieldsDesignationMaskFormula'))
в данном случае array хранится в формуле "Маски полей шаблонов обозначений" (с кодом PatternFieldsDesignationMaskFormula) StringArray('Без обозначения размеров','Никель анодный','(для кругл. сечения)','(для прямоуг. сечения)','Никель марганцевый','Никель кремнистый','Монель','Хромель','Алюмель','Нейзильбер','Копель','Константан','Мельхиор','Манганин','Без марки','Сплав','(Серебрянка)','Сталь') |