Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / PowerBuilder [игнор отключен] [закрыт для гостей] / Общий класс datawindow и datastore? / 18 сообщений из 18, страница 1 из 1
29.08.2008, 15:10
    #35513342
vovan_z
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Общий класс datawindow и datastore?
1.Ситуация следующая:
Сделал фунцию в PB, в качестве параметра передаю в нее ссылку на datawindow. Возвращаю строку из функции. В фунции пользую метод rowcount() и беру данные через dw.object...
И тут надо стало что бы функция еще обрабатывала не datawindiw а datastore. Если меняю тип входного параметра функции на powerobject то перестают работать метод rowcount() и dw.object...
Очень не хочется делать несколько функций с одинаковым скриптом, но с разным типом входного параметра,так как функций написал таких уже много.
Подскажите какие варианты есть?
2. Есть идея, создать в памяти окно(visible=false), на нем datawindow и работать с ним, подскажите скрипт для создания этих объектов?
спасибо.
...
Рейтинг: 0 / 0
29.08.2008, 15:31
    #35513422
Локшин Марк
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Общий класс datawindow и datastore?
Если вставить перед вызовом функции dynamic, то будет работать, но несколько медленней.
...
Рейтинг: 0 / 0
29.08.2008, 15:33
    #35513429
Локшин Марк
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Общий класс datawindow и datastore?
Ну и, естейственно, ослабнет контроль типов.
...
Рейтинг: 0 / 0
29.08.2008, 17:04
    #35513716
Локшин Марк
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Общий класс datawindow и datastore?
А через dw.object к значению конкретного поля лучше не обращаться - медленней работает чем через setitem/getitem....
...
Рейтинг: 0 / 0
29.08.2008, 23:00
    #35514135
AIS
AIS
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Общий класс datawindow и datastore?
Если я правильно понял, то входной параметр функции надо установить как Any, а в скрипте уже выбирать через TypeOf какой тип входил. Ну и т.д.
...
Рейтинг: 0 / 0
30.08.2008, 19:22
    #35514504
Локшин Марк
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Общий класс datawindow и datastore?
AISЕсли я правильно понял, то входной параметр функции надо установить как Any, а в скрипте уже выбирать через TypeOf какой тип входил. Ну и т.д.
Такой подход приведет к тому, что два раза по сути один и тот же код придется копировать.
...
Рейтинг: 0 / 0
31.08.2008, 10:19
    #35514795
AIS
AIS
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Общий класс datawindow и datastore?
Локшин Марк AISЕсли я правильно понял, то входной параметр функции надо установить как Any, а в скрипте уже выбирать через TypeOf какой тип входил. Ну и т.д.
Такой подход приведет к тому, что два раза по сути один и тот же код придется копировать.
А помоему, это традиционное решение такого вопроса как п.1. Возможно и придется что-то копировать, но это будет одна функция и с универсальным входным параметром. Лучше иметь одну такую функцию, чем две с одинаковыми скриптами.
...
Рейтинг: 0 / 0
31.08.2008, 11:10
    #35514816
18-я весна
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Общий класс datawindow и datastore?
Я применяю следующий подход.
Создаю несколько функций с разными типами аргументов, но одинаковыми именами этих аргументов.
Тело функции просто копирую. В начале текста функции есть комментарий который перечисляет все функции и напоминает что после модификации необходимо скопировать весь текст в другие ф-и.
В скрипте сборке приложения тексты функций экспортируются и сравниваются. При различиях сборка не запускается.

Это дает максимально быстрый код с контролем типов и низкими затратами на сопровождение кода.
...
Рейтинг: 0 / 0
01.09.2008, 09:25
    #35515388
Локшин Марк
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Общий класс datawindow и datastore?
18-я веснаЯ применяю следующий подход.
...
Это дает максимально быстрый код с контролем типов и низкими затратами на сопровождение кода.
В PB12 этот вопрос судя по Вашей информации наконец то обещают решить :)
...
Рейтинг: 0 / 0
02.09.2008, 18:42
    #35518873
Филипп
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Общий класс datawindow и datastore?
AISЕсли я правильно понял, то входной параметр функции надо установить как Any, а в скрипте уже выбирать через TypeOf какой тип входил. Ну и т.д.
Даже если и делать так, так параметр естественно должен быть НЕ Any, а PowerObject.
...
Рейтинг: 0 / 0
03.09.2008, 13:13
    #35520148
vovan_z
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Общий класс datawindow и datastore?
я тоже же сделал функции с одинаковыми скриптами и именами аргументов. Но с разными типами аргументов.
ват только не понял:
18-я веснаЯ применяю следующий подход.
В скрипте сборке приложения тексты функций экспортируются и сравниваются. При различиях сборка не запускается.
кода.
Как заставить PB сравнивать функции и блокировать сборку?
...
Рейтинг: 0 / 0
03.09.2008, 14:06
    #35520304
Anatoly Moskovsky
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Общий класс datawindow и datastore?
vovan_zКак заставить PB сравнивать функции и блокировать сборку?
PB - никак, а скриптом - можно :)
Берете PblDump - экспортируете нужный объект, а потом натравливаете на него Perl и регулярными выражениями вырезаете нужные методы и сравниваете.
...
Рейтинг: 0 / 0
03.09.2008, 14:22
    #35520357
vovan_z
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Общий класс datawindow и datastore?
PblDump экспортирует в собственном формате или в формате power builder?Если PB то какой версии?
...
Рейтинг: 0 / 0
03.09.2008, 14:57
    #35520485
Anatoly Moskovsky
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Общий класс datawindow и datastore?
vovan_zPblDump экспортирует в собственном формате или в формате power builder?Если PB то какой версии?
В PB формате. Поддерживаются все версии.

Прикладываю пример скрипта.
...
Рейтинг: 0 / 0
03.09.2008, 16:33
    #35520853
vovan_z
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Общий класс datawindow и datastore?
спасибо
...
Рейтинг: 0 / 0
04.09.2008, 08:32
    #35521590
AIS
AIS
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Общий класс datawindow и datastore?
Филипп AISЕсли я правильно понял, то входной параметр функции надо установить как Any, а в скрипте уже выбирать через TypeOf какой тип входил. Ну и т.д.
Даже если и делать так, так параметр естественно должен быть НЕ Any, а PowerObject.
Разве PowerObject не входит в понятие Any?
Цитата:
PowerBuilder also supports the Any datatype, which can hold any kind of value, including standard datatypes, objects, structures, and arrays.
...
Рейтинг: 0 / 0
04.09.2008, 11:42
    #35521996
Anatoly Moskovsky
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Общий класс datawindow и datastore?
AIS ФилиппДаже если и делать так, так параметр естественно должен быть НЕ Any, а PowerObject.
Разве PowerObject не входит в понятие Any?

Филипп имел в виду другое.
Следует использовать тип, максимально близкий в иерархии типов, чтобы максимально перенести на компилятор функции контроля типов.
...
Рейтинг: 0 / 0
05.09.2008, 10:47
    #35524004
vovan_z
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Общий класс datawindow и datastore?
Согласен с Анатолием
...
Рейтинг: 0 / 0
Форумы / PowerBuilder [игнор отключен] [закрыт для гостей] / Общий класс datawindow и datastore? / 18 сообщений из 18, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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