В «1С:Предприятии» появится возможность взаимодействия при редактировании одних и тех же данных

14.12.2018      24980

Редактировать одни и те же данные в прикладных решениях «1С:Предприятие» раньше было неудобно. Пользователи не могли согласовать последовательность своих действий или освободить занятые другими данные.

С новым механизмом взаимодействия это становится возможным. «1С» разбирает опцию на примерах.

Пессимистическая блокировка

Редактирование одних и тех же данных пользователя в платформе «1С:Предприятие» осуществляется с помощью пессимистической блокировки.

Работа механизма выглядит так: когда первый пользователь начинает изменять какой-то документ, платформа устанавливает пессимистическую блокировку. У второго пользователя заблокировать объект уже не получится.

 

Сообщение о блокировке редактируемого объекта

 

Если пользователь забудет закрыть форму, другие не смогут изменять документ, пока форма не будет закрыта. Сообщение о блокировке не позволит отменить ее, даже если вы установили ее самостоятельно и решили продолжить редактирование на другом компьютере и в другом сеансе.

Разработчики фирмы «1С» внесли несколько поправок, чтобы избежать таких неудобств.

Взаимодействие при пессимистической блокировке

В версии платформы 8.3.14 ограничения снимаются до того, как пользователь закрыл форму. Признак модифицированности формы просигнализирует о том, что данные записаны. Через минуту после сигнала пессимистическая блокировка снимется автоматически. Форму для этого закрывать необязательно.

В версии платформы «1С:Предприятие» 8.3.15 задействован сервер взаимодействия 1С:Диалог. Любые пользователи прикладных решений смогут зарегистрировать на нем свою информационную базу. Если решение подключено к системе взаимодействия, сценарий редактирования одних и тех же данных будет выглядеть более простым и удобным.

Примеры

Менеджер по продажам открывает заказ и добавляет туда несколько позиций. В этот же момент заказ открывает администратор, чтобы изменить его статус. Администратор увидит вот такое сообщение:

 

 

Администратор пишет сообщение менеджеру по продажам и просит его закрыть форму. Менеджер видит окно:

 

 

Менеджер, который еще не окончил редактирование заказа, отвечает:

 

 

В клиентском приложении администратора этот диалог останется и будет отсчитывать время до возможности начать редактирование. Через минуту после того, как менеджер сохранит внесенные изменения (или закроет форму), администратор об этом узнает:

 

 

Администратор нажмет кнопку «Перечитать», увидит новые данные и сможет изменить статус заказа. Снять блокировку получится и в том случае, если администратор забудет закрыть форму заказа на работе и продолжит вносить изменения дома. Если он подключится к базе и откроет заказ, он увидит сообщение:

 

 

Если администратор нажмет кнопку «Начать редактирование», платформа снимет пессимистическую блокировку. Администратор, который и так помнит, что хотел заказать, отредактирует документ заново и сохранит изменения.

На рабочем компьютере утром администратор увидит вот такое сообщение:

 

 

Если вы работаете в клиент-серверном варианте, и система взаимодействия недоступна, то в диалоге не будет предложения «Написать сообщение пользователю?». Если вы используете файловый вариант работы, то сообщение будет выглядеть так:

 

 

Пользователь просто узнает, что данные заблокированы и сможет подождать, когда блокировку снимут. Каждые 10 секунд диалог проверяет, не освободились ли данные.

Изменения запланированы в версиях 8.3.15, 8.3.14.


Автор:
Редактор


См. также

Новость

17 октября 2024 года компания «Инфостарт» и фирма «1С» приглашают принять участие в 11-м ежегодном бизнес-форуме «1С:ERP», посвященном внедрению и развитию решений и сервисов «1С» для корпоративного рынка, предприятий крупного и среднего масштаба.

25.07.2024    701    AnastasiaKl    0       

16

Новость 1С:Документооборот Новый релиз Обзор готовых решений ЭДО

Фирма «1С» выпустила очередное обновление для линейки решений 1С:Документооборот. В состав релиза вошли несколько очень интересных решений для организации совещаний и встреч, а также разработчики анонсировали новую концепцию ЭДО для 1С:ДО 3.0.15.

24.07.2024    376    ЕленаЧерепнева    0       

1

Новость Обзор готовых решений

1С:MDM КОРП 3.1 – новое решение для управления данными. Может показаться, что это развитие ранее выпущенной конфигурации 1С:MDM 2.5, но это совершенно новый продукт. Рассказываем об особенностях 1С:MDM КОРП 3.1 и разбираем его отличия от 1С:MDM 2.5.

24.07.2024    939    ЕленаЧерепнева    0       

17

Новость Платформа 1С v8.3 Зазеркалье

Фирма «1С» сообщила о запланированных на релиз 8.3.27 изменениях. От нового релиза платформы можно ожидать ускорения в работе, новых возможностей для управления хранилищем двоичных данных, а также асинхронного создания объектов внешних компонент.

23.07.2024    5210    ЕленаЧерепнева    1       

0

Новость Автоматизация Искусственный интеллект

Инфостарт.Корпоративные решения 1С представляет Sherpa RPA – платформу автоматизации процессов, объединяющую классических программных роботов и современные технологии ИИ для выполнения рутинных и интеллектуальных задач бизнеса.

22.07.2024    466    vikad    0       

2

Новость Платформа 1С v8.3 Зазеркалье

Разработчики платформы рассказали о планах по оптимизации нагрузки при выполнении ресурсоемких операций, которые будут реализованы в версии 8.3.27. Администраторы смогут настраивать подключение определенных клиентов к выбранным серверам кластера.

17.07.2024    674    ЕленаЧерепнева    0       

1

Новость

Фирма «1С» выпустила «1С:LIMS Управление лабораторией предприятия КОРП». Ранее в линейке 1С:LIMS пользователям были доступны модули для встраивания в 1С:ERP и 1С:КА. Теперь вышла оригинальная конфигурация с расширенными функциональными возможностями.

16.07.2024    780    ЕленаЧерепнева    0       

2

Новость Зазеркалье

Фирма «1С» обещает добавить в версию платформы 8.3.27 новую возможность – задавать расписание перезапуска процессов для рабочего сервера.  

10.07.2024    1240    ЕленаЧерепнева    0       

4
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. dimisa 136 14.12.18 17:11 Сейчас в теме
При введении текущего механизма в рабочей базе , следует так же разработать свод регламентов изменений захваченых объектов.
и правила кулачных боев на предприятии.
bazookaa; axelerleo; LuxVeritatis; Hazker; SagittariusA; portwein; olezhe; rovenko.n; Orlando Skibraves; kild; D_e_X_T_e_R; Serega-artem; TMV; TreeDogNight; Brawler; trumanl; rossoxa; +17 Ответить
2. PerlAmutor 130 14.12.18 17:40 Сейчас в теме
Было бы здорово, если в механизм запросов добавят виртуальные поля или доп.функции, позволяющие из существующей ссылки на объект получить информация о том когда и кем он заблокирован, например так:

ВЫБРАТЬ
Т.Ссылка КАК Документ,
Т.Ссылка.Блокировка.Установлена КАК Заблокирован,
Т.Ссылка.Блокировка.НомерСеанса КАК СеансБлокирующийДокумент,
Т.Ссылка.Блокировка.Пользователь КАК ПользовательУстановившийБлокировку,
Т.Ссылка.Блокировка.Дата КАК ДатаВремяУстановкиБлокировки,
ТекущаяДатаСеанса() - Т.Ссылка.Блокировка.Дата КАК ПродолжительностьБлокировки
ИЗ
Документ.ПоступлениеТоваровУслуг Т
Показать


Или так:

ВЫБРАТЬ
Т.Ссылка КАК Документ,
Блокировка(Т.Ссылка).Установлена КАК Заблокирован,
Блокировка(Т.Ссылка).НомерСеанса КАК СеансБлокирующийДокумент,
Блокировка(Т.Ссылка).Пользователь КАК ПользовательУстановившийБлокировку,
Блокировка(Т.Ссылка).Дата КАК ДатаВремяУстановкиБлокировки,
ТекущаяДатаСеанса() - Блокировка(Т.Ссылка).Дата КАК ПродолжительностьБлокировки
ИЗ
Документ.ПоступлениеТоваровУслуг Т
Показать


Или так:

ВЫБРАТЬ
Т.Ссылка КАК Документ,
Блокировка.Установлена КАК Заблокирован,
Блокировка.НомерСеанса КАК СеансБлокирующийДокумент,
Блокировка.Пользователь КАК ПользовательУстановившийБлокировку,
Блокировка.Дата КАК ДатаВремяУстановкиБлокировки,
ТекущаяДатаСеанса() - Блокировка.Дата КАК ПродолжительностьБлокировки
ИЗ
Документ.ПоступлениеТоваровУслуг Т,
Блокировки(&Ссылка) Блокировка
ГДЕ
Т.Ссылка = &Ссылка
Показать


Это позволит, например, выводить в динамических списках картинку с замочком и видеть, что с объектом работают. Или позволит не вносить изменения в документ программно, если это не критично для алгоритма, но критично для работающего пользователя, который в итоге получит сообщение, что документ был изменен кем-то.

И, да, ТекущейДатыСеанса() тоже не существует в запросах.
KolBbl4; SagittariusA; user654546_kirill.masloboev; olezhe; yad; falsepilot; ilialin; TMV; TreeDogNight; dimisa; gea81; t.v.s.; +12 1 Ответить
6. Darklight 32 25.12.18 10:06 Сейчас в теме
(2)Идея здравая, но малореализуемая, т.к. 1С Предпритие 8 - свои запросы просто транслирует в запросы, выполняемые в СУБД (и лишь в конце - немного дообрабатывает результат, например для формирования итогов). А СУБД об объектных блокировках не знает ничего (и передавать ему эти сведения, например, в виде временной таблицы) - не очень эффективное (хотя и возможное) решение! Поэтому в результирующих запросах не удастся обращаться к данным объектных блокировок.
3. s22 19 14.12.18 19:58 Сейчас в теме
работают для больших компаний.
Логично
rovenko.n; +1 Ответить
8. Darklight 32 25.12.18 10:22 Сейчас в теме
(3)Почему только для больших. Такое решение может быть очень актуально и для небольших компаний, но имеющих сильно распределённую по удалённым местам структуру клиентских компьютеров. Когда пользователи далеко друг от друга работают с одними и теми же данными - такая помощь очень даже полезна - реализовано только очень грубо. И ничего не сказано про мобильного клиента - но, по идеи, там тоже самое должно быть - что для МК ещё более актуально (сотруднику "в поле" тяжело разбираться сейчас - почему ему не удаётся отредактировать, скажем документ, который занят сейчас офисным планктоном или другим сотрудников в другом "огороде", но с пересекающимися интересами).
4. webester 26 16.12.18 05:59 Сейчас в теме
Должна быть возможность перехватывать события отменять\разрешать\запрещать бокировку с помощью программного интерфейса. Иметь возможнсть писать свои сообщения. Механизм с абстрактными заявлениями как сейчас, будет только путать пользователя. Было бы круто, если бы сделали как в гугдокс, что бы было видно, кто редактирует данные и какое поле. Хотя бы для табличных документов(как я понимаю с ними проще всего это сделать) но и с другими прикладными объектами тоже неплохо бы.
SagittariusA; pecherskikh; JohnyDeath; Waanneek; tsmult; TreeDogNight; +6 Ответить
5. rovenko.n 19.12.18 10:54 Сейчас в теме
(4) Я так думаю, нагрузка на сервер сильно увеличиться.
9. Darklight 32 25.12.18 10:33 Сейчас в теме
(5)От чего, от того, что к заблокированной ссылке, имени пользователю и дате добавится ещё имя поля (или нескольких полей)? Не смешите меня!
10. rovenko.n 25.12.18 13:52 Сейчас в теме
(9)ну не знаю, не знаю. Мы же говорим о куче документов, открытых одновременно? А тот же 1C: ERP систему и без всяких примочек грузит очень неслабо.
11. Darklight 32 25.12.18 15:25 Сейчас в теме
(10)Объектные блокировки можно получить программно (или в коносли) - посмотрите - там нет каких-то гигантских объёмов данных, они уже хранятся. Добавление изменённых реквизитов лишь немного увеличели бы их.
12. rovenko.n 25.12.18 16:23 Сейчас в теме
(11) Так вся проблема в том, что последние версии во всём "немного увеличили". Тут кусочечек, там кусочечек, и имеем, что для ЕРП нужно 4 гига оперативки. А теперь еще немножечко увеличить на измененные реквизиты, и еще туда, туда и туда. И свапить у вас будет даже на мощном сервере.
7. Darklight 32 25.12.18 10:08 Сейчас в теме
Очень грубая реализация механизма - мне кажется от неё пользы не так уж много, в итоге - т.к. раздражать такие сообщения будут очень сильно.

Я бы лучше встроил бы такое информирование (в кратком виде), например, в заголовок (вернее под ним) форм - и ввёл бы цветовое выделение (в т.ч., например, рамки формы, и рамки закладки формы в панели открытых окон + в клиентском приложении можно получать всплывающие краткие уведомления).

В управляемых формах это можно сделать встроенным механизмом платформы (с возможность персонального отключения).
Для обычных форм - сделать обработку исключительно программной - т.е. вносить изменения на форму нужно будет самостоятельно написанным алгоритмом (обрабатывая специальное событие).
У всех форм должно быть соответствующее событие!

Вот бы ещё, нечто подобное сделали бы для РИБ - когда один и тот же объект хотят отредактировать в разных узлах - сейчас этому ничего не препятствует - только потом, всплывёт (а может и не всплывёт), что чья-то версия стала главнее и заменила собой другие - но об этом самих авторов изменений никто даже не уведомит, ни постфактум, ни тем более в реальном времени! Поэтому РИБ в 1С Предприятие 8 вещь специфическая, ненадёжная - и мало практикуемая в серьёзных организациях.
Оставьте свое сообщение