Модифицированность формы = Ложь. Зачем записывать документ?

1. user-z99999 78 02.02.22 19:08 Сейчас в теме
Рассмотрим любой объект: Документ, Справочник и т.д.

Если у формы признак Модифицированность = Ложь
зачем происходит запись формы, при нажатии кнопки "Записать и закрыть"? (что-то пишется в базу ...что и было ранее)

Ведь ничего не менялось, пользователю далеко тянуться до крестика формы, чтобы её закрыть.
Удобно нажимать на БОЛЬШУЮ желтую кнопку (в документе, справочнике и т.д.)
Прикрепленные файлы:
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
4. nomad_irk 81 03.02.22 06:17 Сейчас в теме
(1)вопрос в чем: в том, что пользователи жмут кнопки не задумываясь о последствиях или в том, почему платформа 1С не анализирует изменения объекта перед записью его в БД?
Если первый, то решается как правило заменой пользователей на более квалифицированных
Если второй, то это добавит тормозов, а "выхлопа" будет мало, потому что см. первый вопрос.
2. gybson 02.02.22 21:23 Сейчас в теме
Проведение это вариант записи. Отрабатывают обработчики.
3. user868505 03.02.22 01:29 Сейчас в теме
Если что-то поменять в ПередОткрытием(), то на форме будет измененный вариант, а флаг модифицированности не взведен.
5. mixa4 03.02.22 10:14 Сейчас в теме
В типовых решениях - обработчики при записи/проведении (в частности, регистрация объекта к выгрузке в планах обмена).
В своей разработке вы можете кнопку закрытия сделать БОЛЬШУЮ. Или при записи анализировать - если не Модифицированность то не записывать а закрыть без подтверждения.
6. user-z99999 78 03.02.22 11:16 Сейчас в теме
(4)
(5)
Добавил в вопрос рисунок, для наглядности.

Поведение пользователя бывает:
- открыть документ, чтобы посмотреть (без изменений)
- создать новый документ
- изменить существующий

Разработчики фирмы 1С придумали флаг Модифицированность формы.
Почему-же кнопки на форме статичные (не нужные не убираются)? Неужели их нельзя подменять, в зависимости от этого флага?

Я как программист могу это сделать, но может быть я не понимаю тайного смысла?
Пользователю дают возможность ошибаться в форме, записывать не изменённые данные повторно в базу, что порождает лишнюю нагрузку.

Не нужно ругать пользователя, нужно правильно проектировать формы, чтобы не было возможности ошибаться!
7. nomad_irk 81 03.02.22 11:30 Сейчас в теме
(6)Флаг модифицированности может и не "взвестись", но данные при этом будут изменены, что вы, как программист, предлагаете делать в таком случае?

Пользователь не видит всего, что находится, что называется под капотом у формы, однако, любая форма должна иметь некий базовый функционал, который будет работать всегда и при любых условиях без написания какого-либо кода вообще.
Типовые формы именно так и делают.
Выполнять проверку модифицированности всех реквизитов формы/объекта перед записью объекта в ИБ может очень дорого стоить в плане производительности и не понятно, как вообще проверять изменение ТЧ, т.к. пересортировка строк ТЧ - это по сути ее изменение.

Если вы, как программист конкретного решения(формы, в данном случае) уверены, что придуманное вами поведение ЭУ на форме будет более удобным/логичным - реализуйте это самостоятельно.
8. coollerinc 196 03.02.22 11:32 Сейчас в теме
Я думаю это сделано,
- Исторически так сложилось
- Что бы можно было перепровести документ, т.к. вы в прошлом периоде что то изменили, и нужно именно перепровести, независимо, были изменения или нет в самом документе.
- Во вторых пользователь нажимает на кнопку "Записать" он должен понимать, что он записывает документ. Если хочет просто закрыть, то пусть жмет на крестик. Хотя по факту все нажимают "Записать и закрыть".
10. user-z99999 78 03.02.22 11:44 Сейчас в теме
(8)
Спрятать кнопку "Провести и закрыть" в ЕЩЁ. И пусть проводят документы, которые не меняли.
А по умолчанию только кнопка "Закрыть" для не изменяемого документа (Модифицированность = Ложь)

Разработчики фирмы 1С. Флаг Модифицированность ставят у формы (звёздочку).
Значит и кнопки в этот момент могут подменить, согласно поведению пользователя.

И представляете, перестанут лишние действия происходить, лишние перепроведения документов!

(6) Флаг модифицированности может и не "взвестись", но данные при этом будут изменены - это ошибка программиста.
Речь идёт об идеальном мире ))
9. sommid 03.02.22 11:35 Сейчас в теме
Вопрос кажется риторическим..

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

Может я алгоритм изменил и хочу выполнить это действие, может изменились исходные данные тех же партий и мне нужно не меняя документ его провести, чтобы движения по партиям сформировались в новых реалиях, может хочу заставит этот объект еще раз зарегистрироваться в обмене, и много чего еще может.
Делать еще одну кнопку "Записать даже если ничего не менялось"? )

Вобщем просто смиритесь, это работает так, такие условия.
SlavaKron; user868505; +2 Ответить
Оставьте свое сообщение

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