Hi, I am trying (and failing) to get a repro...

(Craig Brown) #1

Hi,

I am trying (and failing) to get a reproducible setting of columns through a bulk action, that sets the values of 4 columns of an inventory sheet to be the same.

I have a Google sheet to define this ‘global’ setting, which has 4 values in 1 row, which are defined from a user form, that uses valid_if/dependent dropdowns. Choosing the values works, and the sheet updates. The purpose of this sheet is to set a default value for the corresponding set of columns on the main inventory sheet.

The inventory sheet has those 4 columns that are also available in separate forms that operates on the same valid_if principle.

Now, The bulk action operates on each of the four columns in turn, setting the main inventory column equal to the equivalent of the ‘global’ setting.

Here is the problem: If ONLY one of those columns is different for the item(s) selected for the bulk action to operate on, it works! It does not matter which value it is.

if 2 columns are different it fails. Every time.

The error is “Could not set value because column X would become invalid.”

I have checked for consistency between formats and valid_ifs, but dont see any obvious issues.

Does anyone have any insight of why this would be so? I really want to keep the dependent dropdown for at least the main inventory page, as that constrains input from users adding to the database.

TIA.

(Aleksi Alkio) #2

It seems that the action will write a value that is not valid and that’s why it cancel it. Instead of using Valid_If, try to use Suggested_Values.

(Craig Brown) #3

Thanks Aleksi. That will work, but has the net result of removing all the implicit dependences on the dropdown, so all values for the 4 columns are now available. That gives more options than are available for most entries, cluttering input for the user.

I will try and clear all values first and then re-set them to the Globals and see if I can keep valid_if, but I suspect the same errors will arise (but removing any required_if might help that)

(Craig Brown) #4

The latter works: set null values for each dependent in reverse hierarchical order, and then set them to the intended value in order.