Табличные параметры

Обсуждение возникших проблем, предложений и ошибок SDAC компонентов
Ответить
WildFrag
Сообщения: 22
Зарегистрирован: Пн 29 апр 2013 11:41

Табличные параметры

Сообщение WildFrag » Пт 28 сен 2018 09:35

Плотно работаю с табличными параметрами и столкнулся с одной весьма неудобной вещью.

Создается объект TMSTableData, прописываем тип на сервере, открываем заполняем.
Затем присваиваем ParamByName('xxx').asTable:= TMSTableData.Table
Затем все открываем и все замечательно работает, НО, если перед открытием запроса объект TMSTableData будет например
удален, то запрос не выполнится и получим ошибку. Тут как бы все логично, идет ссылка на уже несуществующий в памяти объект.
Но в случае когда мы динамически работаем с запросами использующими табличные параметры приходится городить связи между самим TMSQuery и всеми табличными объектами тоже созданными в рантайме.
Т.е хочется какой-то метод который загрузит данные из TMSTableData в табличный параметр после чего может быть безопасно убит, а запрос будет преспокойно открываться и работать. В идеале вообще чтобы TMSTableData был встроен в TMSParam и не требовалось городить связки объектов.

Stellar
Devart Team
Сообщения: 13
Зарегистрирован: Чт 07 дек 2017 14:56

Re: Табличные параметры

Сообщение Stellar » Вт 02 окт 2018 11:39

Для загрузки данных из TMSTableData в табличный параметр необходимо будет продублировать данные, что приведет к потере производительности и увеличению используемой памяти приложения. Поэтому, мы не видим целесообразности подобного решения.
Вы можете попробовать добавить тег в TMSTableData, который будет признаком, можно ли удалять объект TMSTableData.

WildFrag
Сообщения: 22
Зарегистрирован: Пн 29 апр 2013 11:41

Re: Табличные параметры

Сообщение WildFrag » Вт 02 окт 2018 12:08

В принципе я просто написал наследника на TMSQuery :)

Stellar
Devart Team
Сообщения: 13
Зарегистрирован: Чт 07 дек 2017 14:56

Re: Табличные параметры

Сообщение Stellar » Пт 05 окт 2018 16:02

Рады слышать, что проблема решена. Если у вас возникнут вопросы по использованию наших компонентов - обращайтесь.

Ответить