Приветствую, коллеги! Возникла нетривиальная задача, не знаю как лучше и в целом как вообще возможно ее решить.
Суть задачи: есть набор логический условий, правил, исходя из которых должна происходить обработка данных в файле.
То есть таблица с правилами, есть также таблица с данными где проверяются логические условия и также происходит обработка.
Например, в первой столбце указан номер блока обработки, допустим 1. Далее идет столбец "Поле" с указанием по какому полю проверяется условие, далее само условие (равен/не равен и тд), далее значение с которым сравнивается поле. Далее "Поле2" в котором указывается с каким полем выполняется действие при выполнении условий, далее действие - по сути это всегда заменить на значение, которое идет в следующем столбце "Значение3".
Смысл в том, чтобы простой пользователь мог наполнять таблицу такими простыми унифицированными правилами/условиями и далее с помощью запроса блок с данными автоматически обрабатывался бы.
Самая простая мысль была перевести все в одну строку с большим количеством столбцов и громоздким кодом, но пока отмел. плюс в таком случае создание и заполнение новых правил выглядит не очень удобным.
Второй вариант с помощью List.Accumulate, но в таком случае получается что-то очень сложное. Попробовал реализовать, но не получилось.
Буду рад любым советам!
Суть задачи: есть набор логический условий, правил, исходя из которых должна происходить обработка данных в файле.
То есть таблица с правилами, есть также таблица с данными где проверяются логические условия и также происходит обработка.
Например, в первой столбце указан номер блока обработки, допустим 1. Далее идет столбец "Поле" с указанием по какому полю проверяется условие, далее само условие (равен/не равен и тд), далее значение с которым сравнивается поле. Далее "Поле2" в котором указывается с каким полем выполняется действие при выполнении условий, далее действие - по сути это всегда заменить на значение, которое идет в следующем столбце "Значение3".
Смысл в том, чтобы простой пользователь мог наполнять таблицу такими простыми унифицированными правилами/условиями и далее с помощью запроса блок с данными автоматически обрабатывался бы.
Самая простая мысль была перевести все в одну строку с большим количеством столбцов и громоздким кодом, но пока отмел. плюс в таком случае создание и заполнение новых правил выглядит не очень удобным.
Второй вариант с помощью List.Accumulate, но в таком случае получается что-то очень сложное. Попробовал реализовать, но не получилось.
Буду рад любым советам!