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

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

Материал из Химсофт Вики
 
(не показано 25 промежуточных версий этого же участника)
Строка 1: Строка 1:
==Перечень доступных библиотек, классов и функций==
==Перечень доступных библиотек, классов и функций==


{|class="wikitable" style="margin:auto; background-color: #fff;"  
{|class="wikitable" style="margin:auto; background-color: #fff; width: 100%; table-layout: fixed;"  
|- style="background:#f8f9fa; font-weight:bold; text-align:center;"
|- style="background:#f8f9fa; font-weight:bold; text-align:center;"
! style="width:40%;" | Файл подключаемой библиотеки /<br>пространство имен (без приставки <code>.dll</code>)
! style="width: 30%;" | Класс
! style="width:20%;" | Класс
! style="width: 30%;" | Функция
! style="width:20%;" | Функция
! style="width: 40%;" | Назначение
! style="width:20%;" | Назначение
 
|- style="background:#eef2f7; font-weight:bold;"
 
| colspan="3" | Chemsoft.Triteia.ReportClasses
|-
|-


| rowspan="2" | <code>Chemsoft.Triteia.ReportClasses.dll</code>
| IdNameItemDto
| <code>IdNameItemDto</code>
| —
| –
| Запись для хранения пар <code>ID-значение</code>
| –
|-
|-
| <code>DoubleIdNameItemDto</code>
| DoubleIdNameItemDto
| –
| —
| –
| Запись для хранения полей сложно-составного элемента <code>ID-ID-значение</code>
 
|- style="background:#eef2f7; font-weight:bold;"
 
| colspan="3" | Chemsoft.Triteia.ReportFunctions.Maths
|-
|-
| Rounding
| [[Округление | RoundBase]]
| [[Округление]]
|-
| RoundMode
| —
| Вспомогательное перечисление для <code>RoundBase</code>


| rowspan="2" | <code>Chemsoft.Triteia.ReportFunctions.Maths.dll</code>
|- style="background:#eef2f7; font-weight:bold;"
| <code>Rounding</code>
 
| <code>RoundBase</code>
| colspan="3" | Chemsoft.Triteia.ReportFunctions.Cells
| Округление
|-
| <code>RoundMode</code>
| –
| –
|-
|-


| rowspan="6" | <code>Chemsoft.Triteia.ReportFunctions.Cells.dll</code>
| rowspan="3" | Formatters
| rowspan="3" | <code>Formatters</code>
| [[Удаление HTML-тегов | ClearTags]]
| <code>ClearTags</code>
| [[Удаление HTML-тегов]]
|-
|-
| <code>SetMarginByDots</code>
| [[Абзацный отступ ячейки по уровню вложенности | SetMarginByDots]]
| [[Абзацный отступ ячейки по уровню вложенности]]
|-
|-
| <code>CollapseNumbers</code>
| [[Группировка последовательности целых чисел | CollapseNumbers]]
| [[Группировка последовательности целых чисел]]
|-
|-


| rowspan="3" | <code>Getters</code>
| rowspan="3" | Getters
| <code>FieldOr</code>
| [[Обработка поля | FieldOr]]
| [[Обработка поля]]
|-
|-
| <code>JoinFields</code>
| [[Объединение полей | JoinFields]]
| [[Объединение полей]]
|-
|-
| <code>DateOr</code>
| [[Форматирование даты | DateOr]]
| [[Форматирование даты]]
 
|- style="background:#eef2f7; font-weight:bold;"
 
| colspan="3" | Chemsoft.Triteia.ReportFunctions.Events
|-
| AfterData
| [[Выравнивание текста по условию | AlignCells]]
| [[Выравнивание текста по условию]]
|-
|-
| KeyPressValidate
| [[Валидатор ввода чисел | BlockIfNotDigits]]
| [[Валидатор ввода чисел]]
|- style="background:#eef2f7; font-weight:bold;"


| rowspan="2" | <code>Chemsoft.Triteia.ReportFunctions.Events.dll</code>
| colspan="3" | Chemsoft.Triteia.ReportFunctions.Controls
| <code>AfterData</code>
| <code>AlignCells</code>
|-
|-
| <code>KeyPressValidate</code>
| ListControlDataFiller
| <code>BlockIfNotDigits</code>
| GetItemsArray
| Массив для заполнения списочных элементов управления
|-
|-


| rowspan="3" | <code>Chemsoft.Triteia.ReportFunctions.Controls.dll</code>
| rowspan="2" | CheckedListSynchronizer
| <code>ListControlDataFiller</code>
| [[Обработчик изменений чек-бокса "Выделить все" | HandleCheckboxChanged]]
| <code>GetItemsArray</code>
| [[Обработчик изменений чек-бокса "Выделить все"]]
|-
|-
| [[Обработчик изменений списка чек-боксов | HandleItemCheck]]
| [[Обработчик изменений списка чек-боксов]]


| rowspan="2" | <code>CheckedListSynchronizer</code>
|- style="background:#eef2f7; font-weight:bold;"
| <code>HandleCheckboxChanged</code>
 
|-
| colspan="3" | Chemsoft.Triteia.ReportFunctions.Signatures
| <code>HandleItemCheck</code>
|-
|-


| rowspan="3" | <code>Chemsoft.Triteia.ReportFunctions.Signatures.dll</code>
| rowspan="3" | PersonNameFormatter
| rowspan="3" | <code>PersonNameFormatter</code>
| [[Работа с ФИО | NameInit]]
| <code>NameInit</code>
| [[Работа с ФИО | Формат "Фамилия И.О."]]
|-
|-
| <code>InitName</code>
| [[Работа с ФИО | InitName]]
| [[Работа с ФИО | Формат "И.О. Фамилия"]]
|-
|-
| <code>FullName</code>
| [[Работа с ФИО | FullName]]
| [[Работа с ФИО | Формат "Фамилия Имя Отчество"]]
|}
|}


Строка 77: Строка 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])]

Примечание

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