|
|
|
как сделать динамически обновлямый запрос
|
|||
|---|---|---|---|
|
#18+
Приветствую всех! Необходимо в программе на ( АСА 8 + Power Builder 9) сделать запрос, который будет автоматически обновляться, по таймеру. Может существует встренное средство в АСА? Как в Интербейзе например, свойство timesql (не помню точно), в котором указываешь время в секундах синхронизации информации в БД с информацией на клиенте. Добавили в базу пачку записей а тебе кнопку RETRIEVE надо жать, просветите неуча пожалуйста. Зарание благодарен. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.08.2004, 00:14 |
|
||
|
как сделать динамически обновлямый запрос
|
|||
|---|---|---|---|
|
#18+
Считывание данных проблема не сервера, а клиента, поэтому нужно искать ответ в PB. Например можно создать таймер в окне и там перечитывать данные или флаг обновления. Если непременно нужно решать задачу на стороне сервера, то можно отправлять сообщение на клиент из триггера либо завести событие по расписанию (см. "scheduled events") и из него отправлять сообщение на клиент. Я знаю как это сделать руками через TCP/UDP и соответсвующий слушатель на стороне PB (все через внешние функции и DLL), но скорее всего есть более простое решение. В интербейзе наверняка так и делается, поскольку клиент может услышать сообщение с сервера только когда он слушает. Т.е. должен быть специальный клиент, а не клиент вообще, иначе сообщение улетит в пустоту. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.08.2004, 01:07 |
|
||
|
как сделать динамически обновлямый запрос
|
|||
|---|---|---|---|
|
#18+
В PB в нужной форме создаете кнопку или как вам удобней. Настраиваете таймер: time(600) //время в секундах Далее в вашей форме пишите скрипт на событие TIMER. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.08.2004, 11:40 |
|
||
|
как сделать динамически обновлямый запрос
|
|||
|---|---|---|---|
|
#18+
См. также Timer_Interval DataWindow object property ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.08.2004, 13:31 |
|
||
|
как сделать динамически обновлямый запрос
|
|||
|---|---|---|---|
|
#18+
Честно говоря, я сам не понял как используется Timer_Interval, может кто растолкует? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.08.2004, 13:52 |
|
||
|
как сделать динамически обновлямый запрос
|
|||
|---|---|---|---|
|
#18+
Простейший пример использования DW Time Interval http://www.rgagnon.com/pbdetails/pb-0217.html ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.08.2004, 14:39 |
|
||
|
как сделать динамически обновлямый запрос
|
|||
|---|---|---|---|
|
#18+
Все это конечно хорошо, я на счет свойства Time Interval, но оно никак в данном вопросе не спасает. Ведь метод Retrieve вызывается для DW controla, и внутри DW object его ну никак программно не вызовешь. Или я ошибаюсь??? Может есть возможность? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.08.2004, 01:02 |
|
||
|
как сделать динамически обновлямый запрос
|
|||
|---|---|---|---|
|
#18+
Не помню где я это откопал, но делается так. В DW контроле , у меня это в u_dw: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. функцией of_settimer(интервал в секундах) задаешь интервал обновления DW Успехов! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.08.2004, 01:46 |
|
||
|
как сделать динамически обновлямый запрос
|
|||
|---|---|---|---|
|
#18+
А чем не нравится Event timer() в окне? PS. Ох и не просто же реализовть корректный динимически обновляемый запрос. Неужели это настолько необходимо? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.08.2004, 07:25 |
|
||
|
как сделать динамически обновлямый запрос
|
|||
|---|---|---|---|
|
#18+
ErmakА чем не нравится Event timer() в окне? А если у меня одно окно на все отображаемые данные в приложении: формы, списки, отчеты и пр. Не для спора, просто у каждого свои решения. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.08.2004, 11:34 |
|
||
|
как сделать динамически обновлямый запрос
|
|||
|---|---|---|---|
|
#18+
авторА если у меня одно окно на все отображаемые данные в приложении: формы, списки, отчеты и пр. Не для спора, просто у каждого свои решения. Не для спора, но для размышления. За то время, что Вы ищите своё решение, проблему, на мой взгляд, уже можно было решить. Есть ещё timing object. Наследуйте его. В Instance var'ах определите переменную с типом dataWindow или с типом наследника от DataWindow (у меня будет uov_dw), определите ф-цию, что-то вроде of_setdw( a_dw ) для инициализации этой переменной. Далее используйте событие timer() для обновления данных в своем dataWindow. Если динамически обновлять данные необходимо более чем в 1-м Dw, то оформите это решение в виде "сервиса" для своего объекта dw. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.08.2004, 11:57 |
|
||
|
|

start [/forum/topic.php?fid=15&fpage=100&tid=1338925]: |
0ms |
get settings: |
11ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
54ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
48ms |
get tp. blocked users: |
2ms |
| others: | 12ms |
| total: | 164ms |

| 0 / 0 |

Извините, этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
... ля, ля, ля ...