powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / PowerBuilder [игнор отключен] [закрыт для гостей] / Pb-9 + долгий вызов макроса и ошибка...
16 сообщений из 16, страница 1 из 1
Pb-9 + долгий вызов макроса и ошибка...
    #37204647
boogiman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Приветсвую, коллеги!
Есть вопрос по макросам. Собственно в чём трабл, некий макрос толкается в цикле по 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
Pb-9 + долгий вызов макроса и ошибка...
    #37204957
VanoR
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Попробуйте в свой цикл GarbageCollect() вставить после каждого end try
...
Рейтинг: 0 / 0
Pb-9 + долгий вызов макроса и ошибка...
    #37205192
boogiman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть перед каждым вызовом - GarbageCollect() . Не то...
...
Рейтинг: 0 / 0
Pb-9 + долгий вызов макроса и ошибка...
    #37205216
Фотография Ikar
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
VanoRПопробуйте в свой цикл GarbageCollect() вставить после каждого end try

GarbageCollect() ставится не после END TRY а в FINALLY
...
Рейтинг: 0 / 0
Pb-9 + долгий вызов макроса и ошибка...
    #37205431
Фотография spas2001
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Не, не поможет, если только параллельным потоком пустить, а тут слип забахать или еще какую заглушку, периодически проверяя результат
...
Рейтинг: 0 / 0
Pb-9 + долгий вызов макроса и ошибка...
    #37205989
boogiman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
> To spas2001
Неее первичные файлы должны обрабатываться друг за другом, паралельный процесс не подойдёт. Задачу в лоб никак не решить простановкой какой нить опцией в приложении или в самом Excel? Вообще откуда такое ограничение на ожидание не более 5-ти минут? (Забыл уточнить - Office-2003).
...
Рейтинг: 0 / 0
Pb-9 + долгий вызов макроса и ошибка...
    #37206032
Фотография spas2001
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Выдача сообщений, параметр DisplayAlerts у вас в каком положении находится?
...
Рейтинг: 0 / 0
Pb-9 + долгий вызов макроса и ошибка...
    #37206079
boogiman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
False
...
Рейтинг: 0 / 0
Pb-9 + долгий вызов макроса и ошибка...
    #37206084
Фотография spas2001
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Включите, посмотрим хоть что будет выдавать
...
Рейтинг: 0 / 0
Pb-9 + долгий вызов макроса и ошибка...
    #37206203
boogiman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вы имеете в виду что Excel выдаёт или Power - какую системную ошибку бросает на эран. Второе у меня есть!
...
Рейтинг: 0 / 0
Pb-9 + долгий вызов макроса и ошибка...
    #37206226
Фотография spas2001
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Excel конечно, а то может там где-нибудь вопрос вылазит
...
Рейтинг: 0 / 0
Pb-9 + долгий вызов макроса и ошибка...
    #37206422
Фотография Ikar
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
oExcel.SetAutomationTimeout(<timeout_on_seconds>)
...
Рейтинг: 0 / 0
Pb-9 + долгий вызов макроса и ошибка...
    #37206442
boogiman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
> To Ikar
А как этого добиться? у меня Excel это проглатывать не хочет!
...
Рейтинг: 0 / 0
Pb-9 + долгий вызов макроса и ошибка...
    #37206633
boogiman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Век живи и учись, ещё и в хелпе написано тоже самое , да и ответ про 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
Pb-9 + долгий вызов макроса и ошибка...
    #37206884
Фотография spas2001
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вот, а говорил ничего сделать нельзя:)
...
Рейтинг: 0 / 0
Pb-9 + долгий вызов макроса и ошибка...
    #37207074
Фотография Ikar
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да, точно, это я чуть-было не ввел в заблуждение - установка таймаута в милисекундах, а не в секундах
...
Рейтинг: 0 / 0
16 сообщений из 16, страница 1 из 1
Форумы / PowerBuilder [игнор отключен] [закрыт для гостей] / Pb-9 + долгий вызов макроса и ошибка...
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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