Upgrade to Pro — share decks privately, control downloads, hide ads and more …

ActiveReports移行セミナー 基本の「キ」から、帳票アプリケーションのモダン化の具体...

ActiveReports移行セミナー 基本の「キ」から、帳票アプリケーションのモダン化の具体例まで詳しく解説/activereports-migration-18

2024年8月に開催したメシウス主催のオンラインセミナー『ActiveReports移行セミナー 基本の「キ」から、帳票アプリケーションのモダン化の具体例まで詳しく解説』のセッション資料です。

More Decks by メシウス 開発支援ツール

Other Decks in Programming

Transcript

  1. © MESCIUS inc. 1 2 3 4 アジェンダ ActiveReports「18.0J」の基本情報と新機能 移行の基本

    アプリケーションのモダン化 WinFormsアプリ→ASP.NET Core Webアプリ ローコードツール「Power Apps」上での帳票アプリケーション 6
  2. © MESCIUS inc. 8 選ばれ続けて 26年 開発ライセンス 累計販売 100,000 本以上

    .NETアプリケーション開発の”帳票”をトータルで支援する コンポーネント
  3. © MESCIUS inc. 9 「18.0J」基本情報 発売日 2024年4月10日(水) ライセンス 体系、価格 ライセンス体系変更なし「https://developer.mescius.jp/activereports#license」

    価格改定(ActiveReports旧バージョンも含み、 2024年4月1日より製品全般の価格 を改定) ※新価格はこちら「https://developer.mescius.jp/activereports/pricelist」 保守 サービス サービスの内容も変更なし ※詳細は「https://developer.mescius.jp/support/maintenance-service」
  4. © MESCIUS inc. 「18.0J」基本情報 ー 必要システム Windowsフォーム/WPFアプリケーション ASP.NETアプリケーション 開発ツール Visual

    Studio 2017/2019/2022 ※ Express Editionでは使用できません 開発言語 Visual Basic/C# OS Windows 10/11/Server 2016/Server 2019/ Server 2022 フレームワーク .NET Framework 4.6.2/4.7/4.7.1/4.7.2/4.8/4.8.1 /.NET 6/7/8 OS Windows 10/11/Server 2016/Server 2019/ Server 2022 開発環境 運用環境 開発環境 運用環境 開発ツール Visual Studio 2017/2019/2022 ※ Express Editionでは使用できません 開発言語 Visual Basic/C# OS Windows 10/11/Server 2016/Server 2019/ Server 2022 フレームワーク .NET Framework 4.6.2/4.7/4.7.1/4.7.2/4.8/4.8.1 OS Windows 10/11/Server 2016/Server 2019/ Server 2022 Webサーバー Internet Information Services 10
  5. © MESCIUS inc. 「18.0J」基本情報 ー 必要システム ASP.NET Coreアプリケーション ASP.NET Core

    Blazorアプリケーション 開発環境 運用環境 開発環境 運用環境 開発ツール Visual Studio 2019/2022 開発言語 Visual Basic/C# OS Windows 10/11/Server 2016/Server 2019/ Server 2022 フレームワーク .NET 6/7/8 OS フレームワークが動作するOS (Windows 10/11/Server 2016/Server 2019/ Server 2022、Linux、macOS) .NET 6がサポートするOSを見る .NET 7がサポートするOSを見る .NET 8がサポートするOSを見る フレームワーク .NET 6/7/8 OS フレームワークが動作するOS (Windows 10/11/Server 2016/Server 2019/ Server 2022、Linux、macOS) .NET 6がサポートするOSを見る .NET 7がサポートするOSを見る .NET 8がサポートするOSを見る 開発ツール Visual Studio 2019/2022 開発言語 C# OS Windows 10/11/Server 2016/Server 2019/ Server 2022 11
  6. © MESCIUS inc. 12 「18.0J」基本情報 ー 必要システム WebViewerコントロール JSビューワ/Blazorビューワ Webデザイナ/Blazorデザイナ

    運用環境(クライアント) 〈Professional限定機能〉 ブラウザ Microsoft Edge、Chrome OS Windows 10/11/Server 2016/Server 2019/ Server 2022 運用環境(クライアント) 〈Professional限定機能〉 ブラウザ Microsoft Edge、Chrome、Firefox、Safari OS Windows 10/11/Server 2016/Server 2019/ Server 2022、Linux、macOS、iPadOS、iOS
  7. © MESCIUS inc. 13 「18.0J」の新機能 ⚫ .NET 8対応 ⚫ クラウド環境のサポート拡充

    ⚫ Webデザイナコンポーネントのアップデート ◼ レポートパーツ機能の追加 ◼ デザイナ機能をユーザーに合わせて制御可能に ◼ Webデザイナの外観が変更機能の追加 ◼ レイアウト作成に関する機能の拡充・視認性の向上 ⚫ セクションレポートマルチプラットフォーム対応強化 ※System.Drawing(GDI+)の対応 ⚫ Blazorデザイナの提供 ⚫ 新レポート形式「ダッシュボード」の追加 ⚫ レポートウィザード機能 ⚫ Windowsビューワをモダンデザインへ変更 ⚫ データソースにExcelファイルが利用可能に ⚫ データソースに階層型JSONデータが利用可能に ⚫ JSONデータ設定にWeb API等で必要な情報が設定可能に ⚫ PDFの印刷時に透かし表示が可能に ⚫ PDFフォームの入力順(タブ順)が設定可能に ⚫ 新たなチャート形式の追加(3種) ⚫ 日付・時刻型パラメータの書式設定が可能に ⚫ デザイナ・ビューワ(Win・IDE)の横スクロールを [Shiftキー]+[スクロールホイール]で操作可能に ⚫ 製品サンプルをGitHubに公開 詳細はこちら “https://developer.mescius.jp/activereports/release/18 ”
  8. © MESCIUS inc. 「18.0J」移行の必要性・メリット 必要性 メリット • フレームワーク • .NET

    Frameworkの最終メジャーバージョン 「4.8」がリリース • 新規開発は「.NET 8」以降推奨 • 既存システムのレガシー化 • 古いシステムをメンテできる人がいなくなる • セキュリティリスクの増大 • OSなどの環境面のサポート終了 • .NET 8が利用可能に • パフォーマンス面が大きく向上 • クラウド環境のサポート • 費用対効果の高いLinux環境も利用可能 • Webデザイナコンポーネント • Web上での帳票デザイン機能が進化 15
  9. © MESCIUS inc. アセンブリ・名前空間の変更 アセンブリの統合 CommonDbConnectionAdapterクラス DataProvidersFactoryクラス PdfExportOptions.PdfReExclusiveOptionsクラス GrapeCity.ActiveReports.Documentアセンブリ MESCIUS(GrapeCity).ActiveReportsアセンブリ

    16.0J 18.0J GrapeCity.ActiveReports.Core.DataProvidersアセンブリ └名前空間:GrapeCity.BI.Data.DataProviders MESCIUS(GrapeCity).ActiveReports.Core.Renderingアセンブリ └名前空間:GrapeCity.ActiveReports.Rendering.Data 16.0J 18.0J GrapeCity.ActiveReports.Core.Renderingアセンブリ └名前空間: GrapeCity.ActiveReports.Rendering.DataProcessing MESCIUS(GrapeCity).ActiveReportsアセンブリ └名前空間:GrapeCity.ActiveReports.ReportsCore.Data 16.0J 18.0J GrapeCity.ActiveReports.Webアセンブリ └名前空間:GrapeCity.ActiveReports.Web.ExportOptions 次のプロパティを削除(WatermarkAngle・WatermarkColor・WatermarkFontName・WatermarkFontSize・ WatermarkFontStyle・WatermarkTitle) アセンブリ・名前空間の変更なし 代替プロパティとしてWatermarkを追加 16.0J 18.0J 21
  10. © MESCIUS inc. System.Drawing.Common(GDI+)の対応 「libgdiplus(Windows GDI+ 互換パッケージ)」を OS(Linux・macOS)へインストールし利用可能 ~.NET6 「libgdiplus(Windows

    GDI+ 互換パッケージ)」の サポート終了 「System.Drawing.Common」の依存関係を削除 新たに作成した独自レンダリングエンジンの参照へ変更 .NET 7 ~ Linux、macOSの利用 .NET パッケージ「System.Drawing.Common」 テキストレンダリング、画像処理等を提供(Windows GDI+) セクションレポート 22
  11. © MESCIUS inc. 23 System.Drawing.Common (GDI+)の対応 -依存関係の削除 名前空間: クラス •

    Page 名前空間 GrapeCity.ActiveReports.Document.Section 名前空間 GrapeCity.ActiveReports.SectionReport クラス • Watermark 名前空間 GrapeCity.ActiveReports.SectionReport クラス • パブリックAPI • TextBox • Label • Barcode • CheckBox • RichTextBox • InputFieldText • ReportInfo • Shape 名前空間 GrapeCity.ActiveReports.Printing クラス • WatermarkOptions 名前空間: 名前空間 GrapeCity.ActiveReports.Chart クラス • BackdropItem • FontInfo • GraphXmlSerializationContext • SharpGraphCore 名前空間 GrapeCity.ActiveReports.Chart.Graphics クラス • Backdrop • TextStyle 名前空間 GrapeCity.ActiveReports.Export.Pdf.Section.Signing クラス • PdfStamp 名前空間 GrapeCity.SpreadBuilder クラス • Workbook • DDSheet 名前空間 GrapeCity.SpreadBuilder.Printing クラス • Page 以下のクラス等にて、依存関係の削除、代替レンダリングエンジンの参照へ変更を行いました。 また、印刷に関するAPIの大きな変更点として「GrapeCity.ActiveReports.Extensibility.Printing名前空間」を削除し、該当する機能を 「GrapeCity.ActiveReports.Printing」へ統合しました。詳細はhttps://docs.mescius.jp/help/activereports-18/#breaking-changes.htmlをご確認ください。
  12. © MESCIUS inc. 帳票アプリケーションの移行パス 移行対象となる代表的なアプリケーション Windows Forms WPF ASP.NET Web

    Forms ASP.NET MVC ASP.NET Core MVC ASP.NET Core Blazor 移行後の「18.0J」アプリケーション Windows Forms WPF ASP.NET Web Forms ASP.NET MVC ASP.NET Core MVC ASP.NET Core Blazor ファイルコンバータを 利用した移行が最適 25
  13. © MESCIUS inc. ファイルコンバータの利用 移行対象ファイル レポートファイル *.rdlx、*.rpx、*.vb、*.cs ビューワが配置された フォーム *.vb、*.cs、*.xaml

    WebViewerが配置された Webフォーム *.aspx、*.aspx.vb、*.aspx.cs プロジェクトファイル *.vbproj、*.csproj、Web.confg ライセンスファイル licenses.licx 26
  14. © MESCIUS inc. 27 移行情報 移行対象プロジェクト ActiveReports バージョン 「6.0J」 (2009年リリース)

    開発言語 「Visual Basic」 .NET Framework 4 レポート形式 セクションレポートコード形式 (*.vb) データソース SQL Server ※接続はSystem.Data.SqlClientを利用
  15. © MESCIUS inc. ActiveReports 「18.0J」 Windows Forms .NET 8 .NET

    Frameworkから.NET 8へ ActiveReports 「6.0J」 Windows Forms .NET Framework 4 ActiveReports 「18.0J」 Windows Forms .NET Framework 4.7.2 ファイルコンバータ .NET アップグレード アシスタント 31
  16. © MESCIUS inc. .NET アップグレードアシスタント 旧バージョンの「 .NET Framework」、「.NET/ .NET Core」か

    ら 最新の「.NET x」へアップグレードするための支援ツール • Visual Studio 拡張機能 • CLI(コマンドライン) .NET アップグレード アシスタントとは? 提供形態 サポート言語 • Windows Forms • WPF(Windows Presentation Foundation ) • ASP.NET • クラス ライブラリ • コンソール アプリ • Azure Functions • .NET ネイティブ UWP • Xamarin.Forms • .NET MAUI • C# • Visual Basic サポートプロジェクト 32
  17. © MESCIUS inc. .NET アップグレードアシスタント(.NET 8移行)の注意点 ⚫ .NET 8アプリでは“licences.licxファイル” が含まれると「“lc.exe”エラーが発生」

    ※ .NET 8アプリの場合、ビルド時にライセンスが組み込まれるため、ファイルは不要 (KB: https://support.mescius.jp/hc/ja/articles/9175014205711) ⚫ .NET 8にあげることで、利用できなくなるパッケージも存在、こうした場合は、手動で修正 が必要 ⚫ 脆弱性が含まれるパッケージにアップグレードされる場合があり、手動での更新が必要。 34
  18. © MESCIUS inc. 帳票アプリケーションの移行パス 移行対象となる代表的なアプリケーション Windows Forms WPF ASP.NET Web

    Forms ASP.NET MVC ASP.NET Core MVC ASP.NET Core Blazor 移行後の「18.0J」アプリケーション Windows Forms WPF ASP.NET Web Forms ASP.NET MVC ASP.NET Core MVC ASP.NET Core Blazor ファイルコンバータの 移行は部分的に利用可 能 36
  19. © MESCIUS inc. モダン化の移行例 移行対象となる代表的なアプリケーション Windows Forms WPF ASP.NET Web

    Forms ASP.NET MVC ASP.NET Core MVC ASP.NET Core Blazor 移行後の「18.0J」アプリケーション Windows Forms WPF ASP.NET Web Forms ASP.NET MVC ASP.NET Core MVC ASP.NET Core Blazor 37
  20. © MESCIUS inc. ここまで移行したアプリケーション ActiveReports 「6.0J」 Windows Forms .NET Framework

    4 ActiveReports 「18.0J」 Windows Forms .NET 8 ActiveReports 「18.0J」 Windows Forms .NET Framework 4.7.2 ファイルコンバータ .NET アップグレード アシスタント ActiveReports 「18.0J」 ASP.NET MVC Core .NET 8 レポートを移行(rptSeikyu.vb) ※コード形式の他、ファイル形式(rpx、rdlx)も移行可能 38
  21. © MESCIUS inc. 利用方法(ASP.NET Coreアプリ) ⚫ Startup.vbへCORS設定を追加 ※Power Appsが動作しているオリジンを追加 コード上ではワイルドカードで指定

    https www abc.com 5050 スキーム :// . : ホスト ドメイン ポート オリジン ⚫ アプリをインターネット上へ公開 49
  22. © MESCIUS inc. 利用方法(Power Apps) ⚫ JSビューワをPower Appsコードコンポーネン トとして作成し、Power Apps環境へアップ

    ⚫ Power Appsキャンバスアプリを作成し、 ビューワコンポーネントを配置 ⚫ 「Server_Url」プロパティへASP.NET Coreア プリのURL、「 Reports_ID 」プロパティに対 象のレポートを指定。 50
  23. © MESCIUS inc. 1 2 3 4 アジェンダ(再掲) ActiveReports「18.0J」の基本情報と新機能 移行の基本

    アプリケーションのモダン化 WinFormsアプリ→ASP.NET Core Webアプリ ローコードツール「Power Apps」上での帳票アプリケーション 52
  24. © MESCIUS inc. まとめ ⚫ 移行の基本は「ファイルコンバータ」 ※ただし、移行後エラーが発生した場合は手動の変更が必要。 ⚫ .NET Frameworkから.NET

    8への移行は「.NET アップグレードアシスタン ト」がおすすめ ※従来利用していた、パッケージが利用できない場合は手動の変更が必要。 ※変換後のパッケージに脆弱性がある場合も個別で更新が必要な場合あり ⚫ Windows FormsからASP.NET Coreのモダン化では、レポートの移行が可能 ⚫ 帳票アプリをASP.NET Core化することで、Power Apps上からも利用可能に 53
  25. © MESCIUS inc. 56 もっと詳しく! ウェブ経由のご相談を承っています 製品に関するご相談を オンライン形式で承っています。 • より詳しい製品のご紹介

    • 勉強会の開催 など、柔軟にご対応可能です。 お問い合わせはメシウス営業部まで。 お問い合わせ メシウス株式会社 Developer Solutions 事業部 営業部 050-5490-4661 [email protected]
  26. © MESCIUS inc. 59 Appendix ⚫ PowerAppsで利用可能なJSビューワコードコンポーネントの作成方法 ⚫ https://devlog.mescius.jp/activereports-usage-for-powerapps-1/ ⚫

    https://devlog.mescius.jp/activereports-usage-for-powerapps-2/ ⚫ デモ開発環境 ⚫ OS:Windows 11(23H2) ⚫ IDE:Visual Studio 2022 Version 17.9.5 ⚫ .NET 8 プロジェクトのコード形式のセクションレポートを Visual Studio上 でデザインする方法 ※ 18.0Jでは.NETプロジェクトのデザイナにおいて、コード形式のセクションレポートをデザインすることができません。 次期バージョン以降での対応に向け開発を進めておりますが、現時点では以下に記載の.NET Frameworkのデザイナを用いる方法でデザインする必要がございます。 ⚫ https://docs.mescius.jp/help/activereports-18/#designing-code-based-section-reports-in-net-core.html