Гость
Форумы / PowerBuilder [игнор отключен] [закрыт для гостей] / Сложные типы в объектах, создаваемых с помощью SharedObjectRegister / 10 сообщений из 10, страница 1 из 1
18.06.2014, 17:22
    #38673359
VFl
VFl
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сложные типы в объектах, создаваемых с помощью SharedObjectRegister
Много лет раздражало, что сложные типы вроде n_ds невозможно использвать в зашаренных объектах. А хотелось, оно полезно, например для прерывания длинного retrieve или update (или для показывания прогресса операции) через события retrieverow или sqlpreview.

И вдуг обнаружилось, что все таки можно. Надо просто делать CREATE так:

ids_data = Create USING "nvo_ds_for_share1"

Давно желаемый клиентами прогрессбар в главной аппликации наконец реализован :)
...
Рейтинг: 0 / 0
18.06.2014, 18:53
    #38673520
spas2001
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сложные типы в объектах, создаваемых с помощью SharedObjectRegister
Поздравляю! Бороться и искать, найти и... перепрятать:)
ЗЫ: Спасибо, что поделились, неизвестно когда все это вылезет.
...
Рейтинг: 0 / 0
19.06.2014, 11:30
    #38673997
Raven A
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сложные типы в объектах, создаваемых с помощью SharedObjectRegister
Уважаемый VFI,
не могли-бы Вы уточнить, что кроется под "... сложные типы вроде n_ds невозможно использвать в зашаренных объектах." ?
...
Рейтинг: 0 / 0
19.06.2014, 18:47
    #38674718
VFl
VFl
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сложные типы в объектах, создаваемых с помощью SharedObjectRegister
Raven A,

Имелись в виду объекты, наследованные от стандартных. Так, transaction или datastore можно спокойно использовать, а наследованные от них пользовательские объекты n_tr или n_ds уже не получалось (если использовать синтакс inv_ds = CREATE n_ds). При компиляции проблем не было, но при запуске программа "зависала".
...
Рейтинг: 0 / 0
20.06.2014, 22:17
    #38676013
Филипп
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сложные типы в объектах, создаваемых с помощью SharedObjectRegister
VFlRaven A,

Имелись в виду объекты, наследованные от стандартных. Так, transaction или datastore можно спокойно использовать, а наследованные от них пользовательские объекты n_tr или n_ds уже не получалось (если использовать синтакс inv_ds = CREATE n_ds). При компиляции проблем не было, но при запуске программа "зависала".
Не очень понимаю почему нельзя и зачем изголяться. Я использую (правильным образом) объекты унаследованные от n_tr и n_ds много много лет, и никаких проблем (без "неправедного" синтакса)
...
Рейтинг: 0 / 0
21.06.2014, 07:26
    #38676105
VFl
VFl
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сложные типы в объектах, создаваемых с помощью SharedObjectRegister
[quot Филипп]VFlRaven A,

Я использую (правильным образом) объекты унаследованные от n_tr и n_ds много много лет, и никаких проблем (без "неправедного" синтакса)

Расскажите тогда, как правильным образом использовать объекты, унаследованные от n_tr и n_ds, в других объектах, которые создаются с помощью SharedObjectRegister. Мне правда интересно. А то вот http://nntp-archive.sybase.com/nntp-archive/action/article/%3C446bbb4b@forums-1-dub%3E]тут тоже заметили проблему.
...
Рейтинг: 0 / 0
23.06.2014, 11:43
    #38677014
Raven A
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сложные типы в объектах, создаваемых с помощью SharedObjectRegister
VFI.
Присоединяюсь к Филиппу. Пока особых проблемм при использовании "сложных" классов в процессах не видел, если использовать их '... правильным образом ...' :)
Собственно именно из этого некоторого недоумения и возник мой вопрос о подробностях "невозможности использования".

P.S.
Правда, возможно, что что-то зависит отверсии PB, хотя такая разница в поведении движка маловероятна.
...
Рейтинг: 0 / 0
24.06.2014, 22:40
    #38679058
Anatoly Moskovsky
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сложные типы в объектах, создаваемых с помощью SharedObjectRegister
Возможно создание объектов через create блокирует библиотеку объекта (или какую-то внутреннюю структуру ПБрантайма), а через create using - нет.
И возможно что у вас где то в коде эта блокировка мешает (например вызывает дедлок).
Вполне возможно что это баг какой-то конкретной версии.

Аналогичный был случай с блокированием когда LibraryImport блокировала библиотеку, и второй экземпляр приложения не мог выполнить LibraryImport в эту же библиотеку, пока ее не разблокируют (был какой-то хак для разблокирования, не помню уже какой, что-то связанное с открытием окон).
...
Рейтинг: 0 / 0
25.06.2014, 01:07
    #38679132
Филипп
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сложные типы в объектах, создаваемых с помощью SharedObjectRegister
[quot VFl]Филипппропущено...


Расскажите тогда, как правильным образом использовать объекты, унаследованные от n_tr и n_ds, в других объектах, которые создаются с помощью SharedObjectRegister. Мне правда интересно. А то вот http://nntp-archive.sybase.com/nntp-archive/action/article/%3C446bbb4b@forums-1-dub%3E]тут тоже заметили проблему.

Собссно, оч просто. Нужно перебить события, в которых у базовых классов есть references к глобальным или визуальным объектам. Ну соответсвенно не использовать (или перебить) функции базовых классов, которые делают то же самое...
...
Рейтинг: 0 / 0
25.06.2014, 19:00
    #38680249
VFl
VFl
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сложные типы в объектах, создаваемых с помощью SharedObjectRegister
Anatoly Moskovsky,

похоже на то, версия 11,5. Попробовал с совсем простой новой аппликацией, в ней действительно ничего не завиcает и без использования USING.
...
Рейтинг: 0 / 0
Форумы / PowerBuilder [игнор отключен] [закрыт для гостей] / Сложные типы в объектах, создаваемых с помощью SharedObjectRegister / 10 сообщений из 10, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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