# Before and after values for rbe node

**URL:** https://discourse.nodered.org/t/before-and-after-values-for-rbe-node/1923
**Category:** Feature Requests
**Created:** [31 July 2018 09:43 UTC](https://discourse.nodered.org/t/before-and-after-values-for-rbe-node/1923 "2018-07-31T09:43:15Z")
**Posts on this page:** 3
**Page:** 1

<div class="post-metadata">

### Author: ![chainhead](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/chainhead/32/40800_2.png) [@chainhead](https://discourse.nodered.org/u/chainhead)
#### Post date: [31 July 2018 09:43 UTC](https://discourse.nodered.org/t/before-and-after-values-for-rbe-node/1923/1 "2018-07-31T09:43:16Z")

</div>

For the [Report by Exception](https://github.com/chainhead/node-red-nodes/tree/master/function/rbe) node, I get the message that caused a change. However, I would like to know the previous message also so that I can handle the 'nature' of the change.

Currently, before every `node.send(msg)` the `node.previous[t]` is over-written by the current message. Perhaps, that value can be part of the `msg` so that, whenever there is a change, both before and after values are carried forward.

Any thoughts on how to obtain the before and after values?

---

<div class="post-metadata">

### Author: ![dceejay](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/dceejay/32/38_2.png) [@dceejay](https://discourse.nodered.org/u/dceejay)
#### Post date: [31 July 2018 10:01 UTC](https://discourse.nodered.org/t/before-and-after-values-for-rbe-node/1923/2 "2018-07-31T10:01:57Z")

</div>

You could store the previous value you were sent ?

---

<div class="post-metadata">

### Author: ![chainhead](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/chainhead/32/40800_2.png) [@chainhead](https://discourse.nodered.org/u/chainhead)
#### Post date: [31 July 2018 10:06 UTC](https://discourse.nodered.org/t/before-and-after-values-for-rbe-node/1923/3 "2018-07-31T10:06:14Z")

</div>

Yes, I am using context in a function as shown below. Wish this was automatic ... 😉

> [{"id":"a2c8992b.21d768","type":"tab","label":"Demo","disabled":false,"info":""},{"id":"7404d9e4.091858","type":"inject","z":"a2c8992b.21d768","name":"t1a","topic":"t1","payload":"{"a":1}","payloadType":"json","repeat":"","crontab":"","once":false,"onceDelay":0.1,"x":110,"y":260,"wires":[["1d5feafc.29a7bd"]]},{"id":"6c87246e.68217c","type":"inject","z":"a2c8992b.21d768","name":"t1b","topic":"t1","payload":"{"a":2}","payloadType":"json","repeat":"","crontab":"","once":false,"onceDelay":0.1,"x":110,"y":340,"wires":[["1d5feafc.29a7bd"]]},{"id":"1d5feafc.29a7bd","type":"rbe","z":"a2c8992b.21d768","name":"","func":"rbe","gap":"","start":"","inout":"out","property":"payload","x":280,"y":300,"wires":[["e2497972.200528","16c74adb.ea230d"]]},{"id":"e2497972.200528","type":"debug","z":"a2c8992b.21d768","name":"rbe","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload","x":450,"y":240,"wires":},{"id":"16c74adb.ea230d","type":"function","z":"a2c8992b.21d768","name":"Ctx","func":"var rbe = {};\n\nif (context.get('rbe') === undefined) {\n context.set('rbe', msg.payload)\n rbe = msg.payload\n} else {\n rbe = context.get('rbe');\n}\nmsg.payload = rbe;\nreturn msg;","outputs":1,"noerr":0,"x":450,"y":300,"wires":[["c74e698e.3ecb48"]]},{"id":"c74e698e.3ecb48","type":"debug","z":"a2c8992b.21d768","name":"ctx","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload","x":610,"y":300,"wires":}]
