Гость
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Управление записями в БД через интерфейс в Excel(ADODB + MS SQL Server) / 4 сообщений из 4, страница 1 из 1
14.03.2020, 14:47
    #39937404
EternalStudent
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Управление записями в БД через интерфейс в Excel(ADODB + MS SQL Server)
Всем привет.

Есть задача сделать пользовательский интерфейс для изменения данных в БД через интерфейс в Excel.

Доступно: MS SQL Server+Excel +VBA ADODB

Условия:

Пользователь выгружает новые данные на лист (Данные join из нескольких таблиц БД)
- Редактирует, удаляет выгруженные записи, добавляет новые записи
- Нажимает кнопку сохранить - происходит синхронизация с таблицами в БД

Для себя выделил несколько способов:

1) Выгрузка через хранимую процедуру с пометками записей в БД, что они сейчас заблокированы для редактирования(система многопользовательская - для избежания конфликтов необходимо применять пессимистичную блокировку)
2) Выгрузка на лист
3) Пользователь редактирует данные
4) Нажимает кнопку "сохранить" - данные проходят процедуру валидации и в виде временной таблицы сохраняются в БД
6) Запускается хранимая процедура синхронизации основных таблиц и временной, старые записи помечаются, как доступные для изменения

В этой схеме не нравится, что придётся грузить все данные, даже те которые не были изменены

Как можно грамотно вести трекинг изменений и валидацию данных прям при вводе данных ?

Думал создать коллекцию объектов в памяти(Repository) и проводить ее синхронизацию с трекингом состояний записей при срабатывании события изменения листа в Excel... но там не всё так просто


Есть у кого опыт внедрения таких интерфейсов ? Как лучше спроектировать архитектуру приложения?
...
Рейтинг: 0 / 0
16.03.2020, 12:09
    #39937781
AndrF
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Управление записями в БД через интерфейс в Excel(ADODB + MS SQL Server)
Грамотно - не использовать для данной цели Excel - он для подобного не предназначен.
...
Рейтинг: 0 / 0
16.03.2020, 16:45
    #39937912
EternalStudent
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Управление записями в БД через интерфейс в Excel(ADODB + MS SQL Server)
AndrF,

я согласен, что Excel наименее подходящий кандидат на роль Desctop-клиента.


Есть другие подходящие платформы для одновременного массового изменения данных, реализующие такие удобные вещи как:

- пользовательские формулы
- автозаполнение
- протягивание данных
- удобные фильтрации данных

??
...
Рейтинг: 0 / 0
17.03.2020, 00:02
    #39938044
MX-9
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Управление записями в БД через интерфейс в Excel(ADODB + MS SQL Server)
EternalStudent,

Более 15 лет на десятках объектов применяем не обычные, а необычные ексцели,
работающие в связке с единой общей для всех базой данных.

Главная фишка -
в базе на сервере создаются виртуальные двойники ексцелей.
Пользователи видят натуральные - но основная вычислительная работа идет в виртуальных.
Интерактивно все отображается в обе стороны.

Выход на реляционную СУБД реализован - но мы им почти не пользуемся.
Висим на деревьях..

https://github.com/mx-alex/MX
www.armex.pro
...
Рейтинг: 0 / 0
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Управление записями в БД через интерфейс в Excel(ADODB + MS SQL Server) / 4 сообщений из 4, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]