Гость
Форумы / PowerBuilder [игнор отключен] [закрыт для гостей] / Pb-9 + долгий вызов макроса и ошибка... / 16 сообщений из 16, страница 1 из 1
07.04.2011, 14:13
    #37204647
boogiman
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Pb-9 + долгий вызов макроса и ошибка...
Приветсвую, коллеги!
Есть вопрос по макросам. Собственно в чём трабл, некий макрос толкается в цикле по 100 раз с клиентской части к примеру и из одних Excel файлов рождается куча маленьких (деваться было некуда из-за часто менющихся алгоритмов обработки файлов) .
Вся эта конструкция работала 2 года без проблем, но выросли объёмы и началось... Сейчас проблема в том, что если макрос работает более 5-ти минут (хотя бы 30 минут ждал ответ от макроса ), то программа считает процесс ошибочным и возвращает на клиент ошибку. Может кто с таким сталкивался, как это лечить? Спрасибо

Сам вызов макроса в цикле из PowerBuilder выглядит так:
try
ole.Run("Module3.Begin_work_av_newtecnology" , &
string(path_name_av ), &
string(file_name_av ), &
string(lpu_name_av )
)
CATCH (runtimeerror error2)
str_macr = "Module3.Begin_work_av_newtecnology" + ' ' + &
string(path_name_av ) + ' , ' + &
string(file_name_av ) + ' , ' + &
string(lpu_name_av )
messagebox("Ошибка!",'Не смог выполнить макрос! ' + error2.text + '~n' + &
' Споткнулся на файле =' + file_name_av + ' для ЛПУ = ' + lpu_name_av + '~n' + &
' Попытался выполнить ' + '~n' + str_macr ,StopSign!,Ok!)


return -1
end try
...
Рейтинг: 0 / 0
07.04.2011, 15:36
    #37204957
VanoR
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Pb-9 + долгий вызов макроса и ошибка...
Попробуйте в свой цикл GarbageCollect() вставить после каждого end try
...
Рейтинг: 0 / 0
07.04.2011, 16:55
    #37205192
boogiman
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Pb-9 + долгий вызов макроса и ошибка...
Есть перед каждым вызовом - GarbageCollect() . Не то...
...
Рейтинг: 0 / 0
07.04.2011, 17:04
    #37205216
Ikar
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Pb-9 + долгий вызов макроса и ошибка...
VanoRПопробуйте в свой цикл GarbageCollect() вставить после каждого end try

GarbageCollect() ставится не после END TRY а в FINALLY
...
Рейтинг: 0 / 0
07.04.2011, 18:37
    #37205431
spas2001
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Pb-9 + долгий вызов макроса и ошибка...
Не, не поможет, если только параллельным потоком пустить, а тут слип забахать или еще какую заглушку, периодически проверяя результат
...
Рейтинг: 0 / 0
08.04.2011, 09:34
    #37205989
boogiman
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Pb-9 + долгий вызов макроса и ошибка...
> To spas2001
Неее первичные файлы должны обрабатываться друг за другом, паралельный процесс не подойдёт. Задачу в лоб никак не решить простановкой какой нить опцией в приложении или в самом Excel? Вообще откуда такое ограничение на ожидание не более 5-ти минут? (Забыл уточнить - Office-2003).
...
Рейтинг: 0 / 0
08.04.2011, 10:04
    #37206032
spas2001
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Pb-9 + долгий вызов макроса и ошибка...
Выдача сообщений, параметр DisplayAlerts у вас в каком положении находится?
...
Рейтинг: 0 / 0
08.04.2011, 10:33
    #37206079
boogiman
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Pb-9 + долгий вызов макроса и ошибка...
False
...
Рейтинг: 0 / 0
08.04.2011, 10:38
    #37206084
spas2001
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Pb-9 + долгий вызов макроса и ошибка...
Включите, посмотрим хоть что будет выдавать
...
Рейтинг: 0 / 0
08.04.2011, 11:24
    #37206203
boogiman
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Pb-9 + долгий вызов макроса и ошибка...
Вы имеете в виду что Excel выдаёт или Power - какую системную ошибку бросает на эран. Второе у меня есть!
...
Рейтинг: 0 / 0
08.04.2011, 11:31
    #37206226
spas2001
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Pb-9 + долгий вызов макроса и ошибка...
Excel конечно, а то может там где-нибудь вопрос вылазит
...
Рейтинг: 0 / 0
08.04.2011, 12:28
    #37206422
Ikar
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Pb-9 + долгий вызов макроса и ошибка...
oExcel.SetAutomationTimeout(<timeout_on_seconds>)
...
Рейтинг: 0 / 0
08.04.2011, 12:38
    #37206442
boogiman
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Pb-9 + долгий вызов макроса и ошибка...
> To Ikar
А как этого добиться? у меня Excel это проглатывать не хочет!
...
Рейтинг: 0 / 0
08.04.2011, 13:34
    #37206633
boogiman
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Pb-9 + долгий вызов макроса и ошибка...
Век живи и учись, ещё и в хелпе написано тоже самое , да и ответ про 5-ть минут я получил:

Controls
OLEObject objects

Syntax
oleobject.SetAutomationTimeout ( interval )

Argument Description
oleobject The name of an OLEObject variable containing the object for which you want to set the timeout period.
interval A 32-bit signed long integer value (in milliseconds) specifying how long a PowerBuilder client waits before canceling a procedure call. The default value is 300,000 milliseconds (5 minutes). Specifying 0 or a negative value resets interval to the default value.
...
Рейтинг: 0 / 0
08.04.2011, 15:23
    #37206884
spas2001
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Pb-9 + долгий вызов макроса и ошибка...
Вот, а говорил ничего сделать нельзя:)
...
Рейтинг: 0 / 0
08.04.2011, 16:26
    #37207074
Ikar
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Pb-9 + долгий вызов макроса и ошибка...
Да, точно, это я чуть-было не ввел в заблуждение - установка таймаута в милисекундах, а не в секундах
...
Рейтинг: 0 / 0
Форумы / PowerBuilder [игнор отключен] [закрыт для гостей] / Pb-9 + долгий вызов макроса и ошибка... / 16 сообщений из 16, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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