Страницы: 1
RSS
группировка с функцией
 
Привет!

Пытаюсь "познать дзен" в духе постов уважаемых гуру)) Не понимаю почему один кусок кода делает что я и хотел (я так сразу и написал), а когда начинаю его улучшать, то группировка выдаёт таблицы с ошибками

работает ок
Цитата
   f = (x)=> [
   a = List.Skip(Table.ColumnNames(x), 2),
   b = List.Transform(List.Skip(Table.ToColumns(x), 2), (y)=>{Text.Combine(List.Distinct(y), " ;; ")}),
   r = Table.FromColumns(b, a)
   ][r],
   ren_cols = Table.RenameColumns(src,{{"УК/ТСЖ", "uk"}, {"ИНН УК/ТСЖ", "inn"}, {"Адрес дома", "addr"}, {"Название УК/ТСЖ", "uk2"}, {"Сайт", "site"}, {"Юр. адрес УК/ТСЖ", "juraddr"}, {"Номер тедефона УК/ТСЖ", "phone"}, {"Имя директора", "dir"}}),
   grouped = Table.Group(ren_cols, {"uk", "inn"}, {{"agr", f, type table}}),

выдаёт таблицы из ошибок
Цитата
   f = (x)=> [
   a = List.Skip(Table.ColumnNames(x), 2),
   b = List.Transform(a, (y)=>{Text.Combine(List.Distinct(y), " ;; ")}),
   r = Table.FromColumns(b, a)
   ][r],
   ren_cols = Table.RenameColumns(src,{{"УК/ТСЖ", "uk"}, {"ИНН УК/ТСЖ", "inn"}, {"Адрес дома", "addr"}, {"Название УК/ТСЖ", "uk2"}, {"Сайт", "site"}, {"Юр. адрес УК/ТСЖ", "juraddr"}, {"Номер тедефона УК/ТСЖ", "phone"}, {"Имя директора", "dir"}}),
   grouped = Table.Group(ren_cols, {"uk", "inn"}, {{"agr", f, type table}}),

что я упустил? единственная мысль что "b = List.Transform(a, (y)=>{Text.Combine(List.Distinct(y), " ;; ")})" меняет "a", но нелогично же..
Изменено: maca - 27.07.2022 16:35:38
 
Цитата
написал:
List.Skip(Table.ToColumns(x), 2)
Цитата
написал:
a = List.Skip(Table.ColumnNames(x), 2),    
b = List.Transform(a, (y)=>{Text.Combine(List.Distinct(y), " ;; ")}),
обратите внимание на имя функции - ToColumns и ColumnNames это разные функции возвращающие разный результат.
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
 
Цитата
написал:
Цитата
написал:
List.Skip(Table. ToColumns (x), 2)
 
Цитата
написал:
a = List.Skip(Table. ColumnNames (x), 2),    
b = List.Transform(a, (y)=>{Text.Combine(List.Distinct(y), " ;; ")}),
обратите внимание на имя функции - ToColumns и ColumnNames это разные функции возвращающие разный результат.
блин) всё, глаз замылился совсем. спасибо!
Страницы: 1
Наверх