• 15 апреля стартует «Курс «SQL-injection Master» ©» от команды The Codeby

    За 3 месяца вы пройдете путь от начальных навыков работы с SQL-запросами к базам данных до продвинутых техник. Научитесь находить уязвимости связанные с базами данных, и внедрять произвольный SQL-код в уязвимые приложения.

    На последнюю неделю приходится экзамен, где нужно будет показать свои навыки, взломав ряд уязвимых учебных сайтов, и добыть флаги. Успешно сдавшие экзамен получат сертификат.

    Запись на курс до 25 апреля. Получить промодоступ ...

Завис Agent Manager на сервере

Wanderstep

Lotus Team
23.03.2006
493
65
BIT
16
Не рестартует, не останавливается (ни по запросу tell, ни по макс.времени выполнения, пробитому в параметрах сервера) серверная служба Agent Manager. Что делать в таком случае?
Рестарт Domino сервера не помогает. Выполнение агента по расписанию в той БД отключил, но Agent Manager все равно подхватывает выполнение агента после рестарта.
 
M

morpheus

отключить задачу Agent Manager в ini файле сервера
 

Wanderstep

Lotus Team
23.03.2006
493
65
BIT
16
Меня ввели в заблуждение, сервер Лотуса еще не перегружался, так что будем наблюдать, что получится после его рестарта.

Другой вопрос, почему агент менеджер не отрубается по истечению максимального времени исполнения и не отвечает ни на какие запросы.
 
M

morpheus

<!--QuoteBegin-Wanderer+3:11:2006, 07:52 -->
<span class="vbquote">(Wanderer @ 3:11:2006, 07:52 )</span><!--QuoteEBegin-->тоит бесконечно на выполнении исполнение агента в одной базе
[snapback]47031" rel="nofollow" target="_blank[/snapback]​
[/quote]
а может просто агент в базе попал на бесконечный цикл, или там док сам на себяперепрыгивает...

если в ручную запустить, как себя ведёт агент в базе ?
 

Wanderstep

Lotus Team
23.03.2006
493
65
BIT
16
Вручную агент выполняется на ура.
Проблема возникла после недоступности одной папки, куда агент сохранял реплики. Папку потом вернули, а вот Агент Менеджер так до сих пор и висит на выполнении того агента.
 
A

aks

Была подобная проблема: агента уже не существовало, а сервер его всё равно пытался запустить. Всё ушло после перезапуска сервера.
 

Wanderstep

Lotus Team
23.03.2006
493
65
BIT
16
Так точно. Проблема разрешена перезагрузкой сервера, а точнее, вообще всей серверной станции - ибо проблема в файловой системе была.
 
L

Lexa-xa

Так точно. Проблема разрешена перезагрузкой сервера, а точнее, вообще всей серверной станции - ибо проблема в файловой системе была.

Слушайте, у меня такая проблема.
Есть агент, который выполняет действия с МС Ехсел, генерит данные туда, потом сохраняет в файл на диск и этот файл приаттачивает в Лотусовский документ, после чего (в конце работы агента) все созданные Ехсел файлы должны удаляться с диска.

Так вот, во время выполнения агента (на сервере) (иногда такое происходит), вылезает модальное окошко (окошко приложения МС Ехсел с предложением сохранить файл на диск и все-такое) и дальше агент на работает, и при этом другой агент той же базы не запускается (походу ждет пока завершится этот).

Приходится постоянно контролировать выполнение агента (Ехсел) на предмет данной проблемы, звонить администраторам и чтобы они вручную сходили в серверную и нажали на кнопочку "Нет" в этом дурацком окне.

Есть какой-нить вариант автоматически чтоли нажать на эту кнопочку или убрать окно??? :)
И можно ли сделать чтобы последующие агенты были зависимы от других агентов??? ;)
 
M

morpheus

Для: Lexa-xa
Возможно в скрипте где то идет создание, но в каком-то условии не происходит сохранение Excel документа.
 

Wanderstep

Lotus Team
23.03.2006
493
65
BIT
16
Это уже в разделе "Lotus-Программирование" надо было этот вопрос задавать.
 
L

Lexa-xa

Возможно в скрипте где то идет создание, но в каком-то условии не происходит сохранение Excel документа.

Самое интересное что когда тестю на своей базе все кучеряво, а там такая хрень, тем более возникает не постоянно.

Для: Wanderer
Это уже в разделе "Lotus-Программирование" надо было этот вопрос задавать.

Ну можно и там, но какая то проблема двоякая.

Код примерно следующий:
Код:
...
' Begin
Set xlApp = CreateObject("Excel.application")
....
while
...
' Обработка и все такое
...	
' Генерим имя файла из цифр
fName = "Ост задолж на " & "1_.xls"
filePathExcel = tempDir & "\" & fName
randD = Rnd() * 1000000
randS = Cstr(randD)
randS = String(6 - Len(randS), "0") & randS
filePathExcel = Mid(filePathExcel, 1, Len(filePathExcel) - 4)
filePathExcel = filePathExcel & randS & Right$(fName, 4)
' ========================================
' Сохраняем файлик на диск с уникальным номером
Call xlApp.Workbooks(1).SaveAs( filePathExcel )

