TLDR: I would like to be able to tell the app...

(Steve Wood) #1

TLDR: I would like to be able to tell the app which forms to make available based on table input instead of App Formula/Show Column settings for easier use.

I am trying to figure out how to structure my data/app. I have different projects with different equipment and each piece of equipment can have multiple check sheets that need to be completed at different times. Let’s say I have Houses and Apartments. Each of these will have toilets, fans, and windows (equipment), but only the houses can have pools. Now some of these need to be inspected when they are dry and again when they are wet for full functionality (different check sheets.) How can I set up the app so that it when I select Houses it knows what all equipment is available, and when I select a piece of equipment, it knows what all possible check sheets (forms) there are?

Currently I have a App Formula in each form I have an App Formula =“House”, etc. and in the Project Detail View I have to Add Column for "Related ". This is hard to manage and I would rather have it all driven within my data by using a table. For instance having a row for each building type, and a column that would like to each acceptable form that be shown.

I’ll gladly share my app if this is possible and would help to clarify things.

(Reza Raoofi) #2

It isn’t exactly clear to me what you are looking for: 1) Is your post about help on app design?

  1. Or your app has been already built and you have some specific questions?

  2. Or you need someone to go through your app and give you a comprehensive consultation?

Regarding #1, I suggest to read the articles below and compare with the design you have in mind, then ask your questions in community:

Regarding #2, please break it into smaller questions and ask here, so other members could more easily answer.

Regarding #3, you may want to check out partners page on AppSheet website, and get professional consultation, so someone would spend more time, review your app thoroughly, and help you with required improvements.

(Steven Coile) #3

Your description is unclear. When you say “forms”, do you mean form views? Or do you mean columns? What does “App Formula = ‘House’” mean? What is “Add Column”? Is each “check sheet” a separate column? Or a separate row? Or a separate table?

(Steve Wood) #4

Let’s see if I can simplify and explain better. I have a table for each check sheet. I would like to have another table that lists each piece of equipment and which check sheets apply to it. I imagine this would be setup with each piece of equipment as a row and then the columns would be for “wet checks” and “dry checks” with a link to the correct check sheet in each cell.

(Steven Coile) #5

So you intend the app to provide the user with the appropriate link, and that the user would follow the link to access a spreadsheet in Google Sheets?

(Steve Wood) #6

+Steve Coile No. This is an inspection app, and I want to use Form Views for filling in the check sheets. I just want to control which check sheets (Form Views) are available for each piece of equipment in the most simplistic manner.

(tsuji koichi) #7

@Steve_Wood Not sure if this make sense with you. I assume you have one table which deal with the basic inspection data, such as date, name of inspector etc, and there is entry (enum) to let the user pick up from the list of property, house and apartment etc. Then you have other independent tables for the template of inspection assigned to each property.

Based on this scheme, what about making virtual columns in main table?

On the main table, to create virtual column where you add ap formula to pick up the check list table. (use select expression), You make the virtual columns for each check list. And make all the virtual column ‘hidden’ as default.

Then when the user pick up the property on the form for main table, then the appropriate table (basically inline table) will pop up bottom part of inspection detail view.

Once the user finish entry to the main table edit view, and save, then user can find the related check list. And then they add new to add new check list.

One inspection main row could have multiple child row (for one inspection schema) , but down side is one row in main table could not have multiple diffferent type of inspection. To make it happen, i m not testing yet, why dont we make a input in main table as enum list, so that user can pick up multiple property types, and then run IN expression to dynamically show the child table?

Hope this would make sense.

(Steve Wood) #8

@tsuji_koichi Although we are structured slightly different than you interpret it, I believe your idea of “On the main table, to create virtual column where you add ap formula to pick up the check list table. (use select expression)” is exactly what I’m looking for.

I have a Product Line value that I can use to designate when forms should be available, and I can set that in the app formula.

I don’t know how to specify a Form should be available based on another field in a table.

Currently I’m having to “Add a Column” in the Projects Detail View (as shown in the attached pic.) This works, but we already have over 200 check sheets that will need to be added and managing this in a Table seems like a much simpler process.

(tsuji koichi) #9

@Steve_Wood Through the screenshot, it looks the links have been made between parent and several child tables, presumably using project number as id and ref type column. I think it is already ready to implement to dynamically show and hide child record within in-line view, if this is a solution you are looking for.

Make the product line column as enum (or enum list whichever, but the setting fro enum list should be different),

let s say, 1) houses 2) apartments 3) flat etc.

and for each related table, ie. the virtual column starting ‘related’, open the editor and just simply put expression to ‘show if’. For instance, if we want to show the air grids drys only in the case user select ‘1) apartments, then just simply add ‘[product Line] = "apartments’’ , that’s it.

If the check list need to cover the multiple types of properties, then set the product line column type to enumlist. Then alter the show if expression into something like IN(“apartments”,[product line]).

If want to add ‘houses’ for the same checklist, then just bind those by and expression, and(IN(’'apartments",[product line]),IN(“apartments”, [product line]))

not testing but should work.

(Steve Wood) #10

@tsuji_koichi Thank you. The links in the table are currently not doing anything, I simply pasted it in hopes that it would work.

I am currently using the “show if” expression to control whether they show under each Project or not, but requires me to change 3 items in the app for every check list that I add. It seems like there should be a much easier way to do this where any check list that shows in the table is automatically shown on the correct Project view.

I’m in the process of recreating my app from scratch, so that it is as clean and streamlined as possible, before I add all 204 check lists. That is why I am trying to make this as easy as possible.