javascript - 为什么我的 mirth 代码没有从每个 DG1 段中捕获代码?
问题描述
我已经编写了这段代码以从每个 DG1 段中捕获代码,但它捕获“未定义”并插入 DB
for each (seg in msg.children()){
if(seg.name().toString()=="DG1"){
var vSET_ID =msg['DG1']['DG1.1'].toString();
if(vSET_ID==1){
var vPriCode = msg['DG1']['DG1.3']['DG1.3.1'].toString(),50);
if(vSET_ID==2){
var vSecCode1 = msg['DG1']['DG1.3']['DG1.3.1'].toString(),50);
谢谢
解决方案
您的代码中有许多语法和逻辑错误。如果您打算在数据库编写器中使用它们,则必须将它们保存到 Map 变量(channelMap 或 connectorMap 在这里有意义。)如果您想从 DG1 段的第一次和第二次出现中捕获 DG1.3.1 ,您可能希望避免在转换器中使用 Javascript 步骤,并尝试用两个 Mapper 步骤替换您的代码,其中:
- 第一步
- 变量:= vPriCode
- 映射:= msg['DG1'][0]['DG1.3']['DG1.3.1'].toString()
- 第二步
- 变量:= vSecCode
- 映射:= msg['DG1'][1]['DG1.3']['DG1.3.1'].toString()
这些变量现在应该可以在数据库编写器的目标映射拖放部分中使用。这确实假设 SetID 按顺序出现。
(本来打算发截图的,但是我的名声不够高。)
推荐阅读
- python - 测量 Keras 层执行时间的正确方法
- angular - 在 Angular 的一个组件中使用多个共享服务订阅
- javascript - 在 angular 10 mat-table 中显示来自两个数据源的数据
- google-cloud-platform - 在 Google 云环境中设置多云
- python-3.x - Python:从字符串中获取字数频率?
- javascript - React componentDidMount 不会触发
- php - 为什么在尝试使用 laravel helper kebab case 时会出现此非对象错误?
- vue.js - 通过脚本注入时未执行 Vue 包
- c# - 在 C# 中从 mysql/sql 客户端切换到 ODBC 客户端时出现“System.AccessViolationException”
- reactjs - 逐一添加行,而不是在 ag-grid 中使用 rowData 列表