Составные колонки состава изделия

Предыдущая страницаВ началоСледующая страница

Данные в колонке состава изделия можно брать из нескольких других колонок, применяя к ним различные математические и логические операторы. Для этого необходимо в диалоге свойств колонки выбрать способ заполнения данных Составная колонка. После выбора способа ниже появится поле ввода выражения колонки. Выражение состоит из различных записей: названий других колонок, произвольных текстовых строк, операторов, скобок. В поле ввода выражения записи отображаются в виде прямоугольников различных цветов. Содержимым колонки в окне SWProductComposition20x20 Состав изделия и в окне SWParameters20x20 параметров записи будет являться результат введённого выражения. Записи в поле ввода выражения можно выбирать с помощью mouse left. С помощью кнопок, расположенных справа от поля можно InstrumentalPanelNewDelete Удалить выбранную запись или InstrumentalPanelNew Добавить новую запись после выбранной. Если ни одна из записей не выбрана, новая запись добавляется в конец выражения.

23_CompoundColumn

Нажатие на кнопку добавления новой записи открывает выпадающий список, в котором необходимо выбрать тип записи. Если установить текстовый курсор в прямоугольник одной из имеющихся записей, то можно добавлять записи с помощью сочетаний клавиш. Доступны следующие типы записей:

Колонка                                <Ctrl>+<P>
В выражение будет подставлено содержимое другой колонки, имя которой необходимо выбрать из выпадающего списка, нажав на кнопку Dropdown15x19 в правой части записи. При нажатии mouse left на запись она активируется, что видно по её подсветке. Когда запись активна, имя колонки можно начать вводить с клавиатуры: при вводе символов, совпадающих с началом имени существующей колонки оно будет выбрано в списке.

clip8058

Текст                                        <Ctrl>+<T>
В выражение будет подставлена произвольная текстовая строка. Содержимое строки необходимо ввести с клавиатуры.

clip8059

Cкобки:
  (        открывающие                <Ctrl>+<9>
  )        закрывающие                <Ctrl>+<0>

Добавление скобок позволяет задавать последовательность выполнения математических и логических операций.

clip8060

Математические операции:
  +        сложение                        <Ctrl>+<+>
  -        вычитание                        <Ctrl>+<->
  х        умножение                        <Ctrl>+<8>
  /        деление                        <Ctrl>+</>
  %        остаток от деления                

Данные элементы позволяют выполнять математические операции над числовыми значениями элементов выражения с учетом скобок.

Concat                Строковое объединение                        <Ctrl>+<D>
Объединение текстовых строк. Например, объединение строки "1" и строки "2" даст результат "12".

CondConcat                Условное строковое объединение        <Ctrl>+<S>
Объединение выполняется, если оба элемента не пустые. Ниже показан результат операции CondConcat для колонки Составная колонка.

clip8062

clip8063     clip8064

->        Условный оператор (Если А, то B)        <Ctrl>+<I>
Содержимым составной колонки будет B, но только в том случае, если А не пустое, не равно «0», имеет значение «истина». Этот оператор удобно использовать, чтобы не выводились разделяющие символы.
Например, если колонка Сводное наименование задана без условного оператора, то разделяющий символ «-» будет выводиться всегда.

clip8065 clip8066

Если для разделяющего символа добавить условный оператор, то при пустом значении поля Обозначение символ выводиться не будет

clip8067clip8068

Логические операторы:
  &&                И                <Ctrl>+<6>
  ||                ИЛИ                <Ctrl>+<7>
  !                НЕ                <Ctrl>+<Q>
Данные операторы позволяют выполнять логические операции над значениями соседних элементов строки.
Добавив логическую операцию &&, можно задать вывод разделяющего символа только при условии заполнения и наименования, и обозначения.

clip8069  

Операторы поиска подстроки:
  StrSubstr                Содержит подстроку                <Ctrl>+<Y>
  StrNotSubstr        Не содержит подстроку                <Ctrl>+<U>
  StrStartWith        Начинается с подстроки                <Ctrl>+<L>
  StrEndsWith        Заканчивается на подстроку        <Ctrl>+<O>
Проверяют, содержится ли первая текстовая строка во второй.
Пример. Если колонка Наименование содержит слова ГОСТ или ISO, то они выводятся в текущую колонку.

23_CompoundColumnStrSubstr

23_CompoundColumnStrSubstr2

Операторы строкового сравнения:
  StrEq                А равно В                        <Ctrl>+<1>
  StrNotEq                А не равно В                        <Ctrl>+<2>
Данные операторы выполняют сравнение текстовых значений. Результатом выполнения операции является значение «истина» или «ложь».
Например, для составной колонки можно задать условие: выводить значение поля Количество, если содержимое поля Строка 1 равно содержимому поля Строка 2.
Если условие выполняется, составная колонка содержит данные, если нет, то она будет пустой.

clip8070

clip8071

clip8072

Операторы числового сравнения
==                А равно В                <Ctrl>+<3>
!=                А не равно В                <Ctrl>+<4>
>                Больше                <Ctrl>+<>>
<                Меньше                <Ctrl>+<<>
Данные операторы выполняют сравнение числовых значений. Результатом выполнения операции является значение «истина» или «ложь».

Round        <Ctrl>+<R>
Округляет десятичное число до ближайшего целого.

Floor                <Ctrl>+<W>
Округляет десятичное число до целого в меньшую сторону.

Ceil                <Ctrl>+<E>
Округляет десятичное число до целого в большую сторону.

Convert        <Ctrl>+<M>
Конвертирует значение в другую единицу измерения. В качестве правого аргумента используется имя единицы, в которую необходимо преобразовать значение.

ColumnTab11         ColumnTab12

Format        <Ctrl>+<F>
Преобразует число в строку. Позволяет выводить любое получившееся значение с необходимым количеством знаков после запятой. Текст после оператора Format должен состоять из двух чисел: первое число задаёт количество знаков после запятой, второе определяет, отбрасывать последние нули или нет. Значение 1 - отбрасывать нули, значение 0 - нет.

ColumnTab9

На картинке ниже показан результат форматирования чисел 1.23400 и 32.00.

ColumnTab10

Unit                <Ctrl>+<B>
Выводит единицу измерения значения. В качестве правого аргумента можно задать тип выводимого названия - ShortName/GlobalName/FullName. По умолчанию используется название ShortName.

ColumnTab13   ColumnTab14