Перейти к содержанию

Логические: различия между версиями

Материал из Химсофт Вики
 
(не показано 5 промежуточных версий этого же участника)
Строка 5: Строка 5:


===Пример:===
===Пример:===
Вывести наименование показателя и через запятую единицу измерения. Если поле <code>ед.изм.</code> не заполнено, то после наименования показателя ничего не выводить (или по другому будет выведена пустота, символ <code>''</code> означает <code>пусто</code>).
Вывести наименование показателя и через запятую единицу измерения. Если поле <code>"ед.изм."</code> не заполнено, то после наименования показателя ничего не выводить (или по другому будет выведена пустота, символ <code><nowiki>''</nowiki></code> означает <code>"пусто"</code>).


===Решение:===
===Решение:===
<syntaxhighlight>
<syntaxhighlight>
[Результаты анализа Наименование показателя][IIF([Результаты анализа Размерность]>''; ', [Результаты анализа Размерность];'')]
[Результаты анализа -> Наименование показателя][IIF([Результаты анализа -> Размерность]>''; ', [Результаты анализа -> Размерность];'')]
</syntaxhighlight>
</syntaxhighlight>


Строка 17: Строка 17:


===Пример:===
===Пример:===
<code>[Результаты анализа →Исполнитель]:Маска("%абора%")</code> - означает, что среди всех исполнителей требуется выбрать только те переменные, в названии которых имеется слово (отрывок слова) <code>абора</code>.  
<code>[Результаты анализа ->Исполнитель]:Маска("%абора%")</code> - означает, что среди всех исполнителей требуется выбрать только те переменные, в названии которых имеется слово (отрывок слова) <code>"абора"</code>.  


'''Результат:''' лаборант химического анализа, лаборант, инженер – лаборант.
'''Результат:''' лаборант химического анализа, лаборант, инженер – лаборант.


<code>[Результаты анализа →Исполнитель]:Маска("Лаборант%")</code> - означает, что среди всех исполнителей требуется выбрать только те переменные, название которых начинается со слова <code>Лаборант</code>.  
<code>[Результаты анализа ->Исполнитель]:Маска("Лаборант%")</code> - означает, что среди всех исполнителей требуется выбрать только те переменные, название которых начинается со слова <code>"Лаборант"</code>.  


'''Результат:''' Лаборант химического анализа.
'''Результат:''' Лаборант химического анализа.


<code>[Результаты анализа →Исполнитель]:Маска("%лаборант")</code> - означает, что среди всех исполнителей требуется выбрать только те переменные, название которых заканчивается словом <code>лаборант</code>.  
<code>[Результаты анализа ->Исполнитель]:Маска("%лаборант")</code> - означает, что среди всех исполнителей требуется выбрать только те переменные, название которых заканчивается словом <code>"лаборант"</code>.  


'''Результат:''' инженер-лаборант.
'''Результат:''' инженер-лаборант.
Строка 33: Строка 33:


В дизайнере запросов возможно  использовать маску по примеру:
В дизайнере запросов возможно  использовать маску по примеру:
<code>[Сотрудники цехов -> Должность]:Маска("Нач%цех%")</code> или <code>:Маска("%ач%цех%")</code> – функция вернёт все значения, где встречаются упоминания о буквах  <code>ач</code> и <code>цех</code> в одном результате. (кол-во <code>%</code> без ограничений).
<code>[Сотрудники цехов -> Должность]:Маска("Нач%цех%")</code> или <code>:Маска("%ач%цех%")</code> – функция вернёт все значения, где встречаются упоминания о буквах  <code>"ач"</code> и <code>"цех"</code> в одном результате. (кол-во <code>%</code> без ограничений).
</div>
</div>



Текущая версия от 09:01, 2 марта 2026

IIF(x; a; b)

Значение функции:

Возвращает значение a, если условие x выполняется, и значение b, если условие x не выполняется. При этом a и b могут быть любого типа (строка, число с п.з. и т.д.).

Пример:

Вывести наименование показателя и через запятую единицу измерения. Если поле "ед.изм." не заполнено, то после наименования показателя ничего не выводить (или по другому будет выведена пустота, символ '' означает "пусто").

Решение:

[Результаты анализа -> Наименование показателя][IIF([Результаты анализа -> Размерность]>''; ', [Результаты анализа -> Размерность];'')]

МАСКА("%")

Значение функции:

Предназначена для включения в список условий по маске (части слова, словосочетания, результата запроса или переменной).

Пример:

[Результаты анализа ->Исполнитель]:Маска("%абора%") - означает, что среди всех исполнителей требуется выбрать только те переменные, в названии которых имеется слово (отрывок слова) "абора".

Результат: лаборант химического анализа, лаборант, инженер – лаборант.

[Результаты анализа ->Исполнитель]:Маска("Лаборант%") - означает, что среди всех исполнителей требуется выбрать только те переменные, название которых начинается со слова "Лаборант".

Результат: Лаборант химического анализа.

[Результаты анализа ->Исполнитель]:Маска("%лаборант") - означает, что среди всех исполнителей требуется выбрать только те переменные, название которых заканчивается словом "лаборант".

Результат: инженер-лаборант.

Это интересно

В дизайнере запросов возможно использовать маску по примеру: [Сотрудники цехов -> Должность]:Маска("Нач%цех%") или :Маска("%ач%цех%") – функция вернёт все значения, где встречаются упоминания о буквах "ач" и "цех" в одном результате. (кол-во % без ограничений).

Это интересно

Так же возможно использовать маску для поиска не жесткого значения, а переменной.

Например, для проверки наличия единицы измерения в конце наименования показателя:

[Показатель -> Наименование показателя]:МАСКА("%"+[Показатель -> Единица измерения]);
[Раствор -> Полное наименование]:МАСКА("%"+[Ед.изм. -> Ед.изм])

Например, для проверки наличия наименования показателя в начале наименования методики:

[Методика -> Краткое наименование методики]:МАСКА([Методика -> Наименование показателя]+"%")

Например, для проверки наличия наименования показателя в середине наименования методики:

[Методика -> Краткое наименование методики]:МАСКА("%"+[Методика -> Наименование показателя]+"%")