Вызвать Записать в собственной объектной форме УчебныеКарточки

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

Стандартный метод записи формы сохраняет конкретный комментарий своего объекта и возвращает успех. Это не вызов объекта.Записать в неподходящем клиентском контексте.

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

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

Подготовка

  1. Работайте только в собственной пустой учебной конфигурации. В Конфигураторе создайте Справочник УчебныеКарточки; не добавляйте эти учебные объекты в рабочую базу.

  2. Код — строковый длиной 10, наименование длиной 100. Для справочника, плана обмена и плана видов характеристик включите автонумерацию. Для счетов и видов расчёта код назначается явно в примере.

  3. Справочник неиерархический, без владельца. Имя УчебныеКарточки не означает наличие такого справочника в типовой конфигурации.

  4. Добавьте реквизиты Комментарий (Строка 100), Лимит (Число 15.2 с разрешённым отрицательным знаком), ЗапретУдаления (Булево). Не делайте их автоматически обязательными: дополнительные правила описаны отдельными обработчиками.

  5. У Справочник УчебныеКарточки создайте управляемую объектную форму УчебнаяФорма. Основной реквизит формы назовите Объект, связанный именно с объектом данного типа. Добавьте поле комментария с путём Объект.Комментарий.

  6. В этой объектной форме создайте команду СохранитьКомментарий и кнопку; назначьте команде основной клиентский обработчик. Не вставляйте его в форму списка или во внешнюю обработку, иначе расширение формы будет другим.

  7. В отдельной внешней обработке с управляемой формой создайте команду ОткрытьУчебныйОбъект. Два последних дополнительных блока поместите в её модуль; они создают и открывают новый собственный объект по ключу.

  8. Обновите только учебную базу. Каждый запуск подготовительной команды создаёт собственный объект; рабочие карточки, процессы и задачи не открываются и не изменяются.

&НаКлиенте
Процедура СохранитьКомментарий(Команда)
    Объект.Комментарий = "Комментарий записан учебной формой";
    Модифицированность = Истина;
    Если ЭтаФорма.Записать() Тогда
        Сообщить("Собственный объект записан");
    Иначе
        Сообщить("Запись отменена обработчиками или проверкой заполнения");
    КонецЕсли;
КонецПроцедуры
Внешняя учебная форма: серверный производитель собственной ссылки
&НаСервереБезКонтекста
Функция СоздатьОбъектДляУчебнойФормы()
    Объект = Справочники.УчебныеКарточки.СоздатьЭлемент();
    Объект.Наименование = "Учебная карточка";
    Объект.Лимит = 100;
    Объект.Комментарий = "Учебный пример";
    Объект.Записать();
    Возврат Объект.Ссылка;
КонецФункции
Внешняя учебная форма: открытие точной объектной формы по ключу
&НаКлиенте
Процедура ОткрытьУчебныйОбъект(Команда)
    Ссылка = СоздатьОбъектДляУчебнойФормы();
    ОткрытьФорму("Справочник.УчебныеКарточки.Форма.УчебнаяФорма", Новый Структура("Ключ", Ссылка));
КонецПроцедуры

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

  1. Дополнительный производитель сохраняет собственный объект и открывает точную именованную объектную форму по его ссылке.

  2. Основная команда выполняется внутри этой формы. ЭтаФорма имеет расширение конкретного Справочник, а Объект — его основной реквизит.

  3. Стандартный метод записи формы сохраняет конкретный комментарий своего объекта и возвращает успех. Это не вызов объекта.Записать в неподходящем клиентском контексте.

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

  1. При успешной записи сообщение подтверждает сохранение. Закройте и снова откройте именно созданный объект: комментарий сохранён.

  2. Если другая учебная проверка отменяет запись, метод возвращает Ложь и показывается отдельное сообщение. Бизнес-процесс этим примером не запускается, задача не выполняется.

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

Метод формы использован с настоящим собственным сохранённым объектом и конкретным ключом открытия.

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

  1. Прочитать может затереть несохранённые изменения формы; это не безопасная кнопка обновления любой рабочей карточки.

  2. Записать формы возвращает Булево и запускает обычные события / проверки записи. Дополнительный процесс не стартуется и задача не выполняется самой командой записи.

  3. Не путайте форму объекта, объект данных и ссылку. Браузер справочника этот BSL не выполняет.

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

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

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

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

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