Parent and child items in same table


I have a single table of quotes - i want to define each quote as a “Parent” or “Child” so I can consolidate totals for a “Project”. A “Project” is simply a single quote - comprising of one Parent record and a number of linked Child records (or one Parent with no "Childrem).

I have 2 same table connection fields in the quotes table - 1 to record multiple child ce’s to a Parent (one to many) and 1 to list the Parent in each Child record (one to one).

I have the form editing a Parent to add the Child quotes. On submit of this form, I update two values in the now interconnected Child quotes - one is a simple flag describing it as a child quote, the second I wanted to update the “Parent” (one to one) connection on each child record to the current PArent record being edited.

I have tried every which way, but cannot get the Parent’s record to record in the children records as the parent?

Appreciate any help?

1 Like

Hi @Mark3 - It should be possible. How are the child quotes being added? From a dropdown or a table? If it’s one at a time, like from a table, you should be able to to have an action that does that (select > Add). It’s hard to see without seeing the actual form and schema.

There are a few other options. You could do it with Make. I use make to duplicate children and grandchildren records, and part of this is updating the children with what parent. Make is good, though does take a few seconds longer than native knack or scripting.

The other option is maybe to redefine Project Quote as needing one or more quotes. I do this with a similar issue with a customer that has “Items” to manufacture, some of which are just an “Item” with details and some of which have sub-items, collections of Items. It got really complicated, so I have redefined it, forcing 2 levels. Now we have “Items” and they all need at least one “component” with similar details.
In your example this would mean a “Project Quote” must have at least one quote. In my example, I also made it simple for the users at the Item level by having a “An item must have at least one component. Copy this Items details to the First component?” Button on the Item.

I hope these ideas are of some help.

Thank you Calvin - Really appreciate the feedback. I am going to spend some time thinking through what you have suggested and will ask more questions on the back of more info from me if i do not come right!


1 Like

It gets confusing. In Knack-speak a table is an object and a grid is a table. So using Knack-speak, if I understand it, you have a single object. You need to create an object connection to itself. I haven’t done this (yet) but I understand it’s possible. Now create two tables and link them the normal way. Your Table A has an Add form and Table B has an Add form. Create your parent quote in Table A and then your child quotes in Table B. Again, I haven’t done this (yet), but I understand it’s possible.

1 Like

I’ve confirmed that you can do this with a single table. Connect the Quotes object to itself and make the connection Many to many. You can then link as many records as you want to as many levels you want. Each level being a separate linked detail page containing a table and an Add form or button.

Here is a down and dirty example:
Single multi-level Quote Object

thanks Peter - will test out and revert with mys results - thank you for your diligence in replying and offering guidance!


The information contained in this communication from the sender is confidential. It is intended solely for use by the recipient and others authorized to receive it. If you are not the recipient, you are hereby notified that any disclosure, copying, distribution or taking action in relation of the contents of this information is strictly prohibited and may be unlawful.

This email has been scanned for viruses and malware, and may have been automatically archived by Mimecast Ltd, an innovator in Software as a Service (SaaS) for business. Providing a safer and more useful place for your human generated data. Specializing in; Security, archiving and compliance. To find out more Click Here.