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

Пользовательские функции: различия между версиями

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


| rowspan="2" | IdNameItemDto
| IdNameItemDto
| —
| —
|-
| —
| —
| —
| Запись для хранения пар <code>ID-значение</code>
|-
|-
| DoubleIdNameItemDto
| DoubleIdNameItemDto
| —
| —
| —
| Запись для хранения полей сложно-составного элемента <code>ID-ID-значение</code>


|- style="background:#eef2f7; font-weight:bold;"
|- style="background:#eef2f7; font-weight:bold;"
Строка 33: Строка 30:
| RoundMode
| RoundMode
| —
| —
| —
| Вспомогательное перечисление для <code>RoundBase</code>


|- style="background:#eef2f7; font-weight:bold;"
|- style="background:#eef2f7; font-weight:bold;"
Строка 44: Строка 41:
| [[Удаление HTML-тегов]]
| [[Удаление HTML-тегов]]
|-
|-
| SetMarginByDots
| [[Абзацный отступ ячейки по уровню вложенности | SetMarginByDots]]
| Абзацный отступ ячейки по уровню вложенности
| [[Абзацный отступ ячейки по уровню вложенности]]
|-
|-
| CollapseNumbers
| [[Группировка последовательности целых чисел | CollapseNumbers]]
| Группировка последовательности целых чисел
| [[Группировка последовательности целых чисел]]
|-
|-


| rowspan="3" | Getters
| rowspan="3" | Getters
| FieldOr
| [[Обработка поля | FieldOr]]
| Обработка строки
| [[Обработка поля]]
|-
|-
| JoinFields
| [[Объединение полей | JoinFields]]
| Объединение полей
| [[Объединение полей]]
|-
|-
| DateOr
| [[Форматирование даты | DateOr]]
| Форматирование даты
| [[Форматирование даты]]


|- style="background:#eef2f7; font-weight:bold;"
|- style="background:#eef2f7; font-weight:bold;"
Строка 66: Строка 63:
|-
|-
| AfterData
| AfterData
| AlignCells
| [[Выравнивание текста по условию | AlignCells]]
| Выравнивание текста по условию
| [[Выравнивание текста по условию]]
|-
|-
| KeyPressValidate
| KeyPressValidate
| BlockIfNotDigits
| [[Валидатор ввода чисел | BlockIfNotDigits]]
| Валидатор ввода чисел
| [[Валидатор ввода чисел]]


|- style="background:#eef2f7; font-weight:bold;"
|- style="background:#eef2f7; font-weight:bold;"
Строка 79: Строка 76:
| ListControlDataFiller
| ListControlDataFiller
| GetItemsArray
| GetItemsArray
| —
| Массив для заполнения списочных элементов управления
|-
|-


| rowspan="2" | CheckedListSynchronizer
| rowspan="2" | CheckedListSynchronizer
| HandleCheckboxChanged
| [[Обработчик изменений чек-бокса "Выделить все" | HandleCheckboxChanged]]
| Обработчик изменений чек-бокса "Выделить все"
| [[Обработчик изменений чек-бокса "Выделить все"]]
|-
|-
| HandleItemCheck
| [[Обработчик изменений списка чек-боксов | HandleItemCheck]]
| Обработчик изменений списка чек-боксов
| [[Обработчик изменений списка чек-боксов]]


|- style="background:#eef2f7; font-weight:bold;"
|- style="background:#eef2f7; font-weight:bold;"
Строка 95: Строка 92:


| rowspan="3" | PersonNameFormatter
| rowspan="3" | PersonNameFormatter
| NameInit
| [[Работа с ФИО | NameInit]]
| Формат "Фамилия И.О."
| [[Работа с ФИО | Формат "Фамилия И.О."]]
|-
|-
| InitName
| [[Работа с ФИО | InitName]]
| Формат "И.О. Фамилия"
| [[Работа с ФИО | Формат "И.О. Фамилия"]]
|-
|-
| FullName
| [[Работа с ФИО | FullName]]
| Формат "Фамилия Имя Отчество"
| [[Работа с ФИО | Формат "Фамилия Имя Отчество"]]
|}
|}


