Имя: Пароль:
1C
1С v8
Как заполнить Табличную часть нового документа из внешней формы ?
0 botman4
 
07.02.19
14:04
Делаю следующим образом:


&НаКлиенте
Процедура СоздатьДокумент(Команда)

ФормаДокумента = ОткрытьФорму("Документ.ПоступлениеТоваровУслуг.ФормаОбъекта");
ДанныеФормы    = ФормаДокумента.Объект;
ЗаполнитьДокументНаСервере(ДанныеФормы);
КопироватьДанныеФормы(ДанныеФормы, ФормаДокумента.Объект);

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

&НаСервере
Функция ЗаполнитьДокументНаСервере(ДанныеФормы);
Док = ДанныеФормыВЗначение(ДанныеФормы, Тип("ДокументОбъект.ПоступлениеТоваровУслуг"));
Док = Документы.ПоступлениеТоваровУслуг.СоздатьДокумент();


/// как заполнить из внешней обработки загрузить ТаблицуЗначений????
// Как сюда передать ТаблицуЗначений
// и потом Док.Товары.Загрузить(ТЗ_Из_внешней_Обраб);

ЗначениеВДанныеФормы(Док,ДанныеФормы);
КонецФункции



Подскажите плз. СПАСИБО.
1 Sapiens_bru
 
07.02.19
14:47
Док = ДанныеФормыВЗначение(ДанныеФормы, Тип("ДокументОбъект.ПоступлениеТоваровУслуг"));
Док = Документы.ПоступлениеТоваровУслуг.СоздатьДокумент();

Вот так не делать
2 botman4
 
09.02.19
15:10
UP - так и не победил. Поправьте плз мой код... если такое вообще реально....

&НаКлиенте
Процедура СоздатьДокумент(Команда)
    Форма = ПолучитьФорму("Документ.ПоступлениеТоваровУслуг.ФормаОбъекта");    
    ДанныеФормы = Форма.Объект;
    
    СтруктураДанных = Новый Структура();
    СтруктураДанных.Вставить("ТЗ", Объект.Товары);
    СтруктураДанных.Вставить("ДанныеФормы", ДанныеФормы);

    ДанныеФормы = ЗаполнитьДокументНаСервере(СтруктураДанных);

    КопироватьДанныеФормы(ДанныеФормы, Форма.Объект);
КонецПроцедуры

&НаСервере
Функция ЗаполнитьДокументНаСервере(СтруктураДанных)
Док = ДанныеФормыВЗначение(СтруктураДанных.ДанныеФормы, Тип("ДокументОбъект.ПоступлениеТоваровУслуг"));
ТЗ  = ДанныеФормыВЗначение(СтруктураДанных.ТЗ, Тип("ТаблицаЗначений"));

Док.Товары.Загрузить(ТЗ);

ЗначениеВДанныеФормы(Док, СтруктураДанных.ДанныеФормы);
Возврат СтруктураДанных.ДанныеФормы;
КонецФункции
3 RomanYS
 
09.02.19
17:22
&НаКлиенте
Процедура Команда1(Команда)
    
    Форма = ОткрытьФорму("Документ.ПоступлениеТоваровУслуг.Форма.ФормаДокумента");
    КопироватьДанныеФормы(Объект.Товары, Форма .Объект.Товары);
    
КонецПроцедуры
4 botman4
 
09.02.19
21:58
(3) БОЛЬШОЕ ЧЕЛОВЕЧЕСКОЕ СПАСИБО!!!
5 RomanYS
 
09.02.19
22:14
(4) Пожалуйста, было не сложно)