Call grDoc.RemoveItem("anBody")
Set rtNew = grDoc.CreateRichTextItem("anBody") 	
Call rtNew.EmbedObject(EMBED_ATTACHMENT, "", filePathExcel)
If Not grDoc.IsUIDocOpen Then 
Call grDoc.Save(False, False)
Else
Print Cstr(count) & ": Документ не сохранен: " & clientNameForError
End If

nextDoc:
On Error Goto errApp
If Not xlApp.Workbooks Is Nothing Then 
' Если есть еще листы, то закрываем их БЕЗ сохранения
xlApp.Workbooks(1).Close False
End If

nextCode:
Set grDoc = compView.GetNextDocument( grDoc )
Wend

' =========ERROR HANDLER=======================
errL:
Обрабатываем возможную ошибку при концовке агента при закрытии приложения Ехсел
On Error Goto errEnd

По идее не должно быть активных книг, т.к. Ехсел может спросить про сохранение
If Not Isempty(xlApp) Then
If Not xlApp.ActiveWorkbook Is Nothing Then
xlApp.Workbooks(1).Close False
Print " ===== closed books with error mode ===== "
End If
xlApp.Quit
End If

i = Shell("cmd /c del /q " & tempDir & "\ост*.xls")
Print "======== Результат выполнения удаления Ехсел файлов = " & i

Print " ======== Обработка завершена ======== "
Exit Sub


А на счет администрирования, может быть есть какая нибудь команда, которая закрывает все окна вызванные агентом, или показывает, что сейчас делает агент ???
 
30.05.2006
1 345
12
BIT
0
У фонового агента не должно быть никаких окон! Домина этого не допускает, и просто не запускает на сервере агент с любым упоминанием любого UI-класса. Но ты её обманул - протащил контрабандой MS-UI. Так что "сам себе - злобный Буратино".
Разбирайся не с доминошным, а с MS-ным программированием. Есть там что-то аналогичное нашему SaveOptions="0"?
 
L

Lexa-xa

У фонового агента не должно быть никаких окон! Домина этого не допускает, и просто не запускает на сервере агент с любым упоминанием любого UI-класса. Но ты её обманул - протащил контрабандой MS-UI. Так что "сам себе - злобный Буратино".
Да, приходиться, а чтож делать если больше никак (ну пока не придумал другие варианты).

Есть там что-то аналогичное нашему SaveOptions="0"?
Судя по хелпу по Ехселю xlApp.Workbooks(1).Close False - закрывает файл без сохранения изменений

А вылетает скорее всего при xlApp.Quit (возможно остается все-таки какая-нить книга не сохраненная).
Есть шанс вылета на Call xlApp.Workbooks(1).SaveAs( filePathExcel ), но я думаю это маловероятно.


А по поводу администраторской части, есть какие-нить мысли ??? :)



Нашел свойство Ехселя xlApp.DisplayAlerts = False - не показывать окно. Попробую такую штуку, мож и поможет.
 
A

aks

Можно поинтересоваться, а что выводит:

Код:
 Print "======== Результат выполнения удаления Ехсел файлов = " & i

А по поводу сохранения у меня так:

Код:
wObj.Documents(1).saveas(filepath)

Это правда для Word, но Excel, я думаю, аналогично. Работает на сервере по расписанию.
 
L

Lexa-xa

Можно поинтересоваться, а что выводит:
Код:
 Print "======== Результат выполнения удаления Ехсел файлов = " & i
Вывод результат выполнения удаления файлов, если i=33 то удаление прошло успешно.

А по поводу сохранения у меня так:
Код:
wObj.Documents(1).saveas(filepath)
Это правда для Word, но Excel, я думаю, аналогично. Работает на сервере по расписанию.
Ну у меня также, просто если у тебя небольшое количество файлов, то в принципе нормально, а у меня их порядка чуть меньше 1000, поэтому есть шанс совпадения имен.
 
A

aks

А у меня чуть больше 1000 и доки по папкам раскладываются. А контролировать имя дока из программы не выйдет? У меня доки называются человеческими ФИО поэтому все разные.
 
L

Lexa-xa

А у меня чуть больше 1000 и доки по папкам раскладываются. А контролировать имя дока из программы не выйдет? У меня доки называются человеческими ФИО поэтому все разные.
А если у тебя агент выполняется одновременно на двух базах в которых имеются одинаковые фамилии??? ;)
 
A

aks

Прошу прощения, Доки - я имел ввиду документы (файлы) Word которые на диске раскладываются по папкам. Дык в чем проблема контролировать уникальность имен?
 
L

Lexa-xa

Прошу прощения, Доки - я имел ввиду документы (файлы) Word которые на диске раскладываются по папкам. Дык в чем проблема контролировать уникальность имен?
Да вроде никаких проблем то с уникальностью не нахожу (может конечно Рандомайз и подвести :( ), просто нету времени экспериментировать с поиском существующих имен и т.д. Может ошибка возникает и не в этой стадии выполнения агента а при закрытии Ехселя.

Пока что я переписал код с выше указанным свойством, посмотрим как сработается или нет, если что будем думать другие варианты решения задачи. ;)
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!