PowerServer が生まれ変わります

PowerServer2021

こんにちは、サポート部の Yama-chan です。今までの PowerServer とまったく違う仕組みの新しい PowerServer 2021 (英語版) が近々リリースされる予定です。現在ベータ版が公開されており、実際にインストールして触ってみたのでサラッと紹介したいと思います。


はじめに

PowerServer の次期バージョンである PowerServer 2021 のベータ版が公開されており、海外では好評を得ているようです。今現在公開しているベータ版は英語版のみで、日本語版はもう少し先になりそうです。同時に PowerServer 2021 に対応した PowerBuilder 2021 もベータ版として一緒に公開されています。

新しい PowerServer 2021 は仕様が大きく変わりました。今の PowerServer はアプリケーション全体を JavaScript ベースの Web アプリに変換していますが、新しい PowerServer 2021 ではデータベースへのアクセスなどバックエンド部分の処理が自動的に .NET Core ベースのサーバーアプリに変換されます。フロント部分は PowerBuilder の UI がそのまま利用可能で、クラウドから配布可能なクラウドデスクトップアプリとなります。専用ランチャーから実行可能で、配布以降に更新があった場合でも、ランチャー経由で自動的にアプリケーションを最新の状態に更新できます。フロントの部分は PowerBuilder の UI をそのまま利用しているので、以前の PowerServer に比べて非サポート機能が “ほんの一握り” (only a handful) とのことで、非サポートの修正作業が大幅に削減されるようです。

それでは、アーキテクチャを紹介しつつ、配布するためのプロファイル設定なども紹介しながら、デモアプリの配布から実行されるまでを見ていきましょう。


構成はどうのようになっているのか?

まず、以下のシステム構成図をご覧ください。

構成画面

Appeon 社の HP で公開されているものですが、パッと見た感じいかがでしょうか?

Web サーバーがあって、データベースもあって、そしてデータベースにアクセスするための REST API も描かれています。いまどきの Web アプリ環境とほとんど同じではないでしょうか?

違いとしては Web サーバーに配布されているのが HTML でも、JavaScript でもないということです。PowerScript.exe とバイトコードです。英語で書かれていますが、Installable Cloud App というインストール可能なクラウドアプリです。これは冒頭でも紹介したクラウドデスクトップアプリです。PowerScript で開発された Windows ネイティブアプリですので、Web サーバーから配布可能になっています。PowerScript で記述されているので、非サポート項目が “ほんの一握り” になっているのも納得できます。この仕組みは以前に紹介した Web アプリのような PowerClient と同じです。そう考えると、PowerClient は新しい PowerServer のために用意された機能というのが伺えますね。おそるべし Appeon 社。先日リリースされた PowerBuilder 2019 R3 日本語版に追加された新しい機能も最新の技術に対応したことで、新しい PowerServer へ布石しているように思えます。


どのようにクラウドデスクトップアプリを構築し、配布するのか?

ローカル環境で実行するにも Web サーバーの準備が必要ですが、構築方法について今回は割愛させていただきます。知りたい方は Web アプリのような PowerClient で紹介しているので、ご参照ください。

メニューバー

新しい PowerServer 2021 では PowerBuilder に上記のようなパワーバーが追加されます。ベータ版では Debug ボタンがまだ利用できませんが、Build & Deploy ボタンで PowerServer プロジェクトを構築し、UI の部分を Web サーバーへ配布し、バックエンドの REST API は .NET Core サーバーへ配布されます。配布後、Run ボタンで実行することができます。

では、PowerServer プロジェクトの設定画面を見ながら、設定内容を確認しましょう。こうやって見ると現状は PowerClient のプロジェクトとよく似ていますね。今回ご紹介しているのはあくまでもベータ版であり、リリース時に変更される可能性もあるので、設定に必要な最低限の部分をメインに紹介します。

まず、General タブではアプリ名を定義します。これは Web ブラウザーを経由してアプリを配布するときの URL として利用しますので、ユニークで分かりやすい名前にした方が良いです。下記のデモアプリの設定では salesdemo_local にしています。

設定画面

次にアプリの実行に必要な Runtime タブを設定します。デモアプリでは以下のものを選択しています。

  • RESTClient Support
  • WebBrowser Support
  • RibbonBar Support
設定画面

以上の設定を行ってから、Build & Deploy ボタンをクリックすると、アプリが構築され、Web サーバーへ配布されます。

次の画面では、IDE からアプリを実行するための URL を Run Options タブに定義します。また、IDE から実行された時にブラウザーを起動するのか、それともランチャーを起動するかを指定しています。

設定画面

正常に配布が完了してから、Run ボタンをクリックし実行してみましょう。

初めて実行した場合は、以下の画面が表示され、ランチャーがまだインストールされていないので、Download the Launcher をクリックし、ランチャーをインストールしましょう。

ランチャー画面

ランチャーが正常にインストールされると、デスクトップにランチャーのショートカットが作成され、アプリも実行されます。

実行画面

見た目はいままでの PowerBuilder アプリケーションとまったく同じです。それもそのはずです。クラウドデスクトップアプリと名付けていますが、配布の仕組みが違うだけで中身は PowerScript でコーディングされているネイティブアプリです。

ランチャーがインストールされた後は、いつでもデスクトップ上に作成されたショートカットをクリックして、アプリを実行できます。アプリが更新されている場合は、ランチャーをクリックすると、最新版をダウンロードし実行されます。ユーザーが手動でアプリをインストールする必要がなく、いつでも最新のアプリが自動的に更新され、利用できるようになります。


まとめ

駆け足で新しい PowerServer 2021 を紹介してみましたが、みなさん、いかがでしたか?

初めて見た Web ブラウザー上で PowerBuilder のアプリがそのまま動作している前のバージョンほど、私は感激しませんでしたが、それはあまりにもスムーズに配布され、普通に動作しているからかもしれません。最大の強みはやはり非サポート機能が少なく、修正作業が大幅に削減されることではないでしょうか?まだベータ版では動作しない機能もありますが、製品版のリリースが楽しみです。

以上、Yama-chan でした。

テクニカルブログ 一覧を見る
PowerBuilder マイグレーション
PowerBuilder学習、動画で始めちゃう?