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

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

oxystile

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

вопрос: подскажите, как поменять реализацию или как избежать Save conflict
 
O

Omh

Можно проверять на сохранении респонса, открыт ли главный.
Если открыт, взводить флажок, который проверять при закрытии главного.
Если не открыт - апдейтить.
 
O

oxystile

флажок же в главном документе?
допустим главный документ открыт, создаю респонс, сохраняю и устанавливаю флаг=1 в главном (Maindoc)
Call docMain.Save(--)
но так как гл.документ открыт, то я флаг=1 увижу только после переоткрытия
причем
Call uidoc.Close
Call ws.EditDocument(True , doc)
не дает нужного результата, только ручное переоткрытие
как работать с флагом?
 
O

oxystile

:D да
было и не работало с
Set dc=view.GetAllDocumentsByKey(key_)
Set doc=dc.GetFirstDocument()

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

только протестила, а почему так пока непонятно
 
O

Omh

Флаг не в главном документе, ибо если ты его будешь хранить там (сохранив главный док), то уже получишь конфликт.
Есть много мест, где можно хранить флаг :D
 
K

K-Fire

Если документ-респонз по логике системы можно создать только из открытого основного документа, тогда можно обновлять ваше поле (наверняка счетчик? :D), на QueryClose основного документа.
 

Medevic

Что это ? :)
Green Team
10.12.2004
3 334
1
BIT
6
Тогда уж проще использовать конструкцию On Event PostSave From респонз Call сохранить.
 
O

oxystile

нет, не счетчик и респонс создается не только из открытого главного документа.
респонс создается на человека, а в главном документе накапливается список имен
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!