Использование Crystal Reports в графических символах Wonderware Archestra

Предисловие
Если вам необходимо формировать печатные формы в графических символах Wonderware Archestra, то Crystal Reports может вам в этом помочь. В статье приведен минимальный список действий для вызова preview-отчета.

Tutorial

1. Скачать необходимую версию .NET SDK по ссылке

2. Установить, в том числе исполняемый модуль

3. Импортировать в IDE Archestra библиотеку dll, содержащую визуальный компонент CrystalReportViewer:
C:\Program Files (x86)\SAP BusinessObjects\Crystal Reports for .NET Framework 4.0\Common\SAP BusinessObjects Enterprise XI 4.0\win32_x86\dotnet\CrystalDecisions.Windows.Forms.dll

В результате, в панели графических элементов появится компонент CrystalReportViewer.
В результате, в панели графических элементов появится компонент  CrystalReportViewer.

4. Импортировать в IDE Archestra библиотеку dll, содержащую функции API для работы Crystal Reports (Script Function Library):
C:\Program Files (x86)\SAP BusinessObjects\Crystal Reports for .NET Framework 4.0\Common\SAP BusinessObjects Enterprise XI 4.0\win32_x86\dotnet\CrystalDecisions.Shared.dll

5. Добавить компонент CrystalReportViewer на графический символ Archestra.

Так выглядит визуальный компонент CrystalReportViewer на форме


6. Записать в параметр ReportSource объекта CrystalReportViewer имя файла отчета.

CrystalReportViewer1.ReportSource = ”C:\Training\test.rpt”

На этом простейший пример использования закончен.

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

Загружаем шаблон
Dim Report as CrystalDecisions.CrystalReports.Engine.reportDocument;
Report = new CrystalDecisions.CrystalReports.Engine.reportDocument();
Report.Load(Template);


Устанавливаем соединение с базой данных
Dim dataSourceConnections As CrystalDecisions.Shared.DataSourceConnections;
dataSourceConnections = Report.DataSourceConnections;
Dim connectInfo As CrystalDecisions.Shared.IConnectionInfo;
connectInfo = dataSourceConnections(0);
connectInfo.SetConnection("ip сервера", "MESDB", "username", "password");


Передаем параметры
Dim myParameterDiscreteValue As CrystalDecisions.Shared.ParameterDiscreteValue;
myParameterDiscreteValue = New CrystalDecisions.Shared.ParameterDiscreteValue;
myParameterDiscreteValue.Value = Value1;
Dim myParameterValues As CrystalDecisions.Shared.ParameterValues;
myParameterValues = New CrystalDecisions.Shared.ParameterValues;
myParameterValues.Add(myParameterDiscreteValue);
Dim myParameterField As CrystalDecisions.Shared.ParameterField;
myParameterField = New CrystalDecisions.Shared.ParameterField;
myParameterField.Name = Param1;
myParameterField.CurrentValues = myParameterValues;
Dim myParameterFields As CrystalDecisions.Shared.ParameterFields;
myParameterFields = New CrystalDecisions.Shared.ParameterFields;
myParameterFields.Add(myParameterField);
CrystalReportViewer1.ParameterFieldInfo = myParameterFields;


Выводим отчет на viewer
CrystalReportViewer1.ReportSource=Report;


Лицензирование Crystal Reports

Использование Crystal Reports делится на два основных сценария:

  1. Вызов превью и печать из разрабатывемого ПО. Для этого сценария как раз и используется «Developer version for Microsoft Visual Studio». Эта версия бесплатна. Есть еще вариант для Eclipse, но он выходит за рамки этой статьи.
  2. Создание и редактирование отчета. Тут есть два варианта: это «SAP Crystal Reports 2016» за 495.00 USD / user или та же бесплатная «Developer version for Microsoft Visual Studio.

    Редактирование в этом случае осуществляется с помощью Microsoft Visual Studio.



Заключение

Таким образом можно легко получить мощный бесплатный инструмент для создания печатных форм в графических символах Archestra.
Метки:
crystal reports, wonderware, archestra,intouch