UniDAC 6.2.8. Первое знакомство, первые вопросы

Обсуждение возникших проблем, предложений и ошибок UniDAC компонентов
Закрыто
DrMoor
Сообщения: 1
Зарегистрирован: Пт 08 апр 2016 08:30

UniDAC 6.2.8. Первое знакомство, первые вопросы

Сообщение DrMoor » Пт 08 апр 2016 09:27

Доброго времени суток! Решил познакомиться с вашей библиотекой. Задача - работа с Sybase ASA 9 под Win x86-x64. Все приложения построены на вызовах хранимых процедур, т.е. никакого прямого доступа пользователей к таблицам и прочему, никаких select'ов в TQuery, исключительно вызовы CALL имя_процедуры. Естественно, поскольку такие вызовы не "request live", повсеместно используются cached updates. На данный момент всё работает через BDE, и, надо сказать, работает успешно и безглючно (ну бывает иногда, чего греха таить) уже в течение почти 20 лет. Но поскольку в новых RAD Studio поддержка BDE потихоньку сворачивается, присматриваюсь к сторонним компонентам доступа, ожидая при этом от них привычного поведения. И вот тут у меня с UniDAC'ом непонятка.
Запускаем демо. Подключаемся к базе, создаём необходимую структуру. Выбираем демо "Cached updates". Открываем запрос. Изменям поле DEPTNO на левое значение, нарушающее ссылочную целостность (отсутствующее в DEPT) дабы вызвать ошибку. Выполняем Updates => Apply. Событие OnUpdateError вызывается, вызывая диалог "Update action" (я пока не спрашиваю, почему при этом весь грид заполняется измененной записью). Всё отменяем, для чистоты эксперимента можем даже переконнектиться. Выполняем всё то же самое, но в рамках транзакции. Событие OnUpdateError не вызывается. Вопрос: это баг или фича? Документацию (Help) перечитал, ответов на вопрос не получил.

MaximG
Devart Team
Сообщения: 114
Зарегистрирован: Пн 06 июл 2015 12:51

Re: UniDAC 6.2.8. Первое знакомство, первые вопросы

Сообщение MaximG » Пн 11 апр 2016 12:40

Мы проверили работу UniDAC при использовании Sybase Anywhere 11. Подключение осуществлялось с использованием TODBCUniProvider. Мы воспроизвели проблему, связанную с отображением данных в гриде при возникновении ошибки во время применения изменений и займемся ее исправлением. Однако нам не удалось воспроизвести описываемое Вами поведение при вызове события OnUpdateError. Данное событие вызывается как при использовании транзакций, так и без. Возможно данное поведение зависит от используемой версии сервера Sybase Anywhere

Каменев_Алексей
Сообщения: 1
Зарегистрирован: Чт 21 сен 2017 17:47

Re: UniDAC 6.2.8. Первое знакомство, первые вопросы

Сообщение Каменев_Алексей » Чт 21 сен 2017 17:51

Добрый день! Могу ли я в Oracle из клиента Delphi через UniDAC передать таблицу в качестве параметра хранимой процедуры например? Ведь оракл позволяет передать непосредственно таблицу или курсор.
Прочитал где-то на форуме, что UniDAC не поддерживает такое и нужно приобретать ODAC, так ли это? Спасибо.

MaximG
Devart Team
Сообщения: 114
Зарегистрирован: Пн 06 июл 2015 12:51

Re: UniDAC 6.2.8. Первое знакомство, первые вопросы

Сообщение MaximG » Вт 24 окт 2017 07:00

Функциональные возможности ODAC и UniDAC в этом случае практически одинаковы. Так, например, работа с курсорами реализована в обоих продуктах абсолютно идентично. Пожалуйста, приведите интересующий Вас пример передачи таблицы в качестве параметра хранимой процедуры (для этого можно привести DDL-скрипт на создание объектов БД, используемых в этом примере) с тем, чтобы мы могли проверить вызов такой процедуры в обоих продуктах.

Закрыто