sava1 @ Сегодня, 16:07
,
Вот попытался применить метод:
&НаКлиенте
Процедура СоздатьТабеляУчетаРабочегоВремени(Команда)
// Вставить содержимое обработчика.
Для Каждого Стр Из Объект.Подразделения Цикл
Сообщить(Стр.Подразделение);
Форма = ПолучитьФорму("Документ.ТабельУчетаРабочегоВремени.ФормаОбъекта");
ДанныеФормы = Форма.Объект; // Получаем объект формы в переменную
ЗаполнитьДокументНаСервере(ДанныеФормы, Стр.Подразделение); // Заполняем документ на сервере
КопироватьДанныеФормы(ДанныеФормы, Форма.Объект); // копируем наш объект в объект формы и далее открываем ее
Форма.Открыть();
КонецЦикла;
КонецПроцедуры
&НаСервереБезКонтекста
Функция ЗаполнитьДокументНаСервере(ДанныеФормы, Отдел);
Док = ДанныеФормыВЗначение(ДанныеФормы, Тип("ДокументОбъект.ТабельУчетаРабочегоВремени")); // Получаем объект из данных формы ИЛИ
Док = Документы.ТабельУчетаРабочегоВремени.СоздатьДокумент();
Док.Подразделение = Отдел;
Док.Организация = ДанныеФормы.Организация;
Док.Дата = текущаяДата();
// Заполняем реквизиты объекта или другие действия ********
ЗначениеВДанныеФормы(Док,ДанныеФормы); // Кладем обратно в объект формы уже созданный документ
КонецФункции
1. На экран выводит один документ, причем последний из цикла
2. Не сработал метод ДанныеФормы.Организация;
Добавил код
Форма = ПолучитьФорму("Документ.ТабельУчетаРабочегоВремени.ФормаОбъекта",,,Новый УникальныйИдентификатор());
Вроде открылось несколько
Как теперь правильно его заполнить?
ДанныеФормы.Дата = ТекущаяДата(); //сработало
ДанныеФормы.Подразделение = ???? Стр.Подразделение; // не сработало из цикла
+ Как запустить на этой открытой форме процедуру по кнопке?
Constantus @ Сегодня, 16:33
,
Вот что-то изменил:
&НаКлиенте
Процедура СоздатьТабеляУчетаРабочегоВремени(Команда)
// Вставить содержимое обработчика.
Для Каждого Стр Из Объект.Подразделения Цикл
Сообщить(Стр.Подразделение);
Форма = ПолучитьФорму("Документ.ТабельУчетаРабочегоВремени.ФормаОбъекта",,,Новый УникальныйИдентификатор(),);
ДанныеФормы = Форма.Объект; // Получаем объект формы в переменную
ЗаполнитьДокументНаСервере(ДанныеФормы, Стр.Подразделение, Объект); // Заполняем документ на сервере
КопироватьДанныеФормы(ДанныеФормы, Форма.Объект); // копируем наш объект в объект формы и далее открываем ее
Форма.Открыть();
КонецЦикла;
КонецПроцедуры
//БезКонтекста
&НаСервере
Функция ЗаполнитьДокументНаСервере(ДанныеФормы, СТЧ, Хрень);
ДанныеФормы.Дата = ТекущаяДата();
ДанныеФормы.Подразделение = СТЧ;
ДанныеФормы.Организация = СТЧ.Организация;
ДанныеФормы.ДатаНачалаПериода = Хрень.ДатаНачалаПериода;
ДанныеФормы.ДатаОкончанияПериода = Хрень.ДатаОкончанияПериода;
КонецФункции
Пытаюсь заполнить шапку новых документов, там равные реквизиты, что в обработке, что в документах...
ДанныеФормы.ДатаНачалаПериода = Хрень.ДатаНачалаПериода;
ДанныеФормы.ДатаОкончанияПериода = Хрень.ДатаОкончанияПериода;
Не срабатывает...
Constantus @ Сегодня, 17:32
,
Док = РеквизитФормыВЗначение("Объект");
ДанныеФормы.Дата = ТекущаяДата();
ДанныеФормы.Подразделение = СТЧ;
ДанныеФормы.Организация = СТЧ.Организация;
ДанныеФормы.ДатаНачалаПериода = Док.ДатаНачалаПериода;
ДанныеФормы.ДатаОкончанияПериода = Док.ДатаОкончанияПериода;
ДанныеФормы.ПериодРегистрации = Док.ПериодРегистрации;
ДанныеФормы.ПериодВводаДанныхОВремени = Док.ПериодВводаДанныхОВремени;
//ДанныеФормы.МесяцРегистрацииСтрокой = Док.МесяцРегистрацииСтрокой;
Вот так сработало, кроме
ДанныеФормы.МесяцРегистрацииСтрокой = Док.МесяцРегистрацииСтрокой;
Этот реквизит является дополнительным реквизитом формы...
1. Как передать дополнительные реквизиты формы
2. И как программно запустить код на созданных формах:
УчетРабочегоВремениФормы.ТабельПериодВводаДанныхОВремениПриИзменении(ЭтаФорма);
Где ЭтаФорма - форма нового созданного документа