|
|
#1 |
|
Программатор
|
Закрыть программно Infolog
Люди добрые
Подскажите как грохнуть инфолог. Закрыть формочку эту
|
|
|
|
|
#2 |
|
Злыдни
|
А зачем? Установите в параметрах уровень детализации "Ошибки" и живите спокойно
__________________
люди...считают, что если техника не ломается, то ее не нужно ремонтировать. Инженеры считают, что если она не ломается, то нуждается в совершенствовании. |
|
|
|
|
#3 |
|
Программатор
|
Ну наступает такой момент в жизни когда он не нужен
Ну не нужно пугать пользователя ссобщением, что то то не найдено в Мар Ни к чему это ему...
|
|
|
|
|
#4 |
|
Участник
|
X++: infolog.clear(); |
|
|
|
|
#5 |
|
Программатор
|
Хотя наверно каждый раз как сообщение выходит чистить его... И тогда вроде будет норм.
|
|
|
|
|
#6 |
|
Banned
|
Для 3.0: Изучите класс Info, метод closeInfoLogDelayed().
|
|
|
|
|
#7 |
|
Программатор
|
|
|
|
|
|
#8 |
|
NavAx
|
Можно тупо заменить код в Info.add на return _exception;
__________________
Isn't it nice when things just work? |
|
|
|
|
#9 |
|
Administrator
|
У Map есть метод exists()
__________________
Not registered yet? Register here! Have comments, questions, suggestions or anything else regarding our web site? Don't hesitate, send them to me |
|
|
|
|
#10 |
|
Участник
|
Если надо, что бы сообщения инфолог вообще не выводились для какого-то куска кода, можно воспользоваться таким приемом
X++: int errorsPerBatch = infolog.errorsPerBatch(); Map map = new Map(Types::Integer, Types::String); ; if (errorsPerBatch < 0) errorsPerBatch = maxint()-1; try { infolog.errorsPerBatch(-1); //--> Сюда вставляем нужный нам код map.lookup(1); //<-- Сюда вставляем нужный нам код infolog.errorsPerBatch(errorsPerBatch); } catch { infolog.errorsPerBatch(errorsPerBatch); }
__________________
Axapta v.3.0 sp5 kr2 |
|
|
|
| За это сообщение автора поблагодарили: Sada (1), alex55 (1). | |
|
|
#11 |
|
Moderator
|
Можно, я таким образом подавлял COM-ошибки при работе с Excel. Вот только оборачивать каждый вызов вот такой оберткой не очень удобно и читаемо.
А что-либо более универсальное я, к сожалению, не придумал.
|
|
|
|
|
#12 |
|
Участник
|
Еще вариант, также через try/catch. Класс smmContactPersonsSynchronize, метод copyFieldsFromOutlook, подавляется вывод на экран ненужных сообщений об ошибках:
X++: // try { item = outlookNameSpace.GetItemFromID(strupr(_smmOutlookContacts.EntryId)); } catch(exception::Error) { infoLogLine = infolog.line(); // Remove unwanted system error message infolog.cut(infoLogLine, infoLogLine + 1); }
__________________
Денис Балуев. |
|
|
|
|
#13 |
|
Участник
|
Цитата:
Сообщение от denny
Еще вариант, также через try/catch. Класс smmContactPersonsSynchronize, метод copyFieldsFromOutlook, подавляется вывод на экран ненужных сообщений об ошибках:
X++: // try { item = outlookNameSpace.GetItemFromID(strupr(_smmOutlookContacts.EntryId)); } catch(exception::Error) { infoLogLine = infolog.line(); // Remove unwanted system error message infolog.cut(infoLogLine, infoLogLine + 1); } можно использовать примерно такой код:X++: int nLines = infolog.line(); try { // какая-то длительная обработка... } catch(exception::Error) { // оставляем только те сообщения, что возникли перед try {} infolog.clear(nLines); } |
|
|
|
|
#14 |
|
Moderator
|
Если это ответы мне
, то предложенные способы мне бы не подошли, так как исключения выбрасываемые при работе с COM объектами запишут в Infolog то, что они хотели записать и никакой try..catch тут не поможет.
|
|
|
|
|
#15 |
|
MCTS
|
Цитата:
Подскажите как грохнуть инфолог. Закрыть формочку эту
Для этого используем апишную функцию DestroyWindow The DestroyWindow function destroys the specified window Недостаток: убив окно, мы его больше не увидим в текущей сессии или CloseWindow Тhe CloseWindow function minimizes (but does not destroy) the specified window. Можно поступить немного по-другому окно инфолог - это ж форма SysInfologBrowser Итак, в дизайне свойство Frame - Dialog меняем на Standard Всё! Окно становится сворачиваемым. Не хочет пользователь видеть информацию, выводимую в инфолог - пусть сворачивает его. Как я уже выше говорил, программно свернуть инфолог можно функцией CloseWindow
__________________
![]() В глухомани, в лесу Несмотря на красу Дни проводит Лиса Патрикевна. Я никак не пойму Отчего, почему Не пускают куму На деревню |
|
|
|
|
|