Отличить форму записи цены от формы списка регистра

Учебные задачи

Проверяем отсутствие четырёх пользовательских назначений в минимальном регистре. Это не доказательство отсутствия стандартных форм платформы.

Где и как запускать

Учебная база: создайте серверный общий модуль УчебныеЗадачи (флаг Сервер). Код без директив вставьте в тело процедуры ВыполнитьПример() Экспорт. Вызовите её из серверного обработчика команды учебной обработки. Не запускайте в рабочей базе.

Подготовка

  1. Создайте НОВУЮ пустую файловую базу. В Конфигураторе корню задайте имя Учебная85; не добавляйте учебные регистры в рабочую УТ/КА2/УНФ/БП.

  2. Регистры сведений → Добавить: УчебныеЦены. Режим записи Независимый, периодичность Непериодический. Измерение КодТовара: Строка, длина 50, индексировать. Ресурс Цена: Число, 12 цифр, 2 дробных, неотрицательное.

  3. Проверку заполнения измерения установите Показывать ошибку. Модуль набора записей оставьте ПУСТЫМ; обработчики записи, обмена, фоновые задания и внешние сервисы для урока не создавайте.

  4. Обновите конфигурацию базы данных. Создайте серверный общий модуль УчебныеЗадачи и команду учебной обработки для вызова ВыполнитьПример() Экспорт.

  5. Фрагмент вставьте в тело ВыполнитьПример. Каждую задачу запускайте отдельно. Вымышленные коды не являются справочными ссылками на рабочие товары.

  6. Модули менеджера и набора оставьте пустыми. Пользовательские формы, команды, макеты, дополнительные индексы и расширения не создавайте.

  7. Историю данных, ОбновлятьИсториюДанныхСразуПослеЗаписи и ВыполнятьОбработкуПослеЗаписиВерсииИсторииДанных выключите. Дополнительных реквизитов нет.

  8. Все задачи этого раздела только читают схему. Наборы записей не создаются, строки цен не читаются и не записываются.

Описание = Метаданные.РегистрыСведений.Найти("УчебныеЦены");
Если Описание = Неопределено Тогда
    ВызватьИсключение "Сначала подготовьте собственный учебный регистр";
КонецЕсли;
Если Описание.РежимЗаписи <> Метаданные.СвойстваОбъектов.РежимЗаписиРегистра.Независимый
    Или Описание.ПериодичностьРегистраСведений <> Метаданные.СвойстваОбъектов.ПериодичностьРегистраСведений.Непериодический Тогда
    ВызватьИсключение "Настройки учебного регистра не соответствуют подготовке";
КонецЕсли;
Если Описание.Измерения.Количество() <> 1
    Или Описание.Измерения.Найти("КодТовара") = Неопределено
    Или Описание.Ресурсы.Найти("Цена") = Неопределено Тогда
    ВызватьИсключение "Нужны одно измерение КодТовара и ресурс Цена";
КонецЕсли;
Сообщить(Описание.Формы.Количество() = 0);
Сообщить(Описание.ОсновнаяФормаЗаписи = Неопределено);
Сообщить(Описание.ДополнительнаяФормаЗаписи = Неопределено);
Сообщить(Описание.ОсновнаяФормаСписка = Неопределено);
Сообщить(Описание.ДополнительнаяФормаСписка = Неопределено);
Сообщить("Способ редактирования: " + Строка(Описание.СпособРедактирования));
Сообщить("Стандартные команды: " + Строка(Описание.ИспользоватьСтандартныеКоманды));
Сообщить("Справка в содержании: " + Строка(Описание.ВключатьСправкуВСодержание));
Сообщить("Полнотекстовый поиск: " + Строка(Описание.ПолнотекстовыйПоиск));

Разбор по шагам

  1. Формы содержит пользовательские определения, а не открытые окна и не автоматически сгенерированные формы.

  2. Проверяем основную и дополнительную форму записи отдельно от основной и дополнительной формы списка.

  3. СпособРедактирования и ИспользоватьСтандартныеКоманды выводим как настройки; команды не выполняем.

  4. ВключатьСправкуВСодержание и ПолнотекстовыйПоиск не используются как доказательство показа справки или доступности данных.

Как проверить результат

  1. Пять проверок дают Истина; следующие четыре сообщения показывают фактические режимы.

  2. После запуска ни форма записи, ни список регистра не должны открыться.

Ожидаемый результат

Разобраны назначения форм и режимы интерфейса регистра без выполнения команд.

На что обратить внимание

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

  2. У регистра сведений нет объекта справочника: ОсновнаяФормаОбъекта не заменяет ОсновнаяФормаЗаписи.

  3. Настройка поиска не даёт дополнительных прав на чтение ресурса Цена.

Пример не запускался в вашей базе. Перед применением проверьте его в указанном учебном контексте.

Не хотите разбираться сами?

Адаптируем это решение под вашу базу. Оценка бесплатно.

Оставить задачу

1С, 1С:Предприятие — товарные знаки ООО «1С». Сайт не является официальным представительством фирмы «1С» и не аффилирован с ней.