Выражения: различия между версиями
Sidminik (обсуждение | вклад) |
Sidminik (обсуждение | вклад) |
||
| Строка 40: | Строка 40: | ||
==Использование функций .NET== | ==Использование функций .NET== | ||
Вы можете использовать любые объекты <code>.NET</code> в выражениях. | |||
'''Пример:''' использование функции <code>Max</code>: | |||
<syntaxhighlight lang="C#"> | |||
Math.Max(5, 10) | |||
</syntaxhighlight> | |||
По умолчанию отчет использует следующие сборки <code>.NET</code>: | |||
<syntaxhighlight lang="C#"> | |||
System.dll | |||
System.Drawing.dll | |||
System.Windows.Forms.dll | |||
System.Data.dll | |||
System.Xml.dll | |||
</syntaxhighlight> | |||
Вам доступны все объекты <code>.NET</code>, объявленные в этих сборках. | |||
Если вам нужно получить доступ к другой сборке, добавьте ее название в список сборок отчета. | |||
Это можно сделать в меню <code>Отчет|Свойства…</code>, выбрав в окне элемент <code>Скрипт</code>. | |||
[[Файл: net_function_1.png | center | border]] | |||
Например, если вы хотите использовать в отчете функцию, объявленную в вашем приложении, добавьте ссылку на сборку приложения (<code>.exe</code> или <code>.dll</code>) в список сборок отчета. | |||
После этого можно обращаться к функции, используя пространство имени (namespace) вашего приложения. Например, если в приложении определена следующая функция: | |||
<syntaxhighlight lang="C#"> | |||
namespace Demo | |||
{ | |||
public static class MyFunctions | |||
{ | |||
public static string Func1() | |||
{ | |||
return "Hello!"; | |||
} | |||
} | |||
} | |||
</syntaxhighlight> | |||
Обратиться к ней в отчете можно так: | |||
<syntaxhighlight lang="C#"> | |||
Demo.MyFunctions.Func1() | |||
</syntaxhighlight> | |||
Если добавить в скрипт директиву using Demo, это позволит укоротить форму обращения к функции: | |||
<syntaxhighlight lang="C#"> | |||
MyFunctions.Func1() | |||
</syntaxhighlight> | |||
Для обращения к переменным или функциям, которые были вами определены в скрипте отчета, используйте имя переменной или функции: | |||
<syntaxhighlight lang="C#"> | |||
myPrivateVariableThatIHaveDeclaredInScript | |||
MyScriptFunction() | |||
Использовать в выражении можно функции, которые возвращают значение. | |||
==Обращение к данным отчета== | ==Обращение к данным отчета== | ||
Версия от 08:48, 19 октября 2026
Выражение – это строка кода на языке C#, которая возвращает какое-либо значение.
Так, объект Текст может содержать выражения, обрамленные квадратными скобками.
Пример:
[2 + 2]
Редактор выражений
Редактор выражений - предназначен для удобства написания выражения и может вызываться в тех местах интерфейса дизайнера, где поддерживается ввод выражений.

Редактор выражений представляет собой окно, в котором можно ввести текст выражения и вставить в него элементы из окна Данные:

Обращение к объектам отчета
Пример 1. Высота объекта Text1 (обращение по имени):
Text1.Height
Пример 2. Имя файла, из которого был загружен отчет (использование переменной Report):
Report.FileName
Пример 3. Название отчета (обращение к вложенным свойствам объекта):
Report.ReportInfo.Name
Использование функций .NET
Вы можете использовать любые объекты .NET в выражениях.
Пример: использование функции Max:
Math.Max(5, 10)
По умолчанию отчет использует следующие сборки .NET:
System.dll
System.Drawing.dll
System.Windows.Forms.dll
System.Data.dll
System.Xml.dll
Вам доступны все объекты .NET, объявленные в этих сборках.
Если вам нужно получить доступ к другой сборке, добавьте ее название в список сборок отчета.
Это можно сделать в меню Отчет|Свойства…, выбрав в окне элемент Скрипт.

Например, если вы хотите использовать в отчете функцию, объявленную в вашем приложении, добавьте ссылку на сборку приложения (.exe или .dll) в список сборок отчета.
После этого можно обращаться к функции, используя пространство имени (namespace) вашего приложения. Например, если в приложении определена следующая функция:
namespace Demo
{
public static class MyFunctions
{
public static string Func1()
{
return "Hello!";
}
}
}
Обратиться к ней в отчете можно так:
Demo.MyFunctions.Func1()
Если добавить в скрипт директиву using Demo, это позволит укоротить форму обращения к функции:
MyFunctions.Func1()
Для обращения к переменным или функциям, которые были вами определены в скрипте отчета, используйте имя переменной или функции:
<syntaxhighlight lang="C#"> myPrivateVariableThatIHaveDeclaredInScript MyScriptFunction()
Использовать в выражении можно функции, которые возвращают значение.