Онлайн адресная книга

Тема в разделе "Lotus - Программирование", создана пользователем xKlonx, 23 ноя 2009.

  1. xKlonx

    xKlonx Well-Known Member
    Lotus team

    Репутация:
    0
    Регистрация:
    10 сен 2009
    Сообщения:
    410
    Симпатии:
    0
    Граждане програмисты,есть вопрос.Наконец немного освободился и продолжаю работу над веб страницей с помощью Xpages(пишу адресную книгу).Чтобы ручками не забивать весь персонал решили подключить базу names.nsf и оттуда уже выгребать всех людей.Для того чтобы не експерементировать с основной АК решили сделать одностороннюю репликацию базы.Может кто делал подобное,насколько это правильно,подскажите плиз?Заранее благодарен.
     
  2. Akupaka

    Akupaka А че я?.. О.о

    Репутация:
    0
    Регистрация:
    4 окт 2007
    Сообщения:
    3.360
    Симпатии:
    2
    что подсказать?

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

    xKlonx Well-Known Member
    Lotus team

    Репутация:
    0
    Регистрация:
    10 сен 2009
    Сообщения:
    410
    Симпатии:
    0
    Akupaka
    Как вытянуть пользователей из names.nsf в свою бд?????Или может можно веб функционал поместить в тот же names.nsf,и уже там тянуть необходимые поля?(хотя я сомневаюсь что мне дадут ковырять АК)
     
  4. lmike

    lmike нет, пердело совершенство
    Команда форума Lotus team

    Репутация:
    1
    Регистрация:
    27 авг 2008
    Сообщения:
    6.357
    Симпатии:
    334
    на сервере лежит шаблон - pubnames.ntf
    создавайте базу на нём и наполняйте - чем хоца (хоть копируйте персон доки)
    зачем реплики - не понятно
     
  5. Akupaka

    Akupaka А че я?.. О.о

    Репутация:
    0
    Регистрация:
    4 окт 2007
    Сообщения:
    3.360
    Симпатии:
    2
    см
    flag = notesDatabase.Open( server$, dbfile$ )
    Set notesView = notesDatabase.GetView( viewName$ )
    Set notesDocument = notesView.GetFirstDocument
    Set notesDocument = notesView.GetNextDocument( document )
    и другие методы notesDatabase, notesView, notesDocument.

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

    часто делают так:
    в базе создают возможность создать иерархию подразделений. в каждом из них создают документы персонала. документ персонала связывают с нотес-пользователем по нотес-имени.
    если адреска домена содержит кроме нотес имени еще и красивое альтернативное имя, номер телефона и т.п. инфу, то можно при создании документа персонала автоматизировать процес заполнения аналогичных полей.
    вообще, тут можно фантазировать много. вариантов исполнения много. все зависит от желаемого результата и возможностей/умения.
    ТЗ писать тут, наверное, не станут, а на какие-то мелкие вопросы попытаются ответить :)
     
  6. xKlonx

    xKlonx Well-Known Member
    Lotus team

    Репутация:
    0
    Регистрация:
    10 сен 2009
    Сообщения:
    410
    Симпатии:
    0
    lmike
    А если пришли новые люди,или же кто-то уволился,не буду ж я постоянно следить за этим,поетому хочется немного автоматизировать этот процес, работы и так хватает
     
  7. nvyush

    nvyush Well-Known Member
    Lotus team

    Репутация:
    0
    Регистрация:
    22 апр 2009
    Сообщения:
    2.317
    Симпатии:
    0
    xRomax
    Для этих целей можно напрячь агента по расписанию. Ночью пробегается по документам обеих баз и синхронизирует их. Чтоб было быстрее, отбирать документы, изменившиеся за последние сутки.
     
  8. lmike

    lmike нет, пердело совершенство
    Команда форума Lotus team

    Репутация:
    1
    Регистрация:
    27 авг 2008
    Сообщения:
    6.357
    Симпатии:
    334
    "Для того чтобы не експерементировать с основной АК"
    это не я написал :rolleyes:
    для экспериментов вобщем - нужен отдельный сервер и не внутри домена и организации, чтобы потом не жалеть об ошибках :)
     
  9. KFire3

    KFire3 Гость

    Репутация:
    0
    Непонятно в чем опасность экспериментирования с АК, если оттуда данные должны только читаться. А если не читаться, но и писаться, то зачем вообще это делать? АК имеет свой веб-интерфейс.

    Соответственно все эти дальнейшие шаги, реплики, синхронизация и т.п. не имеют никакого смысла.
     
  10. lmike

    lmike нет, пердело совершенство
    Команда форума Lotus team

    Репутация:
    1
    Регистрация:
    27 авг 2008
    Сообщения:
    6.357
    Симпатии:
    334
    звучит как - зачем нужны бэкапы ;)
    от ошибок никто не застрахован и вместо однонаправленной реплики, "легко" может "случится" вариант с перезаписью :(
     
  11. osmor

    osmor Гость

    Репутация:
    0
    зачем копировать документы в Вашу базу?
    xPages может отображать документы находящиеся в другой БД
     
  12. xKlonx

    xKlonx Well-Known Member
    Lotus team

    Репутация:
    0
    Регистрация:
    10 сен 2009
    Сообщения:
    410
    Симпатии:
    0
    osmor
    Я копировать и не собирался.Пока база висит,не разрешают мне копаться в names.nsf :crash:
     
Загрузка...

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