The most random virtual columns keep getting ...

(Joshua Giles) #1

The most random virtual columns keep getting generated and I have no idea why they keep generating? Any help on deleting these? Every time I unchecked them and hit save they just reginerate. I don’t have (or rather I can’t find) any equations that would Select() or RefRow() these virtual columns so I’m not sure why they automatically generated or why they keep reappearing. These virtual columns don’t even have data in them that are useful, just random correlations between my other tables.

(Deep Foundations) #2

Do you see an app formula in the like “REF_ROW(table, column)”? .If so, They might just be Reverse Reference columns if you have a on-to-many or a many-to-many relation between tables that reference one another.

(Joshua Giles) #3

@Deep_Foundations Yes, that exact formula for all 6 virtual columns. How can I delete these virtual columns?

(Steven Coile) #4

You cannot delete the system-generated REF_ROWS() columns.

(Joshua Giles) #5

@Steven_Coile That’s silly right? Wont generating 6 unnecessary lists slow down the performance?


Under most circumstances the performance effect is negligible, but there are some cases where it can be noticeable. You can effectively ‘turn them off’ by marking them hidden and replacing the REF_ROWS() formula with an empty list, =LIST().

(Grant Stead) #7

@Joshua_Giles the columns in your tables marked as REF, you can change to ENUM basetype REF… Then the REFROWS will be removed. And, you still see your labels.

@Adam_Stone_AppSheet I shaved more than a second off of my sync times by doing this everywhere that I didn’t absolutely require the inline… About 6 places… It would be really cool if you made the ENUM/ENUMLIST base type REF work a little more smoothly.

(Steven Coile) #8

@Adam_Stone_AppSheet What does AppSheet key on when regenerating those columns? I was under the impression it is the REF_ROWS() call itself, such that if you removed the call or replaced it with list(), a Regenerate would create new REF_ROWS() columns.


It checks the name column name, description, and formula. As long as you leave one of those with the default, you can modify the others without the system recreating a new column.

(Grant Stead) #10

@Adam_Stone_AppSheet maybe if you include an option on the REF to explicitly NOT automatically include the REF_ROWS()

AND you created the REFLIST type, then you can stop worrying about fixing up the ENUM/ENUMLIST base type REF. Lol