Forum Discussion

monojchakrab's avatar
monojchakrab
Resolver III
3 years ago
Solved

List.Accumulate returning wrong value

Hiya all,

 

I am working with a table as below :

 

The task is as follows :

1. Extract the month name using List.Accumulate as below :

 Table.AddColumn(ExtractAccountName, "Month Name", each List.Accumulate(MonthNames,
"",
(state,current) =>
if Text.Contains([Name],current,Comparer.OrdinalIgnoreCase) then 
state & "" & current else state))

The {MonthNames} is a list prepared separately and fed here. The result I am getting is a bit of an oddball : the column [MonthName] has an entry "FebMar" and only for one row; but "Mar" is not there in the text in any of the rows.

Is there something I am overlooking here? the Column {Account] is inserted in exactly the same way, without any strange results.

Any help appreciated.

 

 

  • wdx223_Daniel's avatar
    wdx223_Daniel
    3 years ago
    Table.AddColumn(ExtractAccountName, "Month Name", each List.Select(MonthNames,(x)=>
    Text.Contains([Name],"_"&x,Comparer.OrdinalIgnoreCase)){0}?)

    sorry for my carelessness.

9 Replies

  • whoops did not realise that wdx223_Daniel . Is there a workaround not to pick up the "mar" from the name of the account string.

    would splitting the column using the delimiter "-" work better in this case?

    • wdx223_Daniel's avatar
      wdx223_Daniel
      Community Champion
      Table.AddColumn(ExtractAccountName, "Month Name", each List.Select(MonthNames,each
      Text.Contains([Name],"_"&_,Comparer.OrdinalIgnoreCase){0}?)
      • monojchakrab's avatar
        monojchakrab
        Resolver III

        wdx223_Daniel - It adds column with lists as it should, but the list is populated with errors on every row. Am I getting something wrong?