2016-11-30 4 views
0

PID-2のソース変換で、外部IDを入力する必要があります。しかし、このIDは別のサーバー上にある別のSQL Serverデータベーステーブルにあります。このフィールドを取得して入力するためのコードはありますか?Mirth PID-2を接続する

私はこれを持っていたが、私は実行する必要があるより何かがある知っている:やろうとしています何

var strConn = "driver={sql server};server=servername;database=database;uid=us ername;password=password"; 
var strQuery = "SELECT INTERNALID FROM EXTID where msg['record_number'].toString() = INTERNALID"; 

var cnt = result.size(); //get the number of rows returned in the query 
for (i = 0; i < cnt; i++) 

{  //loop it up 
    result.next();  //go to the first row 

    var INTERNALID = result.getString(1); 
} 

すると、ホストサーバー上のrecord_numberがレコードに等しい先HL7ファイルにPID-2を追加しています外国のSQLサーバー上の番号。 私の結果はtmp ['PID'] ['PID.2'] ['PID.2.1']

に挿入する必要があります。コードはPID-3の "record_number"を見て、対応するIDを取得する必要があります(INTERNALID)をSQLサーバーに追加し、宛先ファイルのPID-2に追加します。

答えて

0

クエリを実行して結果を取得するには、DatabaseConnectionオブジェクトを作成する必要があります。あなたは、あなただけの最初の行を取得したいならば、あなたは、私は、次の

if (result.next()) { 
    var internalID = result.getString(1); 
} 

を行うことができ、そこからそう

var paramList = new java.util.ArrayList(); 
paramList.add(msg['PID']['PID.3']['PID.3.1'].toString()); 
var expression = "SELECT internal_id FROM your_table WHERE record_number = ?"; 
result = dbConn.executeCachedQuery('expression', paramList); 

のようなパラメータ化されたデータベースクエリを実行することができ

var dbConn = DatabaseConnectionFactory.createDatabaseConnection('driver', 'address', 'username', 'password'); 

あなたのカラム名などについて多くの仮定をしましたが、ワークフローは似ているはずです

関連する問題