Как программно установить реквизит в форму документа для управляемых форм? Процесс нужно разделить на две процедуры. Одна из них должна выполнятся на сервере (поиск реквизита). Вторая должна выполнятся на клиенте (обращение к серверной процедуре). Вот как-то так работает код в новых 1С на управляемых формах. Теперь реальный пример.

Задача: нужно при открытии документа заполнить два реквизита: КассаККМ, Сумма.

ШАБЛОН КОДА

&НаСервере
Процедура ЗаполнитьНаСервере(НовыйОбъект)
              НовыйОбъект.КассаККМ = КассаККМ;
              НовыйОбъект.Сумма = 100;
КонецПроцедуры

&НаКлиенте
Процедура СоздатьРКОНаОснованииПриходнойНакладной(Команда)
    
    Если ПриходнаяНакладнаяНаВозврат.Пустая() Тогда
        Сообщение = Новый СообщениеПользователю;
        Сообщение.Текст = НСтр("ru='В первую очередь нужно создать приходную накладную на возврат.';uk='В першу чергу потрібно створити прибуткову накладну на повернення.'");
        Сообщение.Поле = "СоздатьПриходнуюНакладнуюНаВозврат";
        Сообщение.УстановитьДанные(ЭтотОбъект);
        Сообщение.Сообщить();
    Иначе
        ТекущиеДанные = Элементы.СписокЧековККМ.ТекущиеДанные;
        Если ТекущиеДанные <> Неопределено ИЛИ ЧекНеПредъявлен Тогда
            //1С ПРОЕКТ
            Форма = ПолучитьФорму("Документ.СписаниеДСПриВозвратеТовара.ФормаОбъекта");
            ДанныеФормы = Форма.Объект;
            ЗаполнитьНаСервере(ДанныеФормы);
            КопироватьДанныеФормы(ДанныеФормы, Форма.Объект);
            Форма.Открыть();
            //1С ПРОЕКТ            
        Иначе
            Сообщение = Новый СообщениеПользователю;
            Сообщение.Текст = НСтр("ru='Не выбран чек ККМ!';uk='Не обраний чек ККМ!'");
            Сообщение.Поле = "СписокЧековККМ";
            Сообщение.Сообщить();
        КонецЕсли;
    КонецЕсли;

КонецПроцедуры

СКРИНШОТ КОДА

Наши проекты | Купить 1С | Услуги по 1С | ПрограммированиеАренда сервера | FAQ 1C

Сопровождение, доработка, консультация, обучение, по программе 1С. Информационно-технический консалтинг, почасовая и сдельная оплата. Запуск новых проектов, реализация решений под ключ.

© 2022 1С ПРОЕКТЫ И РЕШЕНИЯ /1С СЕРВИС 24/7