19
Views
2
Comments
Doubts while extracting Core module from End user module
Question

Hi,

 I am new in outsystems. I have very basic questions in my mind. Please help me to understand.

We have an application in outsystems. End user modules (say X) has everything i.e. interfaces, server actions. entities and Site properties. I am  asked by my seniors to extract the Core module from this End user module. I am using the refactoring to extract.

The doubts are:

1.) Should I extract all the server actions from Module X to new Core Module Y?

2.) There are entities in Module X which are being used in Client actions as well as server actions. If i shift server actions to Core module, then where the entities should live (they are being used in client as well as server action)

3.) There are structures in Module X which are being used in Client actions as well as server actions. If i shift server actions to Core module, then where the entities should live (they are being used in client as well as server action)

4) Where should i keep Site properties? Site properties are being updated in client as well as server actions.

Regards

Shilpa Bhatia

Associate Reactive Developer Certified

Hi Shilpa,

1) Should I shift all the server actions from X to new Core module ? If No, then what should i shift in Core module ?

If you already have one or more _CS modules for your core entities, than ensure you have set them as read only public, and move all logic to add/create/update or delete to these entities to the _CS module, while ensuring to set the Is Public property to true. In the original module set the references to _CS module actions.

If you have business logic that uses entities from multiple _CS modules move it to a _BL module that consumes the entities and core actions from the _CS modules.


2) There are entities in Module X which are being used in Client actions as well as server actions. If i shift server actions to Core module, then where the entities should live (they are being used in client as well as server action) 

you need to create you server action and entities in CS_module only as per architecture.


3.) There are structures in Module X which are being used in Client actions as well as server actions. If i shift server actions to Core module, then where the entities should live (they are being used in client as well as server action) 

You also need to create your structure in CS_module and used that in you end user module directly for both using dependency (client as well as server action)


4) Where should i keep Site properties? Site properties are being updated in client as well as server actions.

As per the architecture you only need to create site property in CS_Modules but you will create that in Main module also if you are create your site property in the Cs_Module you will get that through the data action only on the end user (it will used for both server as well as client)


Thanks and Regards,

Akshay Deshpande

mvp_badge
MVP

Hello Shilpa,

Please don't post the same questions in multiple forum posts, you asked these questions already in 

https://www.outsystems.com/forums/discussion/71861/confusion-while-extracting-core-module-from-end-user-module/

You got your answers there, if you think the answers don't help you, keep the discussion on the same thread.

Now you created another thread, where people just copy/paste some answers, I for example already gave.

Please keep the discussion on the original thread, for that I will close this discussion.

Regards,

Daniel

Community GuidelinesBe kind and respectful, give credit to the original source of content, and search for duplicates before posting.