Строка 108: Строка 105:


===Подключение пространства имен===
===Подключение пространства имен===
<syntaxhighlight lang="C#">
<syntaxhighlight lang="css">
using Chemsoft.Triteia.ReportFunctions.Signatures;
using Chemsoft.Triteia.ReportFunctions.Signatures;
</syntaxhighlight>
</syntaxhighlight>


В таком случае для использования в выражении перед именем функции требуется через точку указывать имя класса:
В таком случае для использования в выражении перед именем функции требуется через точку указывать имя класса:
<syntaxhighlight lang="C#">
<syntaxhighlight lang="java">
[PersonNameFormatter.FullName([Main.surname], [Main.name], [Main.patronimyc])]
[PersonNameFormatter.FullName([Main.surname], [Main.name], [Main.patronimyc])]
</syntaxhighlight>
</syntaxhighlight>


===Подключение класса===
===Подключение класса===
<syntaxhighlight lang="C#">
<syntaxhighlight lang="css">
using static Chemsoft.Triteia.ReportFunctions.Signatures.PersonNameFormatter;
using static Chemsoft.Triteia.ReportFunctions.Signatures.PersonNameFormatter;
</syntaxhighlight>
</syntaxhighlight>


В таком случае для использования в выражении требуется указывать только имя функции:
В таком случае для использования в выражении требуется указывать только имя функции:
<syntaxhighlight lang="C#">
<syntaxhighlight lang="java">
[FullName([Main.surname], [Main.name], [Main.patronimyc])]
[FullName([Main.surname], [Main.name], [Main.patronimyc])]
</syntaxhighlight>
</syntaxhighlight>

Текущая версия от 03:55, 21 октября 2026

Перечень доступных библиотек, классов и функций

Класс Функция Назначение
Chemsoft.Triteia.ReportClasses
IdNameItemDto — Запись для хранения пар ID-значение
DoubleIdNameItemDto — Запись для хранения полей сложно-составного элемента ID-ID-значение
Chemsoft.Triteia.ReportFunctions.Maths
Rounding RoundBase Округление
RoundMode — Вспомогательное перечисление для RoundBase
Chemsoft.Triteia.ReportFunctions.Cells
Formatters ClearTags Удаление HTML-тегов
SetMarginByDots Абзацный отступ ячейки по уровню вложенности
CollapseNumbers Группировка последовательности целых чисел
Getters FieldOr Обработка поля
JoinFields Объединение полей
DateOr Форматирование даты
Chemsoft.Triteia.ReportFunctions.Events
AfterData AlignCells Выравнивание текста по условию
KeyPressValidate BlockIfNotDigits Валидатор ввода чисел
Chemsoft.Triteia.ReportFunctions.Controls
ListControlDataFiller GetItemsArray Массив для заполнения списочных элементов управления
CheckedListSynchronizer HandleCheckboxChanged Обработчик изменений чек-бокса "Выделить все"
HandleItemCheck Обработчик изменений списка чек-боксов
Chemsoft.Triteia.ReportFunctions.Signatures
PersonNameFormatter NameInit Формат "Фамилия И.О."
InitName Формат "И.О. Фамилия"
FullName Формат "Фамилия Имя Отчество"

Варианты подключения в основном классе отчета ReportScript

Подключение пространства имен

using Chemsoft.Triteia.ReportFunctions.Signatures;

В таком случае для использования в выражении перед именем функции требуется через точку указывать имя класса:

[PersonNameFormatter.FullName([Main.surname], [Main.name], [Main.patronimyc])]

Подключение класса

using static Chemsoft.Triteia.ReportFunctions.Signatures.PersonNameFormatter;

В таком случае для использования в выражении требуется указывать только имя функции:

[FullName([Main.surname], [Main.name], [Main.patronimyc])]

Примечание

Даже если функция используется только в выражениях и не используется во вкладке кода, она все-равно должна быть обязательно подключена во вкладке кода одним из двух способов!