Hi Everyone,I'm little bit confussed about business logics in OutSystems. Can any one explain me with some examples what is the actual mean of business logic and what type of actions comes under it. and also what are the different between the CS and BL. And it comes to use under naming convention how I define that where I use CS and BL. Can any one explain in brief and in easy terms.I preferred this post, but it is not that much helpful for me.
Thanks,
Rakhi
Hi,
Suppose u have a banking project.
# The business logic relates everything to the banking business and should be put in a module suffixed, with say it _BL, for example: logics about lending, payment, saving, etc.
# core (cs) is where u put the entities and their basic CRUD (Create, Retrieve, Update, Delete)
that's it!
Hi,You simply mean like if I'm creating basic CRUD operation then I will use suffix like CS for example CreateEmploye_CS, UpdateEmploye_CS.Apart from that if I'm adding another logics for saving employee details with some other logic's, or adding data into excel these will come into business logic and suffix will use BL and these actions are may be server actions only, Am I right? Correct where I'm wrong.
Thanks,Rakhi
No, just Customer_CS
and inside that module, you have entity Customer in the data tab set property public YES, read only YES:
and in the action tab, u create an action CreateUpdate_Customer - why? because it is best practise the entity is already Expose Read Only = Yes:
regards
So when we use BL and CS as suffix?
_BL stands for Business Logic
_CS stands for Core Services
Using naming conventions, makes it easier for other developers to understand your code organization. In time more developers, not familiar with code created by others need to make changes. Having a proper naming and coding convention, eases the process to understand the code created by someone else.
I'm getting your point now. Just clear me one thing only what is the actually we called core services and business logics. As per my understanding of your last comment if I created only one core module then all the action come under this module is core services and If I have multiple core modules and I'm using their actions in on module than that is comes under business logic. Am I right?
Apart form that, if I'm using only a single core module then their is no need to of Business module (business logics) right?
Hi Rakhi,
Adding to what was already shared before, a business logic module (_BL), becomes a necessity in your application as soon as you need to execute logic over multiple core service modules (_CS). If you would not have a _BL module with references to multiple _CS, you would get sid or cycle references between _CS modules, and that is a architecture violation.
Regards,
Daniel