Constants - non modifiable site properties (modifiable only at Development time)


It would be interesting if one could define Application Constants that would be impossible to be customized via ServiceCenter, something like a site property but a constant that could be defined under the context of a Screen, ServerAction or the very App itself. Only Developers, who have previous knowledge and access to the Code could actually modify them via ServiceStudio.


Created on 29 May 2019
Comments (5)

How would this be different from Static Entities?



It is not reasonable that a mere constant, if represented via Static entity, counts as an Application Object (AO); neither a constant requires any kind of SQL architectural data storage, ex: constants (like in any coding language) are not predictable to  be used on SQL joins, or being indexed. So, constants are much closer to actual Site properties than to Static Entities IMHO.

So... basically... this is about AOs? Or "I need this functionality"? Because I don't think this functionality is *that* needed by itself (because, even if it is "more functionality than we need", a Static Entity *does meet this need*), and it only makes sense (to me, at least) in the context of "I don't want to use AOs for this" (which I agree is a frustration).

In other words, I would much rather see "AOs shouldn't count Static Entities" than "implementing a new thing that is somewhere between a Site Property and a Static Entity".



You have basically hit the mark: it is ALL about AOs. 

What I mean by needing this extra functionality is, if we can remove the complexity of the Static Entity (as having all the properties being saved in an SQL Database)  we can come up with a new concept, or feature, that is not needed to count as an AO; but it is still fair that a Static Entity count as an AO. So, we may kind of need the concept of constants, not altering the way a static entity works, because as the conceptual meaning implies, it is a SQL table stored in the disk (which its records are read only, the only property that makes them closer to constants. 

The way it could be visualized is to have a Constant folder under the Data Tab. These constants would be load in Memory (RAM) in deploy time, not being stored as an SQL Table (unlike Static Entities). 

Changed the category to Backend