Выбрать дату в календареВыбрать дату в календаре

Страницы: 1
PowerQuery Развернуть столбцы с данными из json
 
Цитата
написал:
let    Source = Json.Document(File.Contents("your_path\temp-2.txt"))[orders],    a = Table.FromRows(List.Transform(Source, Record.ToList), {"rec_id", "rec"}),    b =         Table.TransformColumns(            a,             {"rec", each List.Zip({Record.FieldNames(_) , Record.ToList(_)})}        ),    c = Table.TransformColumns(b, {"rec", each Table.FromRows(_, {"payment_id", "data"})}),    expand_rec = Table.ExpandTableColumn(c, "rec", {"payment_id", "data"}, {"payment_id", "data"}),    expand_data = Table.ExpandRecordColumn(expand_rec, "data", {"id", "status", "type", "externalId", "amount", "paidAt"}, {"id", "status", "type", "externalId", "amount", "paidAt"})in    expand_data
Перепроверил все еще раз, оказалось проблема была не в коде.
Спасибо!

Можно еще попросить объяснить как убрать привязку к id?
Цитата
написал:
Цитата
написал:
Почти то что надо
Вон выше Антон сделал чистенький код. Там ничего лишнего нет (убрать бы только привязку к payment_id {"21507", "21508", "21532131"}, но это не сложно, наверное).  
PowerQuery Развернуть столбцы с данными из json
 
Цитата
Цитата
написал:
пусть будет вот так вот... 5 раз прочитал, все равно не понял, что именно надо
Код
    [URL=#]?[/URL]       1  2  3  4  5  6  7  8      let          a = Table.FromList(Json.Document(Web.Contents(  " https://www.planetaexcel.ru/bitrix/components/bitrix/forum.interface/show_file.php?fid=516275&action=download "  ))[orders], (x)=>{x}),          b = Table.ExpandRecordColumn(a,   "Column1"  , {  "id"  ,   "payments"  }),          c = Table.ExpandRecordColumn(b,   "payments"  , {  "21507"  ,   "21508"  ,   "21532131"  }),          d = Table.UnpivotOtherColumns(c, {  "id"  },   "q"  ,   "w"  ),          q = Table.ExpandRecordColumn(d,   "w"  , {  "status"  ,   "type"  ,   "amount"  })    in          q   
 
Работает, но если словарей больше или меньше двух -- эти данные не попадают в таблицу. Вложенных в payments словарей может быть от 1 до 5
PowerQuery Развернуть столбцы с данными из json
 
Цитата
написал:
Артем Есьман, я взял на себя смелость предложить, что вам не надо раздвигать таблицу вправо. Достаточно положить в отдельную колонку последний id (кажется, payment id) и все укладывается в достаточно симпатичную таблицу. При этом в последней записи дублируется этот самый payment_id. Ну это если я чего-то с чем-то не спутал.  
Код
    [URL=#]?[/URL]       1  2  3  4  5  6  7  8  9  10  11  12  13      let          Source = Json.Document(File.Contents(  "your_path\temp-2.txt"  ))[orders],          a = Table.FromRows(List.Transform(Source, Record.ToList), {  "rec_id"  ,   "rec"  }),          b =               Table.TransformColumns(                  a,                   {  "rec"  , each List.Zip({Record.FieldNames(_) , Record.ToList(_)})}              ),          c = Table.TransformColumns(b, {  "rec"  , each Table.FromRows(_, {  "payment_id"  ,   "data"  })}),          expand_rec = Table.ExpandTableColumn(c,   "rec"  , {  "payment_id"  ,   "data"  }, {  "payment_id"  ,   "data"  }),          expand_data = Table.ExpandRecordColumn(expand_rec,   "data"  , {  "id"  ,   "status"  ,   "type"  ,   "externalId"  ,   "amount"  ,   "paidAt"  }, {  "id"  ,   "status"  ,   "type"  ,   "externalId"  ,   "amount"  ,   "paidAt"  })    in          expand_data   
   
Почти то что надо, но если словарей в payments больше или меньше двух то эти значения не попадают в таблицу
PowerQuery Развернуть столбцы с данными из json
 
Цитата
написал:
Артем Есьман, проблемы те же
Исправил, проверил, теперь точно работает  
PowerQuery Развернуть столбцы с данными из json
 
Цитата
написал:
Артем Есьман, покажите как есть, и как надо
да, у меня ваш файл json не открывается, приложите другой
Как оно есть: payments есть словари с разными именами. В каждой последующей ячейке уникальный id способа оплаты отличается от предыдущего.
Как оно надо: развернуть словари и развернуть необходимые данные(статус, тип и сумму) из каждого вложенного в payments словаря.
ошибку с повторением totalsumm убрал - json во вложении
 
PowerQuery Развернуть столбцы с данными из json
 
Цитата
написал:
https://www.youtube.com/watch?v=R5CYPsMwY-o
Я умею доставать данные из json в таблицу, мне необходимо решить проблему со списками в payments.
Но за видео спасибо.
PowerQuery Развернуть столбцы с данными из json
 
Добрый день, уважаемые.
Для описания проблему объясню что я делаю и что я хочу получить, надеюсь это поможет с решением проблемы.
Я выгружаю данные по api с сайта, они приходят в формате json и превращаются в таблицу с которой я уже и работаю.
На этом этапе возникла проблема. Ключ payments имеет внутри словарь с типами оплаты. А сами словари внутри этого словаря имеют уникальный id. В примере это 21507 и 21508. Именно из за того что эти словари внутри имеют отличное друг от друга название, я не могу(ввиду своей неопытности в powerquery) развернуть в столбцы. Максимум словарей внутри payments может быть 5. Отсюда вытекает задача:
Необходимо добавить в таблицу 5 столбцов в которые будут загружаться вложенные словари в payments. Если внутри словаря 2 типа оплаты - заполнять первые 2 столбца которые мы создали ранее, если их все 5 - заполняем все 5 столбцов. Из этих столбцов я уже смогу вытащить необходимые мне данные(способ, статус и сумму)
Прикладываю json с обезличенными данными.  
Power Query. Развернуть столбец не по имени
 
Цитата
написал:
Добрый день, Артем Есьман
Цитата
написал:
Часто находил помощь на этом форуме уже в ранее созданных темах
и, наверное, замечали, что помощь приходит скорее, если приложить пример с данными, а не картинки. Интересно что в этих Records - какие поля и т.п. Не все можно на картинке показать.  
Выгрузить таблицу с данными не удается, данные на лист прилетают по апи - максимум могу дать json с примером. Подойдет?  
Power Query. Развернуть столбец не по имени
 
Добрый день, Уважаемые форумчане. Часто находил помощь на этом форуме уже в ранее созданных темах, но сейчас столкнулся со следующей проблемой:
Мне необходимо развернуть столбец не по названию столбцов внутри, а по их порядковому номеру (максимальное кол-во столбцов - 5)
На скрине1 видно какой столбец я хочу раскрыть и что внутри разные названия столбцов
На втором скрине видно что если я раскрою эти данные
На третьем видно что я хочу получить. номер - статус, тип и сумма.

Хочется верить что я смог объяснить что хочу получить
Страницы: 1
Наверх