4
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【VS Code】RPGⅣからFFRPGにConvertしてみた!

Last updated at Posted at 2024-10-10

はじめに

そもそもCovertってなにから始まる人もいるかと思います。
Convertとは「コンピュータのデータやプログラムを他のデータ形式に変換すること」の意味を持ちます。

今回は、VSCodeを利用して、RPGⅣからFreeFormRPGの言語仕様に変換してみます!

使用ツール / 拡張機能

・無償版IBM環境のPUB400を利用
Visual studio code
・Code For IBMi (インストールの手順記載あり)
・RPGLE Free (インストールの手順記載あり)

今回、使用するツール「Code For IBMi」「RPGLE Free」は、
"IBM i Development Pack"に含まれているので、こちらをインストールしても問題ありません。

image.png

事前セットアップ

VS Codeの導入

こちらのサイトを参考にしてください!

VS CodeへCode for IBMiをインストール

マーケットプレイスで"Code for IBM i"を検索。[インストール]をクリックして拡張機能をインストールします。

スクリーンショット 2024-10-01 19.56.35.png

VS CodeへRPGLE FREEをインストール

マーケットプレイスで"RPGLE FREE"を検索
[インストール]をクリックして拡張機能をインストールします

スクリーンショット 2024-10-01 19.59.31.png

VS CodeでConvertを実践

手順1) IBM iの接続設定を行います
アクティビティバーの赤枠「IBM i」をクリック
スクリーンショット 2024-10-01 20.05.14.png

手順2) SERVERSにある「Connect to an IBM i」をクリック
スクリーンショット 2024-10-01 20.12.35.png

手順3) IBM i Loginに下記を設定して「Save & Exit」をクリック
スクリーンショット 2024-10-01 20.19.51.png

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へ接続されます
スクリーンショット 2024-10-01 20.29.10.png

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]をクリック

ソースファイルのみを表示するフィルターを作成します

スクリーンショット 2024-10-01 20.38.29.png

Filter name:定義するフィルター名
Library:ライブラリー名
Object:オブジェクト名
Object type filter:オブジェクトタイプ
(今回は*SRCPF)

手順7) 作成したフィルターをクリック
フィルターの条件に合致したメンバが一覧で表示されます
スクリーンショット 2024-10-01 20.52.34.png

手順8) Convertしたいソースファイルをクリック
スクリーンショット 2024-10-01 21.47.11.png

手順9)エディタ画面にて、[Ctrl]+[a]で全選択
スクリーンショット 2024-10-01 21.47.50.png

手順10) 全選択した状態で、右クリック
コンテキストメニューの「Convert to Free Format」をクリック

スクリーンショット 2024-10-01 21.48.14.png

手順12) Convertされたことを確認して、保存しましょう!
スクリーンショット 2024-10-01 21.51.32.png

Convertを実施してみましたが、
インデントが崩れてたりするので、整形が必要でした。
※このソースを参考にしてもコンパイルはできません。

まとめ

初めてFreeFormat変換をやってみましたが、
[Ctrl]+[A]の全行選択から右クリックでConvertが手軽にできるのは驚きでした。
是非、参考にConvertを試してみてください。

応用編:RDiでConvertをしてみた

RDi(Rational developer for i)は、IBMが提供する統合開発環境(IDE)で、
オープンソースの統合開発環境(IDE)のEclipseをIBMi開発者へ特化した形で作られた製品です。

応用編として、RDiで、Convertが標準機能としてあるので試してみました!
今回、RDi V9.6を利用しました。

  1. ソースファイルをエディタ画面で開いて[Ctrl]+[A]で全行選択
    image.png

  2. 右クリックして[選択をフリー・フォームに変換(H)]をクリック
    image.png

  3. FFRPGに変換されていることを確認して、保存しましょう
    image.png

VS CodeでConvertしたソースをRDiでも試し見たところを、演算仕様書以外は変換されませんでした...

image.png

ARCAD RPG Converter for IBM iという製品もConvertツールがあるそうですが、有償なので利用できる機会があれば試してみます。

参考サイト

4
2
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?