|
|
|
Вызов функции объекта в DataWindow
|
|||
|---|---|---|---|
|
#18+
Здравствуйте, уважаемые коллеги! Помогите, пожалуйста, разобраться с одним интересующим меня вопросом. Известно, что внутри DataWindow (в Computed Field'ах, например) можно вызывать не только функции PowerBuilder'а, но и свои собственные функции. А вот можно ли каким-то образом вызывать функции пользовательского объекта? Если да - то как это лучше сделать? Если нет - то как можно обойти существующую проблему? Заранее спасибо. ;-) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.11.2005, 22:16 |
|
||
|
Вызов функции объекта в DataWindow
|
|||
|---|---|---|---|
|
#18+
Только через глобальную ф-ю. Естественно при этом нужно иметь глобальную ссылку на экземпляр объекта. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.11.2005, 23:05 |
|
||
|
Вызов функции объекта в DataWindow
|
|||
|---|---|---|---|
|
#18+
Anatoly MoskovskЕстественно при этом нужно иметь глобальную ссылку на экземпляр объекта. А внутри функции объект создать разве нельзя? :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.12.2005, 09:47 |
|
||
|
Вызов функции объекта в DataWindow
|
|||
|---|---|---|---|
|
#18+
Есть один способ... правда он недокументирован. Поэтому использовать его не рекомендую. Пару лет назад столкнулся с такой возможностью в результате опечатки. Я не уверен что он будет работать во всех версиях Powerbuilder(в PB6 и PB9 работает) Заключается в следующем: Например у вас есть userobject n_cst_obj в котором объявлена функция integer of_test(integer parm1) Стандартный пример вызова функции: Код: plaintext 1. 2. Недокументированный пример вызова функции: Код: plaintext 1. 2. Так вот, если у вас есть глобальный экземпляр необходимого объекта, то можно попробовать вызвать его метод как глобальную функцию, вставив в начало списка параметров данный объект. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.12.2005, 10:51 |
|
||
|
Вызов функции объекта в DataWindow
|
|||
|---|---|---|---|
|
#18+
Добавлю еще, что данный метод работает не только с userobjects, но и с другими объектами powerbuilder. (commandbutton, datawindow и т.д.) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.12.2005, 10:59 |
|
||
|
Вызов функции объекта в DataWindow
|
|||
|---|---|---|---|
|
#18+
Ничё себе ты опечатался ;) Nikulitsa A.Есть один способ... правда он недокументирован. Поэтому использовать его не рекомендую. Пару лет назад столкнулся с такой возможностью в результате опечатки. Я не уверен что он будет работать во всех версиях Powerbuilder(в PB6 и PB9 работает) Код: plaintext Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.12.2005, 13:55 |
|
||
|
Вызов функции объекта в DataWindow
|
|||
|---|---|---|---|
|
#18+
Гость форумаНичё себе ты опечатался ;) Nikulitsa A.Есть один способ... правда он недокументирован. Поэтому использовать его не рекомендую. Пару лет назад столкнулся с такой возможностью в результате опечатки. Я не уверен что он будет работать во всех версиях Powerbuilder(в PB6 и PB9 работает) Код: plaintext Код: plaintext На самом деле опечатка произошла не в списке параметров, в названии функции. вместо of_retrieve(dw_1) было написано retrieve(dw_1) что было успешно проглочено PowerBuilder-ом, хотя по идее должно было выдать синтаксическую ошибку. В результате анализа причин сего безобразия и была обнаружена данная недокументированная возможность. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.12.2005, 14:24 |
|
||
|
Вызов функции объекта в DataWindow
|
|||
|---|---|---|---|
|
#18+
Забавно. Надо попробовать. Вообще-то это может значить вполне обьяснимую для ООП вещь - в стеке вызова функции явноили неявно задается ссылка на контекст или обьект , в составе которого сидит функции - по умолчанию предполагается ссылка на глобальный контекст приложения. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.12.2005, 17:11 |
|
||
|
|

start [/forum/topic.php?fid=15&msg=33409814&tid=1337993]: |
0ms |
get settings: |
9ms |
get forum list: |
18ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
65ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
66ms |
get tp. blocked users: |
2ms |
| others: | 202ms |
| total: | 385ms |

| 0 / 0 |
