Показать сообщение отдельно
Старый 31.05.2019, 02:47   #14  
ax_mct is offline
ax_mct
Banned
 
2,548 / 1091 (0) ++++++++
Регистрация: 10.10.2005
Адрес: Westlands
Цитата:
Сообщение от mazzy Посмотреть сообщение
Прям руками? В отдельную таблицу?

Почему не saveLast? если saveLast, то в какое место класса RunBase вставить вызов?

если использовать стандартный вызов saveLast, то в какое место вставить импорт из Excel?
Если пользователь выбирает файл на клиенте в диалоговой форме (RunBase.prompt) то я бы сделал эту форму статической (AOT формой) и добавил операцию загрузки данных на сервер как отдельный шаг и только тогда позволял бы нажимать OK (в пакетнике или нет, не важно).

Выделял бы RunId на каждый запуск и именно его бы и передавал помимо фильтров.
Операция загрузки данных на сервер в staging конечно руками и не так важно где этот код.

С точки зрения дизайна решения предварительная загрузка данных с клиента на сервер
мне кажется наиболее прямым решением. Можно и просто копировать файл на сервер, а не писать в базу. Но предварительная операция как загрузка на сервер как принцип.

То есть разбиваем на операции, а не классы. Если что-то реальное сложное то я бы даже предлагал бы wizard с шагами до кнопки OK пакетника. И солидно, и голова меньше болит когда логика по шагам.