Series sorting in Appian

Hello All,

Do we have any OOTB function or plug-in function to achieve series sorting ?

Example :

Input

{1,
1.1,
1.1.1,
4,
1.2,
3,
2,
2.1,
2.2,
10,
13,
12}

Expected output :

{1,
1.1,
1.1.1,
1.2,
2,
2.1,
2.2,
3,
4,
10,
12,
13}

  Discussion posts and replies are publicly visible

Parents Reply
  • +1
    Certified Lead Developer
    in reply to Stewart Burchell

    a!localVariables(
      local!values: {"1",
        "1.1",
        "1.1.1",
        "4",
        "1.2",
        "3",
        "2",
        "2.1",
        "2.2",
        "10",
        "13",
        "12"
      },
      local!prepare: a!forEach(
        items: local!values,
        expression: a!map(
          first: text(split(fv!item, ".")[1], "0000"),
          second: text(index(split(fv!item, "."), 2, null), "0000"),
          third: text(index(split(fv!item, "."), 3, null), "0000"),
          index: fv!index
        )
      ),
      local!sorted: todatasubset(
        local!prepare,
        a!pagingInfo(
          startIndex: 1,
          batchSize: -1,
          sort: {
            a!sortInfo(field: "first", ascending: true),
            a!sortInfo(field: "second", ascending: true),
            a!sortInfo(field: "third", ascending: true),
          }
        )
      ),
      index(local!values, local!sorted.data.index)
    )

Children