路由器快照的snaplogic java脚本表达式

问题描述 投票:0回答:1

'我无法弄清楚snaplogic中router snap上的java脚本表达式,我想根据if条件将输入文档路由到两个不同的输出视图:

这是我的要求,我有一个字典列表,我想检查提交的名称是否包含前两个字典对象的 .csv 文件名,如果前两个对象之一包含 .csv 文件,则一切正常并路由它输出-1,

如果两个对象都不包含.csv,那么我需要将其发送到output-2 这是我正在尝试的表达式,但不起作用 ($.keys()[0] != 'Name') && ($.keys()[1] != 'Name')

数据如下:

注意:第一个字典不包含任何文件,因此名称归档将采用目录名称。'

[
  {
    "original": {
      "Name": "test/",
      "Type": "Directory",
      "Size (in bytes)": 0,
      "Path": "s3:///data/directory/test/",
      "Owner": "aws-data-root",
      "Update date": "2024-04-11T00:35:02.000Z",
      "Creation date": "unknown",
      "Permissions": "unknown",
      "original": {
        "Date": "2024/03/25",
        "ENVIRONMENT": "test",
        "DateToday": "2024/03/24",
        "flag": "1"
      }
    }
  },
  {
    "Name": "test.csv",
    "Type": "File",
    "Size (in bytes)": "492",
    "Path": "s3:///data/test/2024/03/25/test.csv",
    "Owner": "aws-devdata1-root",
    "Update date": "2024-03-25T00:18:25.000Z",
    "Creation date": "unknown",
    "Permissions": "unknown",
    "original": {
      "Name": "test/",
      "Type": "Directory",
      "Size (in bytes)": 0,
      "Path": "s3:///data/directory/test/",
      "Owner": "aws-data-root",
      "Update date": "2024-04-11T00:35:02.000Z",
      "Creation date": "unknown",
      "Permissions": "unknown",
      "original": {
        "Date": "2024/03/25",
        "ENVIRONMENT": "TEST",
        "DateToday": "2024/03/24",
        "flag": "1"
      }
    }
  }
]

'这是我尝试过的表达式,但它没有给出预期的结果

($.keys()[0] != '姓名') && ($.keys()[1] != '姓名') 这是我尝试过的,但没有运气'

javascript
1个回答
0
投票

尝试第一个路由器条件: jsonPath($, "[0].original.Name").indexOf('.csv') != -1 || jsonPath($, "[1].Name") != -1

路由器条件二: jsonPath($, "[0].original.Name").indexOf('.csv') == -1 && jsonPath($, "[1].Name") == -1

© www.soinside.com 2019 - 2024. All rights reserved.