Search display template for content search web part for task aggregation

In a site collection, I have about 4 task list setup each on separate subsites. So on the root level, I am using a content search web part and through query, I am showing tasks from all of these 4 task lists to show aggregated tasks in the web part. Here is the query i am using: path:”https://.sharepoint.com/sites/” ContentTypeId:0x0108* -RefinableString01:Completed

RefineableString01 is a mapped managed property and its helping me showing non- completed (task status other than completed)tasks. Now the challenge I have is to show this web part as close as possible to an actual task list view which has Task name, due date, status, description as task headers/columns in CSWP and I believe it requires setting up a custom display template which I have not worked on at all.

Can someone help me setting up tabular view of tasks aggregation using custom template. FYI, I have already setup managed properties (mapping respective crawled properties to respective managed property called Refineablstring etc) for description, task status and due date.

Additionally, I would also like to show custom choice column called Investor (site column) in the CSWP along with other basic columns, I am waiting for it to get crawled, once crawled, I will setup a managed property for the same.

Can someone please help me with the cswp display template that I can use, thanks in advance.

Aggregation of data from two Microservices

I have two Microservices A and B.

  • B Microservice has a large set of an entity called User.
  • A Microservice stores the User entity in its own DB if User is configured by an agent. There is no flag available in Microservice B‘s DB to find if the User is configured.

I want to find all the list of all unconfigured user by page (Set(B)-Set(A)).

How should I go about querying if User data is too large in B Microservice?

What is the use of Association, Aggregation and Composition?

I have gone through lots of theories about what is encapsulation and the three techniques of implementing it, which are Association, Aggregation and Composition.

What I found is:

Encapsulation

Encapsulation is the technique of making the fields in a class private and providing access to the fields via public methods. If a field is declared private, it cannot be accessed by anyone outside the class, thereby hiding the fields within the class. For this reason, encapsulation is also referred to as data hiding.

Encapsulation can be described as a protective barrier that prevents the code and data being randomly accessed by other code defined outside the class. Access to the data and code is tightly controlled by an interface.

The main benefit of encapsulation is the ability to modify our implemented code without breaking the code of others who use our code. With this feature Encapsulation gives maintainability, flexibility and extensibility to our code.

Association

Association is a relationship where all object have their own lifecycle and there is no owner. Let’s take an example of Teacher and Student. Multiple students can associate with a single teacher and a single student can associate with multiple teachers, but there is no ownership between the objects and both have their own lifecycle. Both can create and delete independently.

Aggregation

Aggregation is a specialized form of Association where all objects have their own lifecycle, but there is ownership and a child object cannot belong to another parent object. Let’s take an example of a Department and teacher. A single teacher cannot belong to multiple departments, but if we delete the department the teacher object will not be destroyed. We can think of it as a “has-a” relationship.

Composition

Composition is again a specialized form of Aggregation and we can call this as a “death” relationship. It is a strong type of Aggregation. Child object does not have their lifecycle and if parent object deletes all child object will also be deleted. Let’s take again an example of relationship between House and rooms. House can contain multiple rooms but there is no independent life of a room and any room cannot belong to two different houses. If we delete the house, the room will automatically be deleted.

The question is:

Now these all are real world examples. I am looking for some description about how to use these techniques in actual class code. I mean what is the point for using three different techniques for encapsulation, How these techniques could be implemented and How to choose which technique is applicable at time.

Getting the output of a View aggregation into a field and compare it with another value

I have a parent entity that maintains a treshold (integer) which the children entities together cannot exceed.

I created a view on that, through aggregation, gives me the SUM of all childrens fields. So the output is a single integer value. Now I need to compare this value with the treshold value of the parent. How can I do this (probably in the process I need to store the views result into a field)?