Операция не может быть выполнена из-за несоответствия версии #764028


#0 by shamannk
Ошибка понятная. Несколько пользователей редактируют один документ одновременно. Редактируют разные реквизиты и никак по логике друг другу не мешают. Как убрать эту ошибку?
#1 by Mort
Документ весь лочится.
#2 by lubitelxml
перечитать заново этот документ чтоб получить последние изменения
#3 by shamannk
Измененный реквизиты слетят.
#4 by EugeniaK
А точно разные пользователи? Документ в один период времени может редактировать только один человек. Это правильно. В стандартных формах если кто-то уже начал менять, то другой просто не сможет внести никаких изменений, не то что сохранить. Такая ошибка обычно означает, что документ изменен программно каким-то режимом, а не другим пользователем.
#5 by Живой Ископаемый
2 Давай ты сначала приведешь пример хотя бы одной базы данных, в которой в одну запись можно одновременно вносить изменения разными сеансами в разные поля, и чтобы не возникало конфликтов, и чтобы изменения обои сеансов не слетали, и мы тут же тебе подскажем как повторить это в 1С.
#6 by EugeniaK
Пример могу привести я. Есть такая НЕ 1С система "ИТ-Предприятия". В ней возможно править документ несколькими людьми. Если оба пытаются сохранить, то второму выдается окошка с перечнем какие реквизиты изменились и кем. С возможностями выбора: 2. Отменить чужие 3. Сохранить мои и чужие. Технически это можно сделать и в 1С. Своя форма и свои кнопки "Сохранить" Просто это лишнее.
#7 by vde69
документ записывается целиком ситуация пользователь А открыл документ там в реквизите Б значение 100 пользователь Б открыл документ и изменил реквизит Б на 200, документ записал. пользователь А решил отредактировать реквизит Д и записать его... если ему это разрешить, то вместе с реквизитом Д он запишет и старое значение 100 в реквизит Б, по этому 1с оперирует версиями обьекта и не дает записывать не актуальные версии объекта, и за это огромное спасибо компании 1с!
#8 by Живой Ископаемый
я просил БД
#9 by Azverin
а что мешало 1С сделать ?
#10 by shamannk
Проблема не в том что в одну сек записываю а в том что открыли формы 2ое один записал а второй уже не может выдает ошибку.
#11 by shamannk
Почитай тему, изменяют разные реквизиты.
#12 by Nuobu
Сделай им АРМ, чтобы такого не было и пусть меняют.
#13 by EugeniaK
Потому что это хуже с точки зрения производительности. Она проще для пользователя, меньше вероятность случайной порчи чужих данных. Текущая реализация идеальна в большинстве случаев. Если кому-то надо работать параллельно, то конфигуратор в руки и делай что хочешь.
#14 by Azverin
с каких пор 1С печётся о производительности?)))
#15 by trdm
багтрекер мантиса. Вопрос/инцидент мгут открывать любые пользователи.
#16 by trdm
+ Да в принципе любая система, где не обеспечен механизм блокировок.
#17 by shamannk
Какие тут блокировки? Документ записывается не одновременно.
#18 by Живой Ископаемый
2 механизм блокировок на column-level ты хотел сказать Потому что ни в Оракле ни в СКЛ такого например нет.
#19 by igork1966
Для корректного объединения документа нужны сведения о "модели документа" (внутренней логики работы). Это невозможно. Если вам такое понадобилось, значит имеет место неправильное проектирование.
#20 by trdm
Там не блокировки БД, а логические блокировки. Их надо обеспечивать искусственно.
#21 by Живой Ископаемый
Ну, пусть автор искусстевенно обеспечивает
#22 by vde69
дело в том, что "объект" это не только данные... в 1с реализовано динамическое обновление, и планируется это развивать дальше.... значит возможна ситуация совсем корявая.... а с версионированием объекта все нормально... кроме того не забиваете, что реквизиты могут быть связаны друг с другом (например контрагент и договор), что сейчас корректно разруливается а вот как будет в модели я Вам не скажу...
#23 by kossmatiy
Объектная оптимистичная блокировка
#24 by shamannk
Не у это бред конечно. В каких системах такое есть?
#25 by Nikulin
на удаленном обучении по блокировкам от УЦ3 был пример, где разбирали возможность редактирования 1 документа несколькими пользователями. Так что все реально. Настроить блокировки. Сделать 2 формы у документа что бы реквизиты пересекались по минимуму и все будут счастливы=)
#26 by rphosts
в 1С, разумеется
#27 by shamannk
Можешь пример найти, может там индификаторы форм просто разные?
#28 by vde69
если реквизиты это записи в регистре сведений - то такой пример у меня есть... еще можно сделать на форме НЕ объекта (произвольная форма), где перед записью считывать по ссылке, сравнивать с тем что в форме и задавать вопросы... Но это куча кода...
#29 by rphosts
может и много, но ничего сложного, читаем в память объект, правим в нём всё что требуется, сохраняем. PS не вижу пока ни одного случая когда требуется такое кроме того случая когда большую ТЧ сколько-то чел условно между собой разделили и быстро чего требуется там заполняют.
#30 by vde69
такие ТЧ удобнее сразу переносить в РС...
#31 by rphosts
можно и так, РС с регистратором и измерением номер строки - вполне вариант! Хотя если ТЧ по настоящему огромная - нужно ещё измерение что-бы не читать чрезмерно много (+ блокировка и т.п.).
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С