Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

Learn from the best! Meet the four finalists headed to the FINALS of the Power BI Dataviz World Championships! Register now

Reply
steyngrobler
Regular Visitor

Create Rows Based on Missing Items from a Table

Hi there,

I have three tables extracted from a learning management system's database. It entails records of checklists that we would like to prepare a progress report on. The problem is that the database only contains items for which learners have recorded progress. I would like to create a complete table that will show what items learners have yet to complete.

The three tables are:

1. Checklists (An overview of all the checklists)

idcoursenameintroformattimecreatedtimemodifieduseritemsallowedteachereditthemeduedatesoncalendarteachercommentsmaxgradeautopopulateautoupdatecompletionpercentemailoncompletelockteachermarks
14420Logbook 3: Pumps11,57E+091,58E+0902default0110001000
15920Logbook 3: Valves11,57E+091,58E+0902default0110001000
16020Logbook 3: Drives11,57E+091,58E+0902default0110001000



2. Checklist Items (An overview of all the checklists' associated checklist items)

 

idchecklistuseriddisplaytextpositionindentitemoptionalduetimeeventidcolourmoduleidhiddengroupinglinkcourseidlinkurl
3220WM-01-WE01: Fabricate a variety of simple components using basic hand skills and tools10200black0002 
3320WA0101: Mark-off and fabricate a minimum of two flanges to given specifications20000black0002 


3. Checklist Checks (An overview of the items that users have ticked off)

 

iditemuseridusertimestampteachermarkteachertimestampteacherid
21335000 
223321,57E+0900 
2333561,55E+0911,54E+095
243456011,54E+095
253556011,54E+095


I have an overview of all user's user IDs. 

 

The problem is that the checks table only contains items that HAVE been checked off, not the ones that HAVE NOT. How would I go about generating additional rows for incomplete items? 

Please let me know if I can be more detailed. The tables are available for download here: https://we.tl/t-u5lpxFtj1r

I would really appreciate any assistance!

Regards,
Steyn Grobler

5 REPLIES 5
Anonymous
Not applicable

Couldn't you Take table1, which has the completed items, and do a merge, JoinKind.RightAnti, so that you then have all the rows in Table 1 that are NOT in Table3)?

v-juanli-msft
Community Support
Community Support

Hi @steyngrobler 

Based on my understanding, you have 912 ids in table "mdl_checklist_item", but only 381 items in table "mdl_checklist_check".

What you want is to have all 912 ids in mdl_checklist_check (corresponding to "item" in "mdl_checklist_item").

 

But i don't know what rows should be added.

I only can add additional ids under the original table.

 

for example, "mdl_checklist_check" has [id]: 1,2,3

id othercolumns

1  has value

2  has value

3  has value

 

"mdl_checklist_item" has [item] :1,2,3,4

item

1

2

3

4

then i can get a new table to replace  "mdl_checklist_check" like below:

id  othercolumns

1     has value

2     has value

3     has value

4     null

 

If it is ok, please check my pbix and ask me for details.

If not, please let me know what i need to explore more.

 

Best Regards

Maggie

Anonymous
Not applicable

Hi Maggie,


Thank you for your time and effort. It is really appreciated. I am sorry I am not clearer! I am sorry i did not respond sooner, but am having trouble with my forum account. I am now @Anonymous 

 

Yes, your understanding is correct. I want all itemIDs for all userIDs. This would be a much bigger table! Some of the item IDs won't apply to the users, but I can filter these out easily using the checklist ID.

This scenario would work for me:

 


1     has value

2     has value

3     has value

4     null

 


However, when I look at your table, there are no null values. Is my understanding correct? 

Thanks again for the effort!

Regards,

Steyn Grobler

v-juanli-msft
Community Support
Community Support

Hi @steyngrobler 

Sorry, i'm not clear about your bussiness rule.

Could you explain for your tables?

Which is the key column for every table?

How can we relate tables?

 

Best Regards

Maggie

Hi Maggie, 

Thank you for your response. I appreciate the opportunity to express myself clearer - I was not sure where to start!

The tables connect in the below way. Please let me know if I misunderstood your query.

 

  • Checklist[ID] = Checklist_Item[Checklist]
  • Checklist_Item[ID] = Checklist_Check[Item]


In this way, the hierarchy is as follows:

 

  1. Checklists - these are all your checklist activities in the LMS
  2. Checklist Items - these are the individual items of which checklists are comprised
  3. Checklist Checks - these are the individual checks that users have performed - it does not include what they HAVE not performed.

See screenshot below of how I've setup the relationships. The user table just provides names for each UserID.
Checklist Relationships.png

 

Helpful resources

Announcements
Join our Fabric User Panel

Join our Fabric User Panel

Share feedback directly with Fabric product managers, participate in targeted research studies and influence the Fabric roadmap.

February Power BI Update Carousel

Power BI Monthly Update - February 2026

Check out the February 2026 Power BI update to learn about new features.

FabCon Atlanta 2026 carousel

FabCon Atlanta 2026

Join us at FabCon Atlanta, March 16-20, for the ultimate Fabric, Power BI, AI and SQL community-led event. Save $200 with code FABCOMM.

Top Solution Authors