26.10.2004, 13:02 | #21 |
Участник
|
Кстати насчёт потоков.
Как сказано в помощи методы класса Object распадаются на три ветки - методы для работы в многпоточной среде, методы для работы с тайм-аутами и методы . Так вот методы wait и notify - относятся к многопоточности (хотя в самой аксапте я её еще ни разу не видел). А методы setTimeout, cancelTimeout и getTimeoutTimerHandle судя по всему работают с обычными MS Windows таймерами. Т.е. дело обходится без дополнительных потоков - просто на основной поток приложения вешаются таймеры и когда они срабатывают (через стандартную очередь сообщений) этот поток активирует код нашего Object-а. А-ля Win API. |
|
|
За это сообщение автора поблагодарили: Logger (3). |
26.10.2004, 13:07 | #22 |
Участник
|
Цитата:
Изначально опубликовано mpogorelov
приведи пожалуйста пример как ты это делал PHP код:
PHP код:
|
|
26.10.2004, 21:15 | #23 |
Участник
|
спасибо за пример
сделал подобным образом почему-то всё равно не работает буду разбираться |
|
27.10.2004, 11:45 | #24 |
Роман Долгополов (RDOL)
|
Цитата:
Изначально опубликовано Alks
Кстати насчёт потоков. Как сказано в помощи методы класса Object распадаются на три ветки - методы для работы в многпоточной среде, методы для работы с тайм-аутами и методы . Так вот методы wait и notify - относятся к многопоточности (хотя в самой аксапте я её еще ни разу не видел). в 3.0 появилась настоящая, хоть и малость глючная многопоточность - класс Thread. Пример есть в форме Tutorial_Thread |
|
27.10.2004, 12:47 | #25 |
Участник
|
Цитата:
Изначально опубликовано mpogorelov
Цель: написание агента который висел бы в памяти и выполнял нужные действия с какой-то переодичностью Чем ваш подход отличается от сервера выполнения пакетов? Чем вас не устроил стандартный сервер пакетов? Почему вы решили вкладывать силы в свою разработку? |
|
02.11.2004, 19:14 | #26 |
Участник
|
Цитата:
Изначально опубликовано mazzy
Прежде чем читать дальше и разбираться в вашем коде, можно задать вопросы? Чем ваш подход отличается от сервера выполнения пакетов? Чем вас не устроил стандартный сервер пакетов? Почему вы решили вкладывать силы в свою разработку? Axapta должна реагировать на внешнее событие, а именно открывать нужную форму. Реализована задача была так: Внешнее приложение через COMConnector пишет в табличку требуемые параметры. В Axapta работает класс наследованный от Object. На метод этого класса, который читает данные из таблички и открывает форму на клиенте, подвешан таймер. Как решить эту задачу с помощью пакетов мне не понятно. Кстати данное решение мне не очень нравится тем, что грузится сеть(много пользователей). Если у кого есть соображения по этому поводу, поделитесь пожалуйста. |
|
02.11.2004, 21:27 | #27 |
Участник
|
класс, который можно выполнять в пакетах:
Tutorial_RunbaseBatch Tutorial_RunbaseForm Tutorial_RunbaseReport по поводу вашей задачи. разберитесь как действует форма tutorial_Sushi tutorial_SushiWatcher причем для вас важен метод tutorial_SushiWatcher.lookForSushiOrder() последняя его строчка. так вот. Суть пакетов. При запуске сервера пакетов, открывается форма, которая периодически опрашивает таблицу пакетов. И выполняет их. Ваша задача - при наступлении события не "писать в табличку нужные параметры", а запустить пакет с нужными вам параметрами. Все остальное сделает сервер пакетов. Вы же хотите "упростить" себе задачу. При этом скатываетесь в повторение существующего. Но даже если так.... То вам нужна форма-watcher, которая периодически просматривает вашу табличку и при наступлении события делает нужные вам действия. |
|
03.11.2004, 11:43 | #28 |
Участник
|
Цитата:
Изначально опубликовано mazzy
класс, который можно выполнять в пакетах: причем для вас важен метод tutorial_SushiWatcher.lookForSushiOrder() последняя его строчка. Цитата:
Ваша задача - при наступлении события не "писать в табличку нужные параметры", а запустить пакет с нужными вам параметрами. Все остальное сделает сервер пакетов. это много можно ли задать более частую периодичность? |
|
03.11.2004, 23:56 | #29 |
Участник
|
можно.
посмотрите в форму, которая реализует сервер пакетов |
|