HL7 移行ツール
HL7 移行ツールでは、その他の製品で開発されたルックアップ・テーブルと変換をインターシステムズのルックアップ・テーブルと DTL クラスに変換できます。元の変換が HL7 メッセージを取り込み、それを別の HL7 メッセージに変換するように設計されている場合にのみ、HL7 移行ツールが機能します。
現在、以下からの変換を移行できます。
どの場合でも、JRE をインストール済みであることを最初に確認します。
前提条件 : Java 環境の設定
HL7 移行ツールを設定または実行する前に、以下の手順に従う必要があります。
-
Java ランタイム環境 (JRE) の最新バージョンをインストールします。システムに複数バージョンの JRE をインストールしておき、最新バージョンへのパスを使用して、このガイドの手順を実行できます。
-
有効なバージョンが JAVA_HOME 環境変数に反映されていない場合は、必要に応じて以下の手順に従い、Java JRE のフル・パスを指定します。
Cloverleaf
移行ツールでは、Cloverleaf のテーブルと変換をインターシステムズのルックアップ・テーブルと DTL クラスに変換できます。Cloverleaf 変換が HL7 メッセージを取り込み、それを別の HL7 メッセージに変換するように設計されている場合にのみ、移行ツールは機能します。
移行ツールは、基本的な変換ロジックを DTL クラスに変更するために設計されており、Cloverleaf のカスタム・コード、ループ、およびルーティング・ルールを処理するためのものではありません。基本的な TCL コマンドは変換されますが、ループなどのほとんどのコマンドは、移行後に DTL クラスに追加する必要があります。自動的には移行されないコードは、DTL コードにコメントとして挿入されます。
移行ツールの設定
移行ツールを実行する前に、インターシステムズ製品で作業用のネームスペースを作成して、セットアップ・メソッドを実行する必要があります。
-
InterSystems ターミナルを開きます。
-
以下のコマンドを入力して HSLIB ネームスペースに変更し、移行用の新しいネームスペースを作成して、その新しいネームスペースに変更します。
Set $namespace = "HSLIB"
Do ##class(HS.Util.Installer.Foundation).Install("MyNamespace")
Set $namespace = "MyNamespace"
-
設定ツールを実行します。
Do ##class(EnsLib.InteropTools.HL7.Setup).Run()
-
設定ツールのプロンプトに回答します。
プロンプト |
入力内容 |
Please enter a valid type |
Cloverleaf |
クラス名 |
設定ツールで定義された設定を格納するために使用する新しいクラス名。これは、移行を実行するために使用されるクラスです。例えば、MyPkg.MyCloverleaf です。 |
Java クラスパス |
ANTLR Jar ファイルのパスとファイル参照。例えば、c:\Migration\antlr-4.7.2-complete.jar のようになります。 |
Java 実行可能ファイルのパス |
マシン上にある Java 実行可能ファイルのパスとファイル参照。例えば、c:\java\jdk-13.0.1\bin\java.exe のようになります。 |
Java (*.java) ファイルのパス |
*.java ファイルのパス。必ず末尾の \ を含めてください。例えば、c:\Migration\Cloverleaf\java\ のようになります。 |
または、以下のような方法でパラメータを設定ツールに渡すこともできます。
set status = ##class(EnsLib.InteropTools.HL7.Setup).Run("Cloverleaf","MyPkg.MyCloverleaf",
"c:\Migration\antlr-4.7.2-complete.jar",
"c:\java\jdk-13.0.1\bin\java.exe")
このコマンドが失敗した場合は、Do $SYSTEM.Status.DisplayError(status) と入力するとエラーを表示できます。
移行ツールの実行
Cloverleaf 変換ファイルはデータ・ルックアップ・テーブルを参照できるため、変換ファイルを変換する前に、すべての Cloverleaf ルックアップ・テーブルを変換する必要があります。
ルックアップ・テーブルの変換
Cloverleaf 環境によっては、変換前に、変換するルックアップ・テーブル (*.tbl) が複数存在する場合があります。各ルックアップ・テーブルは、インターシステムズ製品の永続化ルックアップ・テーブルに変換されます。1 つの *.tbl ファイル、または複数のファイルが含まれる 1 つのディレクトリに対して移行ツールを実行できます。Cloverleaf ルックアップ・テーブルを変換するには、以下の手順に従います。
-
InterSystems ターミナルで、移行用に作成したネームスペースに変更します。以下に例を示します。
Set $namespace="MyNamespace"
-
一度に複数の *.tbl ファイルを変換する場合は、ファイルを 1 つのディレクトリに配置して、以下を入力します。
set status = ##class(MyPkg.MyCloverleaf).TableImport("c:\migration\tables\","CL.Lookup.")
引数は以下のとおりです。
-
MyPkg.MyCloverleaf は、移行ツールの設定時に指定したクラスの名前です。
-
c:\migration\tables\ には、Cloverleaf ファイルが含まれます。必ず末尾の \ を付けてください。
-
CL.Lookup. は、ルックアップ・コードで作成されたインターシステムズのテーブルの接頭語です。例えば、Cloverleaf ファイルが codes.tbl である場合、インターシステムズのルックアップ・テーブルは CL.Lookup.codes になります。このパラメータには任意の有効なパッケージ名を指定できますが、必ず末尾のピリオド ( .) を付けてください。
変換が成功したかどうかを確認するには、write status と入力します。成功した場合は、1 が表示されます。
1 つの Cloverleaf ルックアップ・ファイルに対して移行ツールを実行するには、以下のように入力します。
set status = ##class(MyPkg.MyCloverleaf).TableImport("c:\migration\tables\input.tbl","CL.Lookup.")
eGate
移行ツールでは、eGate のテーブルと変換をインターシステムズのルックアップ・テーブルと DTL クラスに変換できます。eGate 変換が HL7 メッセージを取り込み、それを別の HL7 メッセージに変換するように設計されている場合にのみ、移行ツールは機能します。
移行ツールは、基本的な変換ロジックを DTL クラスに変更するために設計されており、カスタム・コード、ループ、およびルーティング・ルールを処理するためのものではありません。自動的には移行されないコードは、DTL コードにコメントとして挿入されます。
移行ツールの設定
移行ツールを実行する前に、インターシステムズ製品で作業用のネームスペースを作成して、セットアップ・メソッドを実行する必要があります。
-
InterSystems ターミナルを開きます。
-
以下のコマンドを入力して HSLIB ネームスペースに変更し、移行用の新しいネームスペースを作成して、その新しいネームスペースに変更します。
Set $namespace = "HSLIB"
Do ##class(HS.Util.Installer.Foundation).Install("MyNamespace")
Set $namespace = "MyNamespace"
-
設定ツールを実行します。
Do ##class(EnsLib.InteropTools.HL7.Setup).Run()
-
設定ツールのプロンプトに回答します。
プロンプト |
入力内容 |
Please enter a valid type |
eGate |
クラス名 |
設定ツールで定義された設定を格納するために使用する新しいクラス名。これは、移行を実行するために使用されるクラスです。例えば、MyPkg.MyEGate のようになります。 |
Java クラスパス |
ANTLR Jar ファイルのパスとファイル参照。例えば、c:\Migration\antlr-4.7.2-complete.jar のようになります。 |
Java 実行可能ファイルのパス |
マシン上にある Java 実行可能ファイルのパスとファイル参照。例えば、c:\java\jdk-13.0.1\bin\java.exe のようになります。 |
Java (*.java) ファイルのパス |
*.java ファイルのパス。必ず末尾の \ を含めてください。例えば、c:\Migration\eGate\java\ のようになります。 |
または、以下のような方法でパラメータを設定ツールに渡すこともできます。
set status = ##class(EnsLib.InteropTools.HL7.Setup).Run("eGate","MyPkg.MyEGate",
"c:\Migration\antlr-4.7.2-complete.jar",
"c:\java\jdk-13.0.1\bin\java.exe")
このコマンドが失敗した場合は、Do $SYSTEM.Status.DisplayError(status) と入力するとエラーを表示できます。
移行ツールの実行
eGate 変換ファイルはデータ・ルックアップ・テーブルを参照できるため、変換ファイルを変換する前に、すべての eGate ルックアップ・テーブルを変換する必要があります。
ルックアップ・テーブルの変換
eGate 環境によっては、変換前に、変換するルックアップ・テーブルが複数存在する場合があります。各ルックアップ・テーブルは、インターシステムズ製品の永続化ルックアップ・テーブルに変換されます。1 つのファイル、または複数のファイルが含まれる 1 つのディレクトリに対して移行ツールを実行できます。eGate ルックアップ・テーブルを変換するには、以下の手順に従います。
-
InterSystems ターミナルで、移行用に作成したネームスペースに変更します。以下に例を示します。
Set $namespace="MyNamespace"
-
一度に複数のファイルを変換する場合は、ファイルを 1 つのディレクトリに配置して、以下を入力します。
set status = ##class(MyPkg.MyEGate).TableImport("c:\migration\tables\","eGate.Lookup.","*.txt")
以下は値の説明です。
-
MyPkg.MyEGate は、移行ツールの設定時に指定したクラスの名前です。
-
c:\migration\tables\ には、eGate ルックアップ・テーブル・ファイルが含まれます。必ず末尾の \ を付けてください。
-
eGate.Lookup. は、ルックアップ・コードで作成されたインターシステムズのテーブルの接頭語です。例えば、eGate ファイルが codes.txt である場合、インターシステムズのルックアップ・テーブルは eGate.Lookup.codes になります。このパラメータには任意の有効なパッケージ名を指定できますが、必ず末尾のピリオド ( .) を付けてください。
-
*.txt は、eGate ルックアップ・テーブル・ファイルのファイル拡張子を指定します。
変換が成功したかどうかを確認するには、write status と入力します。成功した場合は、1 が表示されます。
1 つの eGate ルックアップ・ファイルに対して移行ツールを実行するには、以下のように入力します。
set status = ##class(MyPkg.MyEGate).TableImport("c:\migration\tables\input.txt","eGate.Lookup.")
DataGate
移行ツールでは、DataGate のテーブルと変換をインターシステムズのルックアップ・テーブルと DTL クラスに変換できます。DataGate 変換が HL7 メッセージを取り込み、それを別の HL7 メッセージに変換するように設計されている場合にのみ、移行ツールは機能します。
移行ツールは、基本的な変換ロジックを DTL クラスに変更するために設計されており、カスタム・コード、ループ、およびルーティング・ルールを処理するためのものではありません。自動的には移行されないコードは、DTL コードにコメントとして挿入されます。
移行ツールの設定
移行ツールを実行する前に、インターシステムズ製品で作業用のネームスペースを作成して、セットアップ・メソッドを実行する必要があります。
-
InterSystems ターミナルを開きます。
-
以下のコマンドを入力して HSLIB ネームスペースに変更し、移行用の新しいネームスペースを作成して、その新しいネームスペースに変更します。
Set $namespace = "HSLIB"
Do ##class(HS.Util.Installer.Foundation).Install("MyNamespace")
Set $namespace = "MyNamespace"
-
設定ツールを実行します。
Do ##class(EnsLib.InteropTools.HL7.Setup).Run()
-
設定ツールのプロンプトに回答します。
プロンプト |
入力内容 |
Please enter a valid type |
DataGate |
クラス名 |
設定ツールで定義された設定を格納するために使用する新しいクラス名。これは、移行を実行するために使用されるクラスです。例えば、MyPkg.MyDataGate のようになります。 |
Java クラスパス |
ANTLR Jar ファイルのパスとファイル参照。例えば、c:\Migration\antlr-4.7.2-complete.jar のようになります。 |
Java 実行可能ファイルのパス |
マシン上にある Java 実行可能ファイルのパスとファイル参照。例えば、c:\java\jdk-13.0.1\bin\java.exe のようになります。 |
Java (*.java) ファイルのパス |
*.java ファイルのパス。必ず末尾の \ を含めてください。例えば、c:\Migration\DataGate\java\ のようになります。 |
または、以下のような方法でパラメータを設定ツールに渡すこともできます。
set status = ##class(EnsLib.InteropTools.HL7.Setup).Run("DataGate","MyPkg.MyDataGate",
"c:\Migration\antlr-4.7.2-complete.jar",
"c:\java\jdk-13.0.1\bin\java.exe")
このコマンドが失敗した場合は、Do $SYSTEM.Status.DisplayError(status) と入力するとエラーを表示できます。
移行ツールの実行
DataGate 変換ファイルはデータ・ルックアップ・テーブルを参照できるため、変換ファイルを変換する前に、すべての DataGate ルックアップ・テーブルを変換する必要があります。
ルックアップ・テーブルの変換
DataGate 環境によっては、変換前に、変換するルックアップ・テーブルが複数存在する場合があります。各ルックアップ・テーブルは、インターシステムズ製品の永続化ルックアップ・テーブルに変換されます。1 つのファイル、または複数のファイルが含まれる 1 つのディレクトリに対して移行ツールを実行できます。DataGate ルックアップ・テーブルを変換するには、以下の手順に従います。
-
InterSystems ターミナルで、移行用に作成したネームスペースに変更します。以下に例を示します。
Set $namespace="MyNamespace"
-
一度に複数のファイルを変換する場合は、ファイルを 1 つのディレクトリに配置して、以下を入力します。
set status = ##class(MyPkg.MyDataGate).TableImport("c:\migration\tables\","DataGate.Lookup.","*.txt")
以下は値の説明です。
-
MyPkg.MyDataGate は、移行ツールの設定時に指定したクラスの名前です。
-
c:\migration\tables\ には、DataGate ルックアップ・テーブル・ファイルが含まれます。必ず末尾の \ を付けてください。
-
DataGate.Lookup. は、ルックアップ・コードで作成されたインターシステムズのテーブルの接頭語です。例えば、DataGate ファイルが codes.txt である場合、インターシステムズのルックアップ・テーブルは DataGate.Lookup.codes になります。このパラメータには任意の有効なパッケージ名を指定できますが、必ず末尾のピリオド ( .) を付けてください。
-
*.txt は、DataGate ルックアップ・テーブル・ファイルのファイル拡張子を指定します。
変換が成功したかどうかを確認するには、write status と入力します。成功した場合は、1 が表示されます。
1 つの DataGate ルックアップ・ファイルに対して移行ツールを実行するには、以下のように入力します。
set status = ##class(MyPkg.MyDataGate).TableImport("c:\migration\tables\input.txt","DataGate.Lookup.")