scan

The keyword scan controls the ordering of the Envision processes.

‘proc(expr1) scan expr2’, ordering of the process

The scan option can be applied to any Envision process (the most common ones being the aggregators) to control the ordering of the operations over the processed table. The auto keyword can be placed after scan to follow the original ordering of the table.

table T = with
  [| as N, as L |]
  [| 1,    "b"  |]
  [| 0,    "a"  |]
  [| 2,    "c"  |]

def process myConcat(t: text) with
  keep txt = ""
  txt = "\{txt}\{t}"
  return txt

T.Asc = myConcat(T.L) scan T.N
T.Desc = myConcat(T.L) scan -T.N // inverse ordering
T.Aut = myConcat(T.L) scan auto // default table order

show table "" with T.N, T.L, T.Asc, T.Desc
// N,L,Asc,Desc,Aut
// 0,a,a,cba,b
// 1,b,ab,cb,ba
// 2,c,abc,c,bac
User Contributed Notes
0 notes + add a note