Страницы: 1
RSS
Power Query очень сложные правила для создания нового столбца, Необходимо создать множество вложенных подзапросов
 
Помогите, пожалуйста, с задачей:

Дана таблица с операциями с валютой. Какие-то операции являются обменом валют, какие-то пополнением счета и т.д., что в таблице в явном виде не указывается.
Есть номер транзакции, и для каждой транзакции несколько операций. Для каждой операции указывается сумма, валюта, эквивалент в USD и тип. Для некотрых операций эквивалент в USD не заполнен, что и предстоит сделать.

Необходимо добавить новый столбец "Эквивалент пары" и заполнить его, если столбец эквивалент валюты в USD не заполнен (или же сразу для всех, но в случае если эквивалент в USD заполнен, то значение будет равно значению столбца "Эквивалент USD").

Это можно сделать только для обменных операций:

1) Сначала необходимо понять, какие из операций являются обменом валют:
если количество операций с ненулевой Суммой по одному номеру транзакции равно 3 и более, при этом одна операция имеет тип "сбор", одна операция (не являющаяся сбором) имеет Сумму меньше 0, а другие операции (одна и более, тоже не являющиеся сбором) каждая имеет сумму больше 0

или наоборот
одна операция (не являющаяся сбором) имеет Сумму больше 0, а другие операции (одна и более, тоже не являющиеся сбором) каждая имеет сумму меньше 0,

то есть одна валюта может обмениваться на одну другую валюту или на несколько других.

2) Если одна валюта меняется на другую, то есть одна операция "не сбор" меньше нуля, другая больше нуля, тогда эквивалент в USD одной валюты равен эквиваленту USD другой валюты в этой транзакции, умноженному на -1.
ТранзакцияВалютаСуммаЭквивалент в USDТип Эквивалент пары
111USD130130сбор
111EUR-1000-1100
111CHF9830 =(-1100) * -1
3) Если одна валюта меняется сразу на несколько, или несколько меняется на одну, то эквивалент этой одной валюты равен сумме всех других эквивалентов в этой транзакции
115USD130130сбор
115RUB510001000
115EUR10001100
115SEK-5000 =(1000 + 1100) *-1
4) При этом, если одна валюта меняется на несколько других, и среди этих других есть хотя бы один неопределенный эквивалент, то значение эквивалента для обмениваемой валюты определить невозможно, подставить значение null


Помогите, пожалуйста, с такой задачей. Возможно, лучше ее разбить на несколько этапов?
 
Здрасьте.
Я вижу 2 пути:
1. Пойти в раздел работа, там за разумную деньгу выдадут решение, с которым можно разбираться и понимать, как оно устроено.
2. Не озвучивать сразу всю простыню, а разбить по шагам и задавать вопросы тут. А вот как сделать это? А вот как сделать то?
А мне, честно говоря, в бесплатной ветке такие задачи... ну такое... :)
Кому решение нужно - тот пример и рисует.
 
Пытливый, спасибо за совет! Честно говоря, я даже не знала о существовании раздела "работа", с удовольствием им воспользуюсь!
Страницы: 1
Читают тему (гостей: 1)
Наверх