возможно ли программно создать/экспортировать агента в постороннюю лот

Тема в разделе "Lotus - Программирование", создана пользователем pokemaniac, 18 фев 2008.

  1. pokemaniac

    pokemaniac Гость

    Есть можно так сказать база которая работает с другими базами, и для полноценной работы, мне необходимо наличие определенного агента в обрабатываемых базах. Любые права на доступ к тем базам есть. Вопрос только как? DXL позволяет экспорт-импорт, но опять же в тех базах должны быть агенты импортеры, а их нету. Надо так чтоб все операции по экспорту происходили в моем приложении.

    Любые подсказки и намеки приветсвуются.
     
  2. Sandr

    Sandr Гость

    А ч омешает в этих базах создать эти агенты? Вы же говорите, что права есть...
     
  3. pokemaniac

    pokemaniac Гость

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

    Kee_Keekkenen Well-Known Member

    Регистрация:
    5 сен 2006
    Сообщения:
    616
    Симпатии:
    4
    Для: pokemaniac
    Код (Text):
        Dim ses As New NotesSession
    Dim db As NotesDatabase
    Dim agent As NotesAgent
    Dim agentUNID As String
    Dim agentDoc As NotesDocument
    try:
    On Error Goto catch
    Set db = ses.CurrentDatabase
    Set agent = db.GetAgent("agent")
    If agent Is Nothing Then Exit Sub
    agentUNID = Strleftback(Strtoken(agent.NotesURL, "nsf/",2), "?")
    Set agentDoc = db.GetDocumentByUNID( agentUNID)

    Dim targetDB As New NotesDatabase("","")
    If Not targetdb.Open("serverName", "dbFilePath") Then Exit Sub
    Call agentDoc.CopyToDatabase( targetDB)
    Exit Sub
    catch:
    Print Err, Error, Erl
    Exit Sub
     
  5. Omh

    Omh Lotus team
    Lotus team

    Регистрация:
    4 июл 2007
    Сообщения:
    2.210
    Симпатии:
    0
    Для: pokemaniac
    Можно взять документ агента из Source базы с помощью NotesNoteCollection и раскидать его по всем базам.
    Либо при помощи DXL, как ты сам говорил.

    <!--QuoteBegin-pokemaniac+18:02:2008, 09:36 -->
    <span class="vbquote">(pokemaniac @ 18:02:2008, 09:36 )</span><!--QuoteEBegin-->но опять же в тех базах должны быть агенты импортеры
    [snapback]98511" rel="nofollow" target="_blank[/snapback]​
    [/quote]
    Это совершенно не обязательно.
     
  6. Constantin A Chervonenko

    Constantin A Chervonenko Well-Known Member

    Регистрация:
    30 май 2006
    Сообщения:
    1.291
    Симпатии:
    0
    А можно и без DXL.
    Определить UNID/NoteID агента и скопировать его в нужные базы как простой документ
     
  7. pokemaniac

    pokemaniac Гость

    собственно пост господина Kee_Keekkenen это и предлагал в виде любезно предоставленого кода. +1
    проблема решена.
     
  8. Constantin A Chervonenko

    Constantin A Chervonenko Well-Known Member

    Регистрация:
    30 май 2006
    Сообщения:
    1.291
    Симпатии:
    0
    А.. Ну да. Не обратил внимания на эту новую приятную property-ю.
    Я еще в 4-ке/5-ке для подобного генерил хитрую view-ху с элементами дизайна
     
Загрузка...

Поделиться этой страницей