This is some code which does something like what you are doing..
[{"id":"20743040.34be58","type":"inject","z":"83bf3de4.b9429","g":"6869b2ab.7811d4","name":"Test","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"","payload":"foo","payloadType":"str","x":310,"y":4420,"wires":[["b2d3ecc.6c0101"]]},{"id":"b2d3ecc.6c0101","type":"change","z":"83bf3de4.b9429","g":"6869b2ab.7811d4","name":"","rules":[{"t":"set","p":"table","pt":"msg","to":"month_times","tot":"flow"},{"t":"set","p":"payload","pt":"msg","to":"","tot":"date"}],"action":"","property":"","from":"","to":"","reg":false,"x":580,"y":4380,"wires":[["c743e378.7603a8","1e9b6683.00f1b9"]]},{"id":"c743e378.7603a8","type":"moment","z":"83bf3de4.b9429","g":"6869b2ab.7811d4","name":"Month","topic":"","input":"payload","inputType":"msg","inTz":"Australia/Sydney","adjAmount":0,"adjType":"days","adjDir":"add","format":"MM","locale":"en_AU","output":"month","outputType":"msg","outTz":"Australia/Sydney","x":750,"y":4380,"wires":[["29bd6547.965a3a","8e98e4ce.ab2278"]]},{"id":"29bd6547.965a3a","type":"function","z":"83bf3de4.b9429","g":"6869b2ab.7811d4","name":"Look up","func":"var m = msg.month;\n\nm = parseInt(m);\n\nvar x = msg.table[m];\n\nmsg.payload = x;\n\nreturn msg;\n","outputs":1,"noerr":0,"initialize":"","finalize":"","x":890,"y":4380,"wires":[["c126c43.66ee238","f2efd6db.b17fe8"]]}]
And the context
(or flow) is set like this:
20,24,28,32,36,40,40,36,32,28,24,20
So as the month changes from 1 - 12 you get the respective value from the table.
Hope that helps.