We would need to know some more about what all of you want NOW() for. The only reason mentioned here is to display the current time to a user in the user interface. If that is all that is needed it would be better to have a specific UI widget for that. The dashboard only communicates with the data in the model when a user interacts with it, so if it were a cell in a grid showing the result of a NOW function then it would only update when the user interacted. I suspect that there are other reasons for having a NOW function, and knowing what they are will help in the design. One question that immediately springs to mind is at what granularity should a NOW function change the results it returns. Should it be seconds, minutes, hours? Another is timezone. All Anaplan models run on machines where the clock is set to UTC (Standard time in London). However some models are for users in a different timezone (e.g. Pacific) and some are for users spread across multiple timezones. What would people need? Any variation in this respect would have to be specified in parameters to the function. This is not like Excel where it is on a particular user's machine where the timezone is picked up from the user's operating system. The granularity is also significant when considering recalculation. When your dashboard reads from the Anaplan model, the server applies any cell updates and then recalculates those cells of the model that have changed as a result. For a model in which there is little data-entry this recalculation will be insignificant and performance will be good. If a NOW function was ticking over every second then the model would need to be updated on every interaction. The performance impact of this would need to be considered. We are currently working on the TODAY function which has a number of similar questions. However the granularity of change of TODAY is much less and so the performance impact will be minimal. Looking forward to your feedback.
... View more
So there is one main problem with a calculation function that produces different values every time that it is used. In order to calculate efficiently Anaplan will choose to re-calculate particular cells or not according to strategies that are not in control of the customer. This means that your values will change at times that you have no control over, including every time the model is loaded. What would seem to make a lot more sense would be an action, where the admin would choose a data-entry line-item and when (and only when) the action is run it would fill the line-item with random numbers (according to other parameters entered when the action is created and edited). What do people think? Would this serve the purpose as well as a function?
... View more