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

xKlonx

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

Akupaka

А че я?.. О.о
04.10.2007
3 360
1
#2
что подсказать?

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

xKlonx

Lotus team
10.09.2009
410
0
#3
Akupaka
что подсказать?
Как вытянуть пользователей из names.nsf в свою бд?????Или может можно веб функционал поместить в тот же names.nsf,и уже там тянуть необходимые поля?(хотя я сомневаюсь что мне дадут ковырять АК)
 

lmike

нет, пердело совершенство
Lotus team
27.08.2008
6 583
269
#4
на сервере лежит шаблон - pubnames.ntf
создавайте базу на нём и наполняйте - чем хоца (хоть копируйте персон доки)
зачем реплики - не понятно
 

Akupaka

А че я?.. О.о
04.10.2007
3 360
1
#5
Как вытянуть пользователей из names.nsf в свою бд?
см
flag = notesDatabase.Open( server$, dbfile$ )
Set notesView = notesDatabase.GetView( viewName$ )
Set notesDocument = notesView.GetFirstDocument
Set notesDocument = notesView.GetNextDocument( document )
и другие методы notesDatabase, notesView, notesDocument.

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

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

xKlonx

Lotus team
10.09.2009
410
0
#6
lmike
зачем реплики - не понятно
А если пришли новые люди,или же кто-то уволился,не буду ж я постоянно следить за этим,поетому хочется немного автоматизировать этот процес, работы и так хватает
 

nvyush

Lotus team
22.04.2009
2 317
0
#7
xRomax
Для этих целей можно напрячь агента по расписанию. Ночью пробегается по документам обеих баз и синхронизирует их. Чтоб было быстрее, отбирать документы, изменившиеся за последние сутки.
 

lmike

нет, пердело совершенство
Lotus team
27.08.2008
6 583
269
#8
"Для того чтобы не експерементировать с основной АК"
это не я написал :rolleyes:
для экспериментов вобщем - нужен отдельный сервер и не внутри домена и организации, чтобы потом не жалеть об ошибках :)
 
K

KFire3

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

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

lmike

нет, пердело совершенство
Lotus team
27.08.2008
6 583
269
#10
Непонятно в чем опасность экспериментирования с АК, если оттуда данные должны только читаться. А если не читаться, но и писаться, то зачем вообще это делать? АК имеет свой веб-интерфейс.

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

osmor

#11
зачем копировать документы в Вашу базу?
xPages может отображать документы находящиеся в другой БД