Idiomatic way to extend tables

Hi @Ed_Liveikis ,
thanks for sharing this!

Your approach is definitely helpful.
It’s a topic I tried to discuss in the past (have a look at this, if you wish: [Open Discussion] An Object-Oriented approach for Tables: Extensions).

Unfortunately, this solution isn’t resolving the problem from the other way round: the polymorphic advantage of an extension.

Think about more structured hierarchies, for instance:

People < Candidates 
People < Employees < Interviewers
People < Contact < Client
People < Contact < Provider

With the composition approach you provided, there would be a multiple nested structure, i.e. every subsequent extension should flatten the set of attributes (columns).

A pure extension would just add the missing attributes.
That way you could define the datatype of the lookup by narrowing / expanding the proper table and implicitly would have the full set of (un-nested) attributes.

Interviews
- Candidate: Candidate
- Role: Employee
- Interviewers: Interviewer
- References: Contact
- ...

Allowing something like:

ListCombine(Interviewers, References, Candidate)
  .FormulaMap(CurrentValue.Name).BulletedList()

I hope this add some ideas to talk about.
Thank you!

1 Like