I'm loosing my brain with this

Hi all,
well…
It’s been a 6 hours trying to understand why this doesn’t work…
So, I have a table with columns and rows.
In two columns I have numbers…
I now create a button to concatenate numbers in both columns into a third one…
If I put in the third column this formula:
If(CPE.Cod provincia=1, “Yes”, “No”)
When the column named CPE.Cod provincia is equal to 1 I well get a “Yes” in my third column but…
If I use a button with the Modify Row action I always get “No”…
The “True” condition is never evaluated…

Then in my button, this code always give me blank results and I dont understand why
ModifyRows(Filter(CPE,Cod provincia <= 9), CPE.CODAUTO, Concatenate(“0”, CPE.Cod provincia))

If anyone understand why this doesn’t work as it should do…

Thanks

Classic mistake :slight_smile:

What you want is to modify each row from the filter result separately.

What you’re doing instead is modifying ALL filtered rows with a SINGLE result, which is probably not what you expect it to be. Most likely, CPE.Cod provincia in your Concatenate is the whole column of a table.

What your formula should be like:

CPE.Filter(CurrentValue.[Cod provincia] <= 9).ForEach(
  CurrentValue.ModifyRows(
    CPE.CODAUTO, Concatenate("0", CurrentValue.[Cod provincia]
  )
)

P.S. There are probably better ways to solve this, e.g. you can just use LeftPad() to add leading zeros where needed:
image

I did the ForEach/ModifyRow answer to illustrate what is a very common mistake.

So, again:

Table.Filter(...).ModifyRows(
  Column,
  Value
)

— it’s to modify ALL selected rows at once with the same Value, e.g. set a checkbox to true.

Table.Filter(...).ForEach(
  CurrentValue.ModifyRows(
    Column,
    Value
  )
)

— is to modify each row individually with different values, which can calculate out of CurrentValue (pointing to the currently modified row) or whatnot.

2 Likes

Hi, thanks for your response.
I got the formula from the Coda Editor when one create a button and use the form to set its actions…

Will try yours immediately
Thanks

This topic was automatically closed 3 days after the last reply. New replies are no longer allowed.