OLAP get latest

by lmaccherone

HTML

<script src="https://cdn.rawgit.com/lmaccherone/Lumenize/v1.0.3/deploy/lumenize-min.js"></script>

CoffeeScript

lumenize = require('./lumenize')
{OLAPCube, utils, table, csvStyleArray_To_ArrayOfMaps} = lumenize

facts = csvStyleArray_To_ArrayOfMaps([
  ['UserId', 'DateCreated'        , 'ValueToReturn'],
  [ 1      , '2015-12-10 22:44:03', 'Latest for 1'   ],
  [ 1      , '2015-12-10 13:35:12', ''             ],
  [ 1      , '2015-12-09 18:52:25', 'Earliest for 1'  ],
  [ 2      , '2015-12-10 20:53:13', 'Latest for 2'   ],
  [ 2      , '2015-12-10 08:12:41', 'Earliest for 2'  ]
])

keys = ["UserId", "DateCreated", 'ValueToReturn']
utils.log(table.toString(facts, keys))

dimensions = [{field: "UserId"}]
metrics = [
  {field: 'ValueToReturn', f: "firstValue", as: "First Value"},
  {field: 'ValueToReturn', f: "lastValue", as: "Last Value"},
]
config = {dimensions, metrics}
cube = new OLAPCube(config, facts)
keys = ["UserId", "First Value", "Last Value"]
utils.log(table.toString(cube.getCells(), keys))