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

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

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

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

Уведомления на почту в Lotus Notes

  • Автор темы alexkapustin
  • Дата начала
A

alexkapustin

коллеги, доьрого времени суток
столкнулся со следующей проблемой
может кто отремонтирует код.
Заранее спасибо

есть агент выполняется по расписанию
обращается к виду который отображает по 10-20 документов созданные разными пользователями. документы одного уровня.
он красиво считает все документыи отправлет мини отчет о том что было создано определенное кол-во документов
но хотелось бы чтот бы агент считал не общую сумму по каждому пользователь
т.е. было создано пользователем А - 5
пользователем Б - 4 и т.д.

инфо о имени пользовтеля отображено в виде.

вот сам код


Код:
Option Public
Dim db As NotesDatabase
Dim view As NotesView
Dim doc As NotesDocument
Dim uidoc As NotesUIDocument


Sub Initialize
Dim session As New NotesSession
Dim encol As NotesViewEntryCollection
Dim en As NotesViewEntry
Dim col As NotesDocumentCollection

Dim refDdoc As NotesDocument
Dim person As String

Dim ChDoc As NotesDocument

Dim wrk As New NotesUIWorkspace


Set db = session.CurrentDatabase
Set view = db.GetView("(crm)")
Set encol = view.AllEntries
Set en = encol.GetFirstEntry




person = en.ColumnValues(0)


For i=1 To encol.Count
Set en = encol.GetNthEntry(i)
If person <> en.ColumnValues(0) Then
Call SendNotification(person)
person = en.ColumnValues(0)
End If

Next

If person = en.ColumnValues(0) Then
Call SendNotification(person)
End If



End Sub

Sub SendNotification(person As String)
Dim rtitem As NotesRichTextItem
Dim en As NotesViewEntry

'	Dim rtitem As NotesRichTextItem
'	Dim en As NotesViewEntry
Dim session As New NotesSession
Dim doc As NotesDocument
Dim newDoc As NotesDocument
Dim dbMailBox As NotesDatabase

Set encol = view.GetAllEntriesByKey(person, True)
Set doc = db.CreateDocument
doc.Form = "Memo"
doc.Subject = "Уведомление о вчерашних выполненных контактах"

Set ritem = New NotesRichTextItem( doc , "Body" )

Call ritem.AppendText( "Уведомляем, что вчера сделано следующие кол-во контактов: " )
Call ritem.AddNewLine(2)


Call ritem.AppendText( encol.Count & " - " )
Call ritem.AddNewLine(1)		
'__________________________________________________________		



Print (person)

'Call doc.Send(False, person)
Call doc.Save(True,True)

Set dbMailBox = session.GetDatabase( db.Server, "mail.box")
Set newDoc = doc.CopyToDatabase( dbMailBox )
newDoc.SendTo = person
newDoc.Recipients = person
Call newDoc.Save(True,True)


End Sub
 

lmike

нет, пердело совершенство
Lotus Team
27.08.2008
7 940
609
BIT
210
что выражает сия просьба, кроме как - нежелание самому разбираться (ни капли)
даже код поленились оформить в соответ. тегах, а "эта странная фраза"
но хотелось бы чтот бы агент считал не общую сумму по каждому пользователь
- язык русский не родной и нам надо угадать ("казнить нельзя помиловать")
 
H

hosm

добавить сюда в цикл For переменную-счетчик и внутри If считывать и обнулять - это так сложно? :)
Или у ентрисов можно глянуть ChildCount (емнип) - ну, там от структуры вьюхи зависит.
И GetNthEntry неэффективно юзать, лучше через First и Next

Добавлено: Omh не, просто новичек, скорее всего. тот вряд ли додумается до прокси другой страны :)
 
H

hosm

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

alexkapustin

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

Гляньте если не сложно.
 
A

alexkapustin

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

Если будет возможность гляньте плиз этот агент
спасибо
 
Мы в соцсетях:

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