Как сохранить работу команды в ФОРМЕ?

1. 1Eset 3 28.06.20 21:35 Сейчас в теме
Добрый вечер! Я думаю задам простой вопрос, как сохранить работу кода команды?
Я сделал команду, которая проверяет заполнение реквизитов и в конце пользователь соглашается ДА или НЕТ, и форма почти вся блокируется. Пользователь нажимает записать и закрыть, и типо всё)

НО нет! После закрытия можно снова открыть форму, а так как я поставил в свойствах "Автоматическое сохранение данных формы в настройках", там сохраняются флажки, которые заполнил пользователь, но форма разблокированная :(

Под блокировкой я имею Доступность = ложь

Как сделать так, чтобы всё сохранилось и в последующем пользователь не смог ничего сделать в форме?
По теме из базы знаний
Вознаграждение за ответ
Показать полностью
Найденные решения
3. uno-c 235 29.06.20 01:31 Сейчас в теме +0.3 $m
В событии формы ПриОткрытии - проверьте, если реквизиты автоматически заполнились - а значит заполнились они на основании сохраненных данных формы - так вот если заполнились - то вызывайте свою процедуру, где Доступность = Ложь.
11. 1Eset 3 29.06.20 21:54 Сейчас в теме
(10) Короче Вам большое спасибо!!! Я сделал почти так))) я просто создал новый реквизит с типом булева и добавил его в условия проверки реквизитов с последующим их сохранением, и когда человек соглашается с проверкой жмёт ДА, форма блокируется, а потом ПриОткрытии срабатывает проверка того самого реквизита, если он стоит в ИСТИНА, то форма блокируется, если нет, то нет! Всё оказалось гениально просто, а я выдумывал сложные схемы)))
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. Xershi 1486 28.06.20 22:31 Сейчас в теме
(1) вам нужно сделать реквизит или регистр в который будет этот признак записывать.
При открытии формы его проверяете и если нашли, то выполняете ваш код.
3. uno-c 235 29.06.20 01:31 Сейчас в теме +0.3 $m
В событии формы ПриОткрытии - проверьте, если реквизиты автоматически заполнились - а значит заполнились они на основании сохраненных данных формы - так вот если заполнились - то вызывайте свою процедуру, где Доступность = Ложь.
5. 1Eset 3 29.06.20 17:14 Сейчас в теме
(3)
В событии формы ПриОткрытии - проверьте, если реквизиты автоматически заполнились - а значит заполнились они на основании сохраненных данных формы - так вот если заполнились - то вызывайте свою процедуру, где Доступность = Ложь.


Мне понравился этот читерский способ)))) Работает хорошо, но человек теперь сохранить не может и заполнить позже)) она блокируется)))
6. Xershi 1486 29.06.20 17:26 Сейчас в теме
(5) потому что логика не корректная...
8. uno-c 235 29.06.20 17:45 Сейчас в теме
(5)Ну Вы определитесь, что Вам надо. Я отвечал на вопрос "Как сделать так, чтобы всё сохранилось и в последующем пользователь не смог ничего сделать в форме?"
10. uno-c 235 29.06.20 18:04 Сейчас в теме
(5) Если нужен путь для отступления - сделайте как в типовых конфигурациях. Там, например, при попытке редактирования кода элемента справочника Номенклатура, выдается предупреждение, типа точно ли Вы хотите отредактировать код (ибо нефиг), и если ответ утвердительный - только тогда появляется возможность редактирования.
11. 1Eset 3 29.06.20 21:54 Сейчас в теме
(10) Короче Вам большое спасибо!!! Я сделал почти так))) я просто создал новый реквизит с типом булева и добавил его в условия проверки реквизитов с последующим их сохранением, и когда человек соглашается с проверкой жмёт ДА, форма блокируется, а потом ПриОткрытии срабатывает проверка того самого реквизита, если он стоит в ИСТИНА, то форма блокируется, если нет, то нет! Всё оказалось гениально просто, а я выдумывал сложные схемы)))
7. Sashares 34 29.06.20 17:28 Сейчас в теме
(3)
В событии формы ПриОткрытии

Это событие называется ПриЗагрузкеДанныхИзНастроекНаСервере, в котором загружаются сохраненные настройки.
9. uno-c 235 29.06.20 17:51 Сейчас в теме
(7) Кстати, да. ПриЗагрузкеДанныхИзНастроекНаСервере - это самое подходящее, а не ПриОткрытии.
4. portwein 29.06.20 07:30 Сейчас в теме
Сохранять признак "РедактированиеФормыЗавершено" (или как Вам захочется его назвать) либо в объекте, если это форма обекта, либо в регистре (например в реквизите) если это форма записи регистра, либо просто создать регистр. При открытии признак "РедактированиеФормыЗавершено" проверять - если завершено, тогда "Доступность = Ложь;"
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот