Mirth Javascript IF编码问题

时间:2017-10-29 22:24:12

标签: javascript mirth

我对Mirth很新,并且在工作中学习。我基本上需要根据OBX3.2中的内容替换OBX3.1中的措辞以下是示例:

目前我的OBX看起来像这样:

OBX | 2 | ST | EPSTEIN-BARR ^ EBV VIRAL CAPSID AG(VCA)AB(IGM)

我需要的是在OBX3.2中出现EBV VIRAL CAPSID AG(VCA)AB(IGM)的任何时候将OBX3.1替换为EPSTEINBARRIGM我将在整个记录中有多个OBX段,并且这些段并不总是出现在同一个地方。

以下是我尝试的代码:

var obxSegments = seg['OBX'];
var obxNum=obxSegments.length();

i = 0;
for each (var obx in obxSegments){
if (seg['OBX'][i]['OBX.3']['OBX.3.2']=='EBV VIRAL CAPSID AG (VGA) AB (IGM)')
 {
seg['OBX'][i]['OBX.3.1']=='EPSTEINBARRIGM'
}
i++;
}

任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:0)

您的代码的主要问题是,当您使用单个==分配OBX.3.1的值时,您正在使用=。这是一个例子:

for each (obx in msg.OBX) {
    if (obx['OBX.3']['OBX.3.2'].toString() == 'EBV VIRAL CAPSID AG (VGA) AB (IGM)') {
        obx['OBX.3']['OBX.3.1'] = 'EPSTEINBARRIGM';
    }
}