У меня есть таблица с идентификаторами клиента / контракта, которая содержит транзакции.У клиента есть как минимум один контракт (оболочка) и как минимум одна позиция контракта (если только контракт оболочки -> позиция контракта = контракт оболочки).«Контракт оболочки» является либо «платным», либо «бесплатным».
Каждый клиент, контракт и позиция контракта могут появляться более одного раза.Например, клиент может отменить позицию контракта, впоследствии отозвать отмену или создать новые позиции контракта и т. Д.
Как упоминалось ранее, у клиента всегда есть «контракт оболочки» и в рамках этого «контракта оболочки»нет, один или несколько дополнительных контрактов.
Мой вопрос теперь состоит в том, как мне написать формулу массива, которая дает мне для каждого клиента, является ли его контракт оболочки "платным" или "бесплатным".
В таблице с фиктивнойданные оболочки заключают контракт с "contract_id" 1. Результат формулы рабочего массива будет находиться в столбце "pay or free for contract_id = 1".
Поскольку вы можете видеть только те строки, которые включаютИД контракта 1 имеют отношение к соответствующему результату.Остальные строки можно игнорировать.
Я уже пробовал разные формулы массива, но он просто не будет работать так, как должен -.- Все остальные столбцы в файле полностью динамические, например, статус контракта столбца, которыйпроверяет последнюю дату транзакции для конкретного клиента и конкретного контракта.Только последняя формула не сработает.
С логической точки зрения формула будет работать примерно так:
= if customer_id="xyz",
for each contract_id=1,
check if contract status="active" or "in cancellation",
"pay",
otherwise "free".
pay of free for contract_id=1 customer_id contract_id contract status
pay xyz 1 active
pay xyz 2 cancelled
pay xyz 1 active
pay xyz 3 in cancellation