はじめに
そもそもCovertってなにから始まる人もいるかと思います。
Convertとは「コンピュータのデータやプログラムを他のデータ形式に変換すること」の意味を持ちます。
今回は、VSCodeを利用して、RPGⅣからFreeFormRPGの言語仕様に変換してみます!
使用ツール / 拡張機能
・無償版IBM環境のPUB400を利用
・Visual studio code
・Code For IBMi (インストールの手順記載あり)
・RPGLE Free (インストールの手順記載あり)
今回、使用するツール「Code For IBMi」「RPGLE Free」は、
"IBM i Development Pack"に含まれているので、こちらをインストールしても問題ありません。
事前セットアップ
VS Codeの導入
こちらのサイトを参考にしてください!
VS CodeへCode for IBMiをインストール
マーケットプレイスで"Code for IBM i"を検索。[インストール]をクリックして拡張機能をインストールします。
VS CodeへRPGLE FREEをインストール
マーケットプレイスで"RPGLE FREE"を検索
[インストール]をクリックして拡張機能をインストールします
VS CodeでConvertを実践
手順1) IBM iの接続設定を行います
アクティビティバーの赤枠「IBM i」をクリック
手順2) SERVERSにある「Connect to an IBM i」をクリック
手順3) IBM i Loginに下記を設定して「Save & Exit」をクリック
Connection Name:接続名
Host or IP Address:接続先IBMiのIPアドレス又はドメイン名
Port(SSH):SSHのポート番号
Username:ユーザーID
Password:パスワード
SavePassword:チェックをつけると登録したユーザーID・パスワードで自動ログイン
PUB400.COMを利用する場合の接続設定
Connection Name:任意
Host or IP Address:PUB400.COM
Port(SSH):2222
Username:PUB400で登録したユーザーID
Password:PUB400で登録したパスワード
SavePassword:チェックをつけると登録したユーザーID・パスワードで自動ログイン
PUB400.COMを利用する場合は、Port(SSH)はWell-knownポートではなく、「2222」となるので注意
手順4) 「Save & Exit」した設定をクリックすると、VS CodeでIBMiへ接続されます
IBMiへ接続できない場合、
IBM iでSSHDが開始されていないので、IBM iのコマンドでSSHDを起動してください
STRTCPSVR SERVER(*SSHD)
手順5)接続が成功すると、サイドバーに下記バーが表示されます
・USER LIBRARY LIST
・OBJECT BROWSER
・IFS BROWSER
手順6) OBJECT BROWSERの「+Create New Filter」をクリック
下記を設定して[Save settings]をクリック
Filter name:定義するフィルター名
Library:ライブラリー名
Object:オブジェクト名
Object type filter:オブジェクトタイプ
(今回は*SRCPF)
手順7) 作成したフィルターをクリック
フィルターの条件に合致したメンバが一覧で表示されます
手順10) 全選択した状態で、右クリック
コンテキストメニューの「Convert to Free Format」をクリック
手順12) Convertされたことを確認して、保存しましょう!
Convertを実施してみましたが、
インデントが崩れてたりするので、整形が必要でした。
※このソースを参考にしてもコンパイルはできません。
まとめ
初めてFreeFormat変換をやってみましたが、
[Ctrl]+[A]の全行選択から右クリックでConvertが手軽にできるのは驚きでした。
是非、参考にConvertを試してみてください。
応用編:RDiでConvertをしてみた
RDi(Rational developer for i)は、IBMが提供する統合開発環境(IDE)で、
オープンソースの統合開発環境(IDE)のEclipseをIBMi開発者へ特化した形で作られた製品です。
応用編として、RDiで、Convertが標準機能としてあるので試してみました!
今回、RDi V9.6を利用しました。
VS CodeでConvertしたソースをRDiでも試し見たところを、演算仕様書以外は変換されませんでした...
ARCAD RPG Converter for IBM iという製品もConvertツールがあるそうですが、有償なので利用できる機会があれば試してみます。
参考サイト