looksoftware 新機能「openDSPF」 ベータ版リリース

looksoftware 新機能「openDSPF」 ベータ版リリース

looksoftware 新機能「openDSPF」 ベータ版リリース

looksoftwareは既存の5250画面のGUI化・ウェブ化をメインにご支援するソリューションですが、
この度、新機能「openDSPF」でRPGの新規開発にも効果的なご支援が出来るようになりました!

5250画面制約を取り払い、画面サイズの上限を意識しないでRPG開発が行えます。
フィールドの数や長さが24x80のサイズを超える心配は不要です。
openDSPFはRPG Open AccessでI/Oを直接制御出来るため、ひとつの画面上にたくさん入出力フィールドを作成できるようになりました。
さらにはサブファイルも縦横無尽にスクロール可能なインターフェース作りが可能です

デザインツールでゼロから画面を作成し、RPG・DSPFソースを自動生成します。
そのRPGソースを基に、従来のRPG開発が行えます。

GUIの各種コントロールをRPG側から制御することも可能です。

openDSPFを使用するメリット

  • 24x80など5250の制約を超えた画面デザイン
  • デザインツールでゼロから画面を作成
  • IBM iネイティブの対話型RPGソースを自動生成
  • 縦横に連続スクロールするサブファイル
  • RPGからGUIコントロールを自由に制御

[図解]デザインした画面がRPGソースになるまでのステップ

openDSPF機能を使用して開発した画面例

①    専用のデザインツール上で画面を新規作成します。

②    ツールを使用して画面をデザインしました。

③    デザインした画面をRPG・DSPFとして出力します。
ここでは出力したいIBM iのライブラリ名・ファイル名・メンバ名・レコード様式名を指定して
ソースコードを出力する様子です。

④    出力されたRPGソースコードはSEUなどの従来の開発ツールで編集し、コンパイルを行います。 

⑤    開発が完了しiPadのsafariブラウザで結果を表示させた様子です。

画面上に入出力フィールドを作成する

①    フィールド一覧から表示したいフィールドを画面にドラッグ&ドロップして表示します。

②    デザインした画面をジェネレートする機能で、RPG・DDSソースを自動出力。
単体テストが開始出来るようになります。

③    ここで、openDSPFが自動出力したソースコードの一部を抜粋します。
openDSPFがネイティブの対話型RPGでありながら24x80の制約に縛られないデザインが出来るようになったのには、DSPFソースコードに秘密があります。

・openlookが出力したDSPFソースコード

GUIのデザインツールで設置されたフィールドは、Hフィールドで定義されているのが分かります。
従来であればHフィールドで定義されたフィールドは、エンドユーザーが入力するどころか見ることもできません。
openDSPF機能を使用すれば、入出力をHフィールドで定義されたフィールドで介することができるので24x80の制約に縛られることがありません)

A          R FMT01
A                                      TEXT('OA-ONLY')
A                                      CF03(03)
A                                      CF07(07)
A                                      CF08(08)
A            MOVCOMP   R        H      REFFLD(MOVIER/MOVCOMP LKJPN/MOVIEJP-
A                                      N)
A            ISZAIKO       20A  H                                          


・従来のDDSコーディング

(参考例として。これはlooksoftwareの機能とは無関係なソースコードです。上記のようなDSPFソースコードは
本来ならばエミュレータ上で動作するには、BまたはOフィールドで定義され、座標も24x80を指定する必要がありました。
openDSPFは、この制限をHフィールドを使用することにより取っ払っています)

A          R FMT01
A                                      CF03(03)
A                                      CF07(07)
A                                      CF08(08)
A            MOVCOMP   R        B  5 20REFFLD(MOVIER/MOVCOMP LKJPN/MOVIEJP-
A                                      N)
A            ISZAIKO       20A  B  8 20


④    自動出力されたRPGDDSソースを目的に応じて変更しコンパイルします。
このときのプログラミングは従来のSEUやRational RPG Developerツールを使用します。
ソース修正後はIBMの従来通りのコマンドでコンパイルします。

⑤    デザインした結果をブラウザ上で表示しています。
RPGで作成・変更したロジックは デザインした画面へ渡されます。 

スクロールが出来るサブファイルを作成する

①    画面にデータグリッド(表形式インターフェース)を作成します。

②    サブファイルに出力したいフィールドをファイルのフィールド一覧から選択し、ドラッグ&ドロップで配置して見出しを作成します。

③    ジェネレートし単体テストが完了しましたら、目的に応じてRPGプログラムを変更しコンパイルします。

④    サブファイルはスクロール可能なインターフェースに早変わり。出力するサブファイルの内容は勿論RPGで制御可能です。

RPGコーディングでGUIコントロールを自由に制御する

画面上の各種コントロールのGUIインターフェースをRPG側から制御することが出来ます。
ここでは、表示する画像やコンボボックスに出力する内容をRPG側で変更する例をご紹介しています。

①    画像コントロールを画面上に作成し、コントロール名を「MYPIC」としました。
このコントロール「MYPIC」のプロパティ「Picture」に画像ファイルのパスを指定することによって、任意の画像を表示する仕組みです。

②    また、コンボボックスのコントロールも同様です。
コンボ「RELCTR」のプロパティ「List」にコンボボックスで表示させたい内容を指定することが出来ます。

③    上記の①と②をRPG側から制御可能に出来るようにするため、RPGを自動生成する前に「マッピング」します。
DDS上に変数を定義し、「(コントロール名).(プロパティ名)」のルールで、マッピング先を指定します。

  • 画像コントロールではDSPFに「PMYPIC」変数を定義し、GUIの「MYPIC.Picture」を制御。
  • コンボボックスではDSPFに「LRELCTR」変数を定義し、GUIの「RELCTR.List」を制御。

④    上記の③の設定を行った後で出力されたDSPFソースを抜粋します。
マッピングされた変数が定義され、DDSキーワードのTextでマッピング先を指定している様子です。


A            LRELCTR     1000O  H                               
A                                      TEXT('MAP-O:RELCTR.LIST')
A            PMYPIC       100A  H                                 
A                                      TEXT('MAP-O:MYPIC.PICTURE')


⑤    マッピングに定義された変数に対してRPGで値を指定することによって
GUIに結果を埋めこんでウェブブラウザに返します。

・画像ファイル名を指定しているRPGコーディング例


if 0 < %len(%trim(MOVIMG));
   PMYPIC=‘http://192.168.1.1/img/’+MOVIMG;
endif;

・コンボボックスのリスト一覧を作成しているRPGコーディング例


LRELCTR ='';
READ MRELCL;
DOW NOT %EOF;
  LRELCTR=%TRIM(LRELCTR) + MMRELCT  +';';
  READ MRELCR;
ENDDO;

[結果画面]

システム要件

  • IBM i V6R1 以降
  • Rational Open Access: RPG Edition(5733-OAR) ※ IBM iに標準で付属されているライセンスです

ライセンス (looksoftware製品)

■HTML版
 newlook enterprise , openlook , lookserver(Windows Serverが必要) , lookserver同時接続ユーザー数

■クライアントサーバ版 (Windowsクライアント)
 newlook enterprise , openlook , smartclient(クライアントPC同時接続ユーザー数)

※openDSPFは、looksoftwareのRPG Open Access対応モジュール「openlook」の追加機能です。
(「openlook」のライセンスがあれば追加料金なしでご利用いただけます。)

お問い合わせ