Invalid Universal Id

  • Автор темы Автор темы johny
  • Дата начала Дата начала
J

johny

значит вопрос в след, на основе документа в первой базе создается другой документ во второй базе, но по архитектуре второй базы, созданный док это респоно ту респонс....и при сохранении он выдает invalid universal id....чего делать?
 
Создавать во второй базе документ-дубликат того, что в первой базе. А лучше пересмотреть архитектуру.
 
Т.е. ответ и главный документ находятся в разных базах? Так нельзя делать.
 
Создавать во второй базе документ-дубликат того, что в первой базе. А лучше пересмотреть архитектуру.
так вот именно что получица масло масленное :ph34r: может кто делал так чтоб main doc и response были в разных базах?

Т.е. ответ и главный документ находятся в разных базах? Так нельзя делать.
так точно, а чего можно?
 
поздно менять архитектуру баз...... вопрос: можно ли на основе несохраненного док-та создавать респонс? и что будет с респонсом если не сохранить потом мэин док?
 
поздно менять архитектуру баз...... вопрос: можно ли на основе несохраненного док-та создавать респонс? и что будет с респонсом если не сохранить потом мэин док?
В принципе можно. Ничего не будет.
 
Почему поздно? Сроки сдачи поджимают? При эксплуатации сложнее будет изменения вносить.
Решение-заплатка. Создаете во второй БД документ-дубликат. Форма хитрая - при ее открытии документ-дубликат закрывается, а открывается "настоящий" сварщик документ из первой БД. В дубликате минимальный набор полей для представлений. Синхронизация данных между оригиналом и дубликатом - ночным агентом.
 
А зачем вообще именно респонс нужен. Во второй базе создать поле с юнидом(например, Parent) и по нему какой-нибудь дблукап делать в первой базе, так будет находится родитель.
 
потому что вторая база уже работает давно и хорошо, а первая внедрилась недавно, а модуль который сейчас мне моск выносит - еще в разработке.....
народ, подскажите чего не так делаю...вот код....

Dim ws As New NotesUIWorkspace
Dim ws1 As New NotesSession
Dim db1 As NotesDatabase
Dim parent_Doc As NotesDocument
Dim uidoc1 As NotesUIDocument

Set db1 = ws1.GetDatabase("","")
Set parent_doc = db1.CreateDocument

Set uidoc1 = ws.ComposeDocument("","","PO")
Set doc1 = uidoc1.Document
Call doc1.MakeResponse(parent_doc)

Call uidoc1.refresh
 
А зачем вообще нужна вторая БД? Может, проще добавить нужную функциональность в существующую БД?
 
А зачем вообще нужна вторая БД? Может, проще добавить нужную функциональность в существующую БД?
хороший совет, но не подходит :)

всем спасибо, заработало, пришлось ДВА раза стукнуть в бубен :ph34r:
 
может кто делал так чтоб main doc и response были в разных базах?
НиЗЗЗя. Т.к response реализуется полем $REF, содержащим ссылку на родителя (main) в виде UNIDa. UNID-же по определению локален (т.е. ук. на объект внутри ТОЙ-ЖЕ базы)
Ссылки на объекты других баз в LND тоже есть (это те, которые создаются по Copy xxx as link). Они гораздо длиннее, т.к. содержат ReplicaID базы + UNID вьюшки + UNID документа. Хранят их в RichText-полях, индексер с ними не работает, т.е. в одной иерархической вьюшке ты их не отобразишь.

Впрочем во вьюшке вообще не отобразишь док-ты из разных баз
 
Мы в соцсетях:

Взломай свой первый сервер и прокачай скилл — Начни игру на HackerLab