A single view from multiple tables

I manage & coordinate construction tasks using Appsheet.

The parent record will be something like - “Tiling for Master Bedroom Level 2”.

I allow users to add child records to the parent task… namely -

  1. Notes (i.e. commments/ observations/ queries etc.)
  2. Links (URLs) - for e.g. product/ material websites, Pinterest boards etc., Google Drive folders
  3. Documents - PDFs, .dwg etc.
  4. Images - usually taken on mobile devices.

Each type of entry (above), writes into its own child table (each of which are “a part of” the parent table).

Is there a way to create a table comprising all the rows from the 4 different child tables (above)..

If not a table, perhaps a view? Is this possible at all in Appsheet?

A view, yes.

In the Parent table you should see several columns named “Related…” - one for each child table. It does depend on you defining the parent pointer column as REF in each of those child tables. All you then need to do is add the “Related…” columns to the Detail view of the Parent and they will show as Inline Tables (or whatever view you specified as the Inline view).

You could add these columns to a Table view (if that is really what you are asking) but it’s not very useful as you may have several child rows per parent row. Therefore, all AppSheet shows is some text related to the column and a Row Count - not very user friendly.

If you were wondering about something more specific…please elaborate.

I hope this helps!

hello! thank you for your feedback.. no, its not the solution I am looking for..

I understand inline views (and that if I use ref rows I can see a “preview” of each of the child tables)

sorry my query wasn’t clearer…

what I actually am looking for is to be able to automatically (bot?) create a combined table from 4 different child tables… so every time I add/ update rows in the child table, they automatically get appended to the combined table…

in this combined table, I also want to be able to sort the rows in descending order of last date & time of change…

effectively therefore… I see a “consolidated” list of notes/ links/ docs/ images… like a “diary of events”. if this is/ were possible, I’d have the best of both worlds.. i.e. notes, images etc.. all maintained as separate tables (or lists… so I could for e.g. generate a gallery view of the images only…), yet also see a diarised version of consolidated entries (children) related to the parent task.

Alternatively…

If I create one child table, where each record (row) has a column for each type (i.e. image, doc, file & note)…

can I create views of, for e.g. - only images? (yes, I think so.. if I slice for child rows having images [exclude those that don’t]… and make that a gallery view?)

for that parent only? for all parent tasks (consolidated)?

You can certainly do this. I 'm just not sure it will work well if you need to support unknown number of multiple images and/or multiple files per parent.

If you expect to have no more than one (maybe two) of each child item per parent, then I would advocate that they all be combined into a single child table row to begin with. There is no need for child tables.

Yes, Slices can filter rows as well as columns, so effectively you can generate Slices that could be treated as the segregated “child” tables.

Yes. There are a few ways to do this but the easiest is probably to use the LINKTOFILTERDVIEW() function to views based the Slices. The filters would extract from the Slice the rows pertaining to the Parent.

Good luck!

@LLD wrote:> > create a combined table from 4 different child tables… so every time I add/ update rows in the child table, they automatically get appended to the combined table…

You can certainly do this. I 'm just not sure it will work well if you need to support unknown number of multiple images and/or multiple files per parent.

If you expect to have no more than one (maybe two) of each child item per parent, then I would advocate that they all be combined into a single child table row to begin with. There is no need for child tables.

Yes, I am now working with one child table with each row having columns for all 4 inputs (image, note, doc, URL)… cannot restrict the number of child rows.. some tasks might have 10s of rows.

@LLD wrote:> > If I create one child table, where each record (row) has a column for each type (i.e. image, doc, file & note)…> > can I create views of, for e.g. - only images?

Yes, Slices can filter rows as well as columns, so effectively you can generate Slices that could be treated as the segregated “child” tables.

Yep, that’s what I thought.. thanks for confirming. will try it out and get back to you.

@LLD wrote:> > for that parent only? for all parent tasks (consolidated)?

Yes. There are a few ways to do this but the easiest is probably to use the LINKTOFILTERDVIEW() function to views based the Slices. The filters would extract from the Slice the rows pertaining to the Parent.

Great! :grinning_face: more toys to play with.. I will try this a few days hence, perhaps over the weekend.. and let you know.. thank you :folded_hands:t3: