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

14.12.2018      25272

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

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

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

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

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

 

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

 

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

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

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

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

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

Примеры

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

 

 

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

 

 

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

 

 

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

 

 

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

 

 

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

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

 

 

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

 

 

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

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


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


См. также

Новость Зазеркалье ИТ и 1С

Разработчики платформы пообещали реализовать для хранилища двоичных данных автоматическое распределение данных по серверам на основании частоты обращения к ним. Изменения позволят оптимизировать производительность систем на платформе 1С.

29.01.2025    3668    ЕленаЧерепнева    0       

4

Новость Корп. решения 1С

В 2025 году планируется повышение цен на некоторые программные продукты системы 1С:Предприятие 8. Повышение пройдет в два этапа: 1 апреля и 1 июля. Публикуем таблицу с изменением цен и рассказываем о выгоде уже сегодня купить лицензию на Инфостарт.

28.01.2025    590    Alexcheps    0       

18

Новость Корп. решения 1С

Выпущена новая конфигурация для автоматизации металлургического производства 1С:ERP Металлургия ПРОФ. Поддержка ранее выпущенного продукта 1С:Управление металлургическим комбинатом 2. Модуль для 1С:ERP будет прекращена.

22.01.2025    710    ЕленаЧерепнева    0       

3

Новость Корп. решения 1С

До конца года 2025 года при приобретении локальных электронных поставок «1С:Бухгалтерия 8 для 1» или «1С:Бизнес-старт» пользователи получат в подарок годовой пакет наиболее востребованных сервисов ИТС – 1С:Отчетность, 1С:Контрагент, 1С:ЭДО и другие.

20.01.2025    643    ЕленаЧерепнева    1       

3

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

Фирма «1С» опубликовала сообщение о выпуске бета-версии технологической платформы 1С:Предприятие 8.5. Скачать дистрибутив 8.5 можно уже сейчас. Главное нововведение, о котором говорят сами разработчики – это обновленный интерфейс.

26.12.2024    23809    ЕленаЧерепнева    65       

23

Новость Зазеркалье Мобильные приложения

Официальный технологический блог «Заметки из Зазеркалья» сообщил о планах обновить интерфейс мобильной версии технологической платформы. Пользователям обещают темную тему, новую верстку таблиц и плавающую кнопку «Создать».

24.12.2024    4838    ЕленаЧерепнева    1       

6

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

Новые оптимизации, развитие средств администрирования и Системы взаимодействия. Подготовили небольшой обзор наиболее существенных изменений в платформе 8.3.27, которые можно протестировать уже сейчас.

23.12.2024    2656    ЕленаЧерепнева    1       

5

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

Официальный технологический блог продолжает рассказывать о том, как будет проходить миграция с интерфейса «Такси» на новый интерфейс. На этот раз речь идет о возможности совместного использования нового и старого интерфейса в одной конфигурации.

20.12.2024    4603    ЕленаЧерепнева    6       

1
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. dimisa 137 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 155 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 34 25.12.18 10:06 Сейчас в теме
(2)Идея здравая, но малореализуемая, т.к. 1С Предпритие 8 - свои запросы просто транслирует в запросы, выполняемые в СУБД (и лишь в конце - немного дообрабатывает результат, например для формирования итогов). А СУБД об объектных блокировках не знает ничего (и передавать ему эти сведения, например, в виде временной таблицы) - не очень эффективное (хотя и возможное) решение! Поэтому в результирующих запросах не удастся обращаться к данным объектных блокировок.
3. s22 23 14.12.18 19:58 Сейчас в теме
работают для больших компаний.
Логично
rovenko.n; +1 Ответить
8. Darklight 34 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 34 25.12.18 10:33 Сейчас в теме
(5)От чего, от того, что к заблокированной ссылке, имени пользователю и дате добавится ещё имя поля (или нескольких полей)? Не смешите меня!
10. rovenko.n 25.12.18 13:52 Сейчас в теме
(9)ну не знаю, не знаю. Мы же говорим о куче документов, открытых одновременно? А тот же 1C: ERP систему и без всяких примочек грузит очень неслабо.
11. Darklight 34 25.12.18 15:25 Сейчас в теме
(10)Объектные блокировки можно получить программно (или в коносли) - посмотрите - там нет каких-то гигантских объёмов данных, они уже хранятся. Добавление изменённых реквизитов лишь немного увеличели бы их.
12. rovenko.n 25.12.18 16:23 Сейчас в теме
(11) Так вся проблема в том, что последние версии во всём "немного увеличили". Тут кусочечек, там кусочечек, и имеем, что для ЕРП нужно 4 гига оперативки. А теперь еще немножечко увеличить на измененные реквизиты, и еще туда, туда и туда. И свапить у вас будет даже на мощном сервере.
7. Darklight 34 25.12.18 10:08 Сейчас в теме
Очень грубая реализация механизма - мне кажется от неё пользы не так уж много, в итоге - т.к. раздражать такие сообщения будут очень сильно.

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

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

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