Forum Discussion

rpiboy_1's avatar
rpiboy_1
Helper V
3 years ago
Solved

Can't seem to implement Record.FieldValues properly

I still keep having issues on how to implement Record.FieldValues in given situations. Here is the M code I have currently.       let ColumnFilter = "Status", Source = Table1, #"Head...
  • ImkeF's avatar
    3 years ago

    Hi rpiboy_1 ,
    thanks, that's helpful.
    You would have to adjust like this:

    let
        ColumnFilter = "Status",
        Source = Table1,
        #"Headers" = Table.ColumnNames(Source),
        #"Converted to Table" = Table.FromList(Headers, Splitter.SplitByNothing(), null, null, ExtraValues.Error),
        #"Added Conditional Column" = Table.AddColumn(#"Converted to Table", "Custom", each if Text.Contains([Column1], ColumnFilter) then [Column1] else null),
        #"Removed Columns" = Table.RemoveColumns(#"Added Conditional Column",{"Column1"}),
        #"Filtered Rows" = Table.SelectRows(#"Removed Columns", each ([Custom] <> null)),
        #"HeaderList" = #"Filtered Rows"[Custom],    
        #"Merged Columns" = Table.AddColumn(Source, "Merged", each Text.Combine(Record.FieldValues(Record.SelectFields(_,#"HeaderList")), ""), type text)
    
    in
    #"Merged Columns"

    so first you select the relevant fields of the records and then you fetch their values afterwards:
    Record.FieldValues(Record.SelectFields(_,#"HeaderList"))