Версия для печати темы (https://pro1c.org.ua/index.php?s=a933b9b1d636483a1a5a5b802ea3f78e&showtopic=35254)

Нажмите сюда для просмотра этой темы в обычном формате

Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7 _ Программирование в 1С Предприятие 8.3 _ Заполнение данных в другой форме документа (ВременноеХранилище)

Автор: Constantus 13.02.17, 14:53

Приветствую, форумчане!
Учебная самописное приложение. Домашнее задание.
1С:Предприятие 8.3 (8.3.8.2054)

Имеется документ "УстановкаЦен". На форме документа "ФормаДокумента" имеется кнопка, которая должна открывать другую форму этого же документа "Заполнить".
После нажатия кнопки "Заполнить" должна открыться форма "Заполнить", где должны отражаться (дублироваться, автозаполняться) данные из основной формы для дальнейшей махинации с ценами (коэффициент, тип цен, округление)...

Сделал всё как бы по инструкции (так должно быть по заданию)

&НаКлиенте
Процедура Заполнить(Команда)
    Адрес = ЗаполнитьНаСервере();
    ПараметрыПодбора =  Новый Структура("ТипЦены, Адрес", Объект.ТипЦены, Адрес);
    ОткрытьФорму("Документ.УстановкаЦен.Форма.Заполнить", ПараметрыПодбора, ЭтаФорма, ЭтаФорма.УникальныйИдентификатор);
КонецПроцедуры

&НаСервере
Функция ЗаполнитьНаСервере()
    // Вставить содержимое обработчика.
    Адрес = ПоместитьВоВременноеХранилище(Объект.Товары.Выгрузить(,"Номенклатура, Цена"), УникальныйИдентификатор);
    Возврат(Адрес);
КонецФункции


Форма хоть и открывается, но пустая.

На форме "Заполнить" имеется реквизит "Результат" (ТаблицаЗначений) с субреквизитами "Номенклатура" и "Цена"

В видеодемонстрации работает, код вроде тот же, в чем беда?

Автор: Petre 13.02.17, 15:15

Constantus @ Сегодня, 14:53 * ,
Передать вы передали. А в форме "заполнить" вы данные заполняете? Покажите ее код "ПриСозданииНаСервере".

Автор: Constantus 13.02.17, 15:45

Petre @ Сегодня, 18:15 * ,

Точно... кода "ПриСозданииНаСервере" вообще нету...

Вообще не могу представить что там нужно прописать... Подскажите...

Автор: Flexy 13.02.17, 16:14

Constantus @ Сегодня, 15:45 * ,

&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
    
    АдресВХранилище = "";
    Если Параметры.Свойство("Адрес", АдресВХранилище) Тогда
    Т = ПолучитьИзВременногоХранилища(АдресВХранилище);
    Для Каждого Строка Из Т Цикл
        НоваяСтрока = Результат.Добавить();
    ЗаполнитьЗначенияСвойств(НоваяСтрока, Строка);    
    КонецЦикла;
        КонецЕсли;

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

Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7
https://pro1c.org.ua