Гость
Форумы / PowerBuilder [игнор отключен] [закрыт для гостей] / Отправить запрос по таймеру / 11 сообщений из 11, страница 1 из 1
15.06.2009, 17:48
    #36041964
nafanya1986
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отправить запрос по таймеру
Извините если повторяюсь. Поиском пользовался нашёл кучу тем подобных, но всё равно не дошло как сделать.
Просьба помочь.

Мне нужно сделать выполнение запроса по таймеру.
время для таймера берётся из singleedit

То есть мне нужно, чтобы запрос с какой-то периодичностью постоянно выполнялся.
...
Рейтинг: 0 / 0
15.06.2009, 18:31
    #36042057
ChV
ChV
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отправить запрос по таймеру
Не понятен вопрос.
Почитайте Help для объектов Timing.
Какие у него свойства, события, функции.
Ну а далее все просто :
- создаете объект,
- значением из singleedit задаете ему интервал ( this.start( .... ) )
- в event-e "timer" - прописываете выполнение запроса.
.......

Good Luck !
...
Рейтинг: 0 / 0
15.06.2009, 18:35
    #36042070
Филипп
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отправить запрос по таймеру
Ну и если нужно, чтобы запрос с какой-то периодичностью постоянно выполнялся, и при этом НЕ БЛОКИРОВАЛ интерфейс, то читайте это...
...
Рейтинг: 0 / 0
15.06.2009, 21:26
    #36042314
nafanya1986
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отправить запрос по таймеру
Вы конечно простите такого идиота как я, но не пойму как создать объект

string MyTimer
MyTimer = CREATE string
MyTimer.Start(sle_1.text)

как я понимаю другой тип должен быть, но какой? в хелпе дан uo_timer, но не пашет.
...
Рейтинг: 0 / 0
15.06.2009, 22:55
    #36042393
Филипп
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отправить запрос по таймеру
nafanya1986Вы конечно простите такого идиота как я
Нет, такое не прощается :-)
...
Рейтинг: 0 / 0
15.06.2009, 23:11
    #36042406
nafanya1986
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отправить запрос по таймеру
Ну извините, если что.
Не рублю в этом деле :-(
...
Рейтинг: 0 / 0
16.06.2009, 00:29
    #36042462
nafanya1986
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отправить запрос по таймеру
Подскажите, пожалуйста, вот я выполнил запрос, взятый из mle_1

string zapr;
string a;
zapr=mle_1.text
execute immediate :zapr

1) мне нужно single edit'у присвоить результат запроса, как это сделать

пробовал так:

sle_7.text=string(execute immediate :zapr)

не выходит

2) Как всё таки сделать, чтобы по таймеру выполнялся запрос?
...
Рейтинг: 0 / 0
16.06.2009, 01:37
    #36042497
edmikeca
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отправить запрос по таймеру
...
Рейтинг: 0 / 0
16.06.2009, 02:11
    #36042512
Anatoly Moskovsky
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отправить запрос по таймеру
nafanya1986
пробовал так:
sle_7.text=string(execute immediate :zapr)
не выходит

Не знаю как давно вы приняли решение стать программистом, но спешу вам сообщить, что вообще-то в программировании не принято гадать (а процитированное - ни что иное как гадание).
Есть документация и Гугл, где все или многое написано, с примерами.
Из документации в частности легко выяснить, что execute immediate является Dynamic SQL Format 1 который не предусматривает ни передачу параметров ни возврат результа. Из справки по Dynamic SQL Format 1 легко выяснить, что есть и другие варианты Dynamic SQL, которые позволяют это делать. Например Dynamic SQL Format 3.
Короче говоря прочитайте хелп по ключевым словам Dynamic SQL Format 3 и пример оттуда.

А вообще-то задача поставлена некорректно. Результат запроса - это двухмерная таблица. Как вы ее собираетесь впихнуть в скаляр?
Если вам нужно отображать всю таблицу, так используйте Datawindow и CreateFromSQL.
Заодно и динамический SQL не нужен будет.
Кстати, даже если вам не нужна вся таблица результата, то все равно вместо Dynamic SQL желательно использовать Datastore (невизуальный аналог Datawindow).

nafanya19862) Как всё таки сделать, чтобы по таймеру выполнялся запрос?
Cоздайте наследника от встроенного класса Timing и в его событии timer выполняйте действия.

Хотя учитывая что у вас нулевые знания по PowerBuilder'у то вам проще будет использовать другой метод: в каждом окне есть событие timer, его и переопределяйте, а запуск - встроенной глобальной ф-ей Timer(), см. хелп. Естественно в этом случае таймер будет работать пока не закроют окно.

А вообще на вашем месте я бы для начала прочел книжку по любой версии PB и изучил бы азы.
По 5 и 6 версии есть несколько книжек в электронной форме - на этом форуме мелькали ссылки.
...
Рейтинг: 0 / 0
16.06.2009, 02:35
    #36042521
nafanya1986
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отправить запрос по таймеру
Anatoly Moskovsky, огромное спасибо, очень выручили.

Реально я знаю, что я по сути не программист, но иногда приходится ))
Очень сложно найти литературу для PowerBuilder, а хелпом я нормально и не научился пользоваться. Ещё раз огромное спасибо.
...
Рейтинг: 0 / 0
16.06.2009, 11:58
    #36043093
spas2001
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Отправить запрос по таймеру
Жесть как она есть.... )
-----------------------------------------------------------------------------
Главная деталь любой машины - голова ее владельца
...
Рейтинг: 0 / 0
Форумы / PowerBuilder [игнор отключен] [закрыт для гостей] / Отправить запрос по таймеру / 11 сообщений из 11, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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