Вставка документов и их свойства

  • Автор темы 1KIA
  • Дата начала
1

1KIA

#1
Возникла такая проблема: в базе удалили все документы, их восстановили копированием из другой бд, но теперь в свойствах документов указывается дата создания дня вставки документов, а надо чтобы реальная дата создания, как в той бд откуда копировали. Как можно переместить документы с сохранением данных в свойствах документов
 

RAJ

Well-known member
17.01.2007
440
0
#2
может просто создать реплику базы из которой скопировали документы поверх "неправильной" базы?
 
1

1KIA

#3
RAJ
делаю реплику на базу, вроде все нормально, при репликации далее документы дублируются, а не заменяются
 

RAJ

Well-known member
17.01.2007
440
0
#4
RAJ
делаю реплику на базу, вроде все нормально, при репликации далее документы дублируются, а не заменяются
то что они дублируются понятно, так как вы первоночально делали копию!!! документов(изменился УНИД) - надо скопированные документы убрать из базы
 
1

1KIA

#5
что-то не могу сделать нормально репликацию: удаляю в одной бд документы, во второй у меня уже в том виде, в котором и нужны документы, но при репликации документы не появляются, при этом репликация проходит и ошибок нет. Что надо сделать, чтобы документы и в другую бд попали???
 

hosm

* so what *
18.05.2009
2 442
6
#6
а удалить стабы от удаленных доков не пробовали?

Добавлено: посмотрите через админ - скорее всего, стабы еще живут в БД и не дают среплицироваться документам
 
A

Anfit

#8
Если документов не очень много, то можно написать агент Simple action(s) (в бд из которой будем копировать), там есть метод - скопировать в другую БД.

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

hosm

* so what *
18.05.2009
2 442
6
#9
Далее выбираем нужные документы в базе источнике и запускаем агент из листа агентов, таким образом вся история дат и последних модификаций сохраняется.
а при этом униды и поля типа Response Reference сохраняются?
 
A

Anfit

#10
должны вроде сохраняться, не проверял.

Копирование происходит средстами самого лотуса, а не через буфер омбена, наверно все сохраняется
 
1
#11
вот возник еще вопрос... все базы на серверах реплицируются нормально, но вот в локальных базах пользователей почти нет документов, все срабатывает нормально, если создать пользователю заново реплику.
Как-то можно программно или административно пересоздать локальные реплики тем, у кого они есть? или только от самого пользователя это возможно?
 
1
#12
извеняюсь, за настойчивость... но все же: почему в локальных репликах баз пропали документы? и как из автоматически можно обновить? Т.е. есть ли возможность автоматически запустить процесс создания реплики локальной базы?

а вообще можно ли локальной базы как-то программно присвоить 0 в Remove documents not modified....?
 

hosm

* so what *
18.05.2009
2 442
6
#13
мб, в локальные БД также среплицировались стабы после удаления документов? Локальные реплики принимали удаления, сделанные на сервере?
 
1
#14
OKEN
да принимали
Вот и думаю, как можно удаленно запустить удаление стабов в локальных репликах базы
 

hosm

* so what *
18.05.2009
2 442
6
#15
как можно удаленно запустить удаление стабов в локальных репликах базы
не знаю. Встречала на Апи код удаления стабов, поищите.
ну, есть код выставить "Remove documents not modified in the last: __ days" в 0.
Код:
Dim session As New NotesSession
Dim db As NotesDatabase
Dim rep As NotesReplication
Set db = session.CurrentDatabase ' тут надо получить нужную БД - ???
Set rep = db.ReplicationInfo
If rep.CutOffInterval <> 0 Then
rep.CutOffInterval = 0
rep.CutOffDelete = False 'чтоб галка не стояла
End If
Call rep.Save()
А что там дальше нужно - компакт или просто переоткрыть - я не помню, увы. (
А потом надо вернуть то значение, какое у вас было установлено до изменения.
 
1
#17
помогите пожалуйста. Почему если агент:
Код:
	Dim Session As New NotesSession
Dim ws As New NotesUIWorkspace
Dim db As Variant
Dim DbServer As String
Dim DbPath As String
Dim retVal As Integer
Set db = session.CurrentDatabase	
DbPath = db.filePath
DbServer=db.Server	
Set db = session.GetDatabase(DbServer, DbPath)
Dim rep As NotesReplication
Set rep = db.ReplicationInfo
If rep.CutOffInterval <> 0 Then
rep.CutOffInterval = 0
rep.CutOffDelete = False 'чтоб галка не стояла
End If
Call rep.Save()
запускать с меню Действий, то все срабатывает отлично, а если ставить выполнение в определенное время, то ничего не происходит. Подскажите где смотреть
 
1
#19
Код:
 Dim ws As New NotesUIWorkspace
убрала, от этого ничего не изменилось :)

агент запускаю, не на сервере, а на локале... можно ли такой агент запустить на локальной реплике?
 

RAJ

Well-known member
17.01.2007
440
0
#20
Код:
 Dim ws As New NotesUIWorkspace
убрала, от этого ничего не изменилось :)

агент запускаю, не на сервере, а на локале... можно ли такой агент запустить на локальной реплике?
в настройках клиента есть галочка "Enable local sheduled agent "