Имя: Пароль:
1C
1С v8
Заполнение ТЧ нового документа ОФ
0 VolandMaster
 
17.02.16
15:50
Добрый день!
  При событии ОткрытиеФормы нового документа заполняетться ТЧ процедурой из общего модуля в которую передую параметром объект.В таком варианте ТЧ открытой формы не заполненяеться. Если я заполняю все так же из модуля объекта ПриЗаписи документа тогда все норм.
  Вопрос: как правильно заполнить ТЧ из формы, при ее открытии.
1 leonidkorolev
 
17.02.16
16:11
Проще способа пока не нашёл. Если кто знает, подскажите.

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

&НаКлиенте
Процедура Команда1(Команда)
  
   Форма1 = ПолучитьФорму("Документ.Документ1.ФормаОбъекта");
   ДанныеФормы = Форма1.Объект;
   Команда1НаСервере(ДанныеФормы);
   КопироватьДанныеФормы(ДанныеФормы, Форма1.Объект);
   Форма1.Открыть();
  
КонецПроцедуры
2 KulakoffAlex
 
17.02.16
16:39
Это что за событие "ОткрытиеФормы" версия 1С какая ? 7.7 что ли в 8-ке не нашел такого.
3 VolandMaster
 
17.02.16
16:43
(2) чик события ПриОткрытии формы.
//
Сории. Процедура ПриОткрытии()
4 KulakoffAlex
 
17.02.16
16:46
Тогда уж делать в "ПриСозданииНаСервере()"

ДокументОбъект = РеквизитФормыВЗначение("Объект");

//заполняем

ЗначениеВРеквизитФормы(ДокументОбъект,"Объект");
5 FIXXXL
 
17.02.16
16:49
или в ОбработкуЗаполнения сунь обращение к общей процедуре
с проверкой на новизну
6 VolandMaster
 
17.02.16
16:51
(4) Формы обычные,в заголовке написал.
7 FIXXXL
 
17.02.16
16:52
(6) тогда ПередОткрытием()
8 VolandMaster
 
17.02.16
16:54
(5) получилось,спасибо!
9 FIXXXL
 
18.02.16
09:23
(8) учти, что этот вариант сработает и в момент программного создания документа, без открытия формы
если делать в форме в ПередОткрытием(), тогда сработает только при интерактивном создании, при открытии формы дока

прикинь, какой вариант тебе нужен
Компьютеры — прекрасное средство для решения проблем, которых до их появления не было.