Проблема с реализацией

  • Автор темы Автор темы oxystile
  • Дата начала Дата начала
O

oxystile

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

вопрос: подскажите, как поменять реализацию или как избежать Save conflict
 
Можно проверять на сохранении респонса, открыт ли главный.
Если открыт, взводить флажок, который проверять при закрытии главного.
Если не открыт - апдейтить.
 
флажок же в главном документе?
допустим главный документ открыт, создаю респонс, сохраняю и устанавливаю флаг=1 в главном (Maindoc)
Call docMain.Save(--)
но так как гл.документ открыт, то я флаг=1 увижу только после переоткрытия
причем
Call uidoc.Close
Call ws.EditDocument(True , doc)
не дает нужного результата, только ручное переоткрытие
как работать с флагом?
 
:D да
было и не работало с
Set dc=view.GetAllDocumentsByKey(key_)
Set doc=dc.GetFirstDocument()

а работает с
Set doc = view.GetDocumentByKey (key_ )

только протестила, а почему так пока непонятно
 
Флаг не в главном документе, ибо если ты его будешь хранить там (сохранив главный док), то уже получишь конфликт.
Есть много мест, где можно хранить флаг :D
 
Если документ-респонз по логике системы можно создать только из открытого основного документа, тогда можно обновлять ваше поле (наверняка счетчик? :D), на QueryClose основного документа.
 
Тогда уж проще использовать конструкцию On Event PostSave From респонз Call сохранить.
 
нет, не счетчик и респонс создается не только из открытого главного документа.
респонс создается на человека, а в главном документе накапливается список имен
 
Мы в соцсетях:

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