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

Страницы: 1
Импор XML в таблицу
 
Цитата
Иван написал:
Кто нибудь знает рецепт, как преобразовать данные из файла XML в читаемую таблицу?
Способ 1. В Excel Включите Параметры - Настроить ленту -  Разработчик. В появившемся меню XML - Импорт.
Способ 2. Через Power query (Данные - Создать запрос - Из файла - Из XML )
Изменено: Андрей С - 10.05.2021 15:08:51
PQ. Найти платежи и сопоставить их контрактам
 
Цитата
Murderface_ написал:
Еще вариант. Сначала джойним таблицы по 3м ключам, затем фильтруем строки по Contract_
Спасибо за идею, теперь все получилось  - просто объединил по 2 ключам и создал условный столбец, в который вывел проверку вхождения номера контракта ContractNo в назначении платежа Descr и применил фильтр к этому столбцу..  
PQ. Найти платежи и сопоставить их контрактам
 
Вот такой пример будет точнее
PQ. Найти платежи и сопоставить их контрактам
 
А нет 3го ключа. Дата в контрактах и Дата в Платежах могут не совпадать (Contracts,{"Buyer ID", "Seller ID", "Date"}.
В этом вся загвоздка.
Третий ключ надо как-то получить.
Находил примеры поиска по списку List.Accumulate, но ничего не получилось  
PQ. Найти платежи и сопоставить их контрактам
 
Порты опечатаны, офис закрыт на неделю, не скопировать. Поэтому только такие примеры.
PQ. Найти платежи и сопоставить их контрактам
 
Да, все верно, но в поле Descr в реальности все сложнее.  Там фантазия безграничная. Просто вытащить текст "между" не получится.
(Table.AddColumn(#"Измененный тип", "Contract_No", each Text.BetweenDelimiters([Descr], "No ", " dd"), )
PQ. Найти платежи и сопоставить их контрактам
 
Добрый день, знатоки,

поделитесь, пожалуйста, идеями по решению задачки без VBA и программирования.

Как реализовать  в Power Query следующий анализ. Есть 2 таблицы – «Контракты» и «Платежи». Таблица «Контракты» состоят из полей [Покупатель ID], [Продавец ID], [Номер Контракта], [Дата контракта], [Сумма]. Таблица «Платежи»  включают поля [Плательщик ID], [Получатель ID], [Дата платежа], [Сумма платежа], [Назначение].

У каждой пары [Покупатель ID] -  [Продавец ID] может быть больше одного контракта. У каждого контракта может быть больше одного платежа. При этом [Покупатель ID] = [Плательщик ID], [Продавец ID] = [Получатель ID], а [Назначение] как текст включает [Номер Контракта] и [Дата контракта].

Задача – найти платежи и сопоставить их  контрактам.

Ключ для объединения таблиц можно получить из слияния полей   [Покупатель ID]+[Продавец ID] и [Плательщик ID]+[Получатель ID]. Затем составить список номеров контрактов для каждой пары [Покупатель ID]+[Продавец ID]).

Осталось самое сложное - пройти поиском по полю [Назначение] таблицы «Платежи», где будем для каждой пары искать номера контрактов в тексте, и копировать их в новое поле. [Номер_Контракта_1].

Наконец, сделаем новый ключ из 3 полей [Покупатель ID]+[Продавец ID]+ [Номер Контракта], а в таблице «Платежи» - [Плательщик ID]+[Получатель ID]+ [Номер_Контракта_1] и по этому ключу сделать объединение.

Вопрос – как сделать такой поиск средствами Excel Power Query?

Contracts.xlsx (14.15 КБ)  
Страницы: 1
Наверх