Как Записать документ через форму

1. user1145086 27.05.19 14:43 Сейчас в теме
Добрый день, в обработке получил форму документа "НачислениеЗарплаты" и изменил ТЧ. Как можно записать документ?
По теме из базы знаний
Найденные решения
9. user774630 27.05.19 17:26 Сейчас в теме
Вот пример кода для перерасчета Отпусков и их проведения в ЗУП 3.1
СписокДокументов - таб. часть в обработке, которая заполняется запросом. Отметка - реквизит типа Булево.
&НаКлиенте
Процедура ПерерасчитатьДокументы()
	
	НужныеСтроки = Объект.СписокДокументов.НайтиСтроки(Новый Структура("Отметка", Истина));
	Для каждого ТекСтр Из НужныеСтроки Цикл
		ПараметрыОтбора = Новый Структура("Ключ", ТекСтр.Отпуск);
		Форма = ПолучитьФорму("Документ.Отпуск.ФормаОбъекта", ПараметрыОтбора); 
		Форма.ПерезаполнитьНачисленияСотрудника();
		
		ПараметрыЗаписи = Новый Структура;
		ПараметрыЗаписи.Вставить("РежимЗаписи", РежимЗаписиДокумента.Проведение);
		
		Форма.Записать(ПараметрыЗаписи);
		
		ТекСтр.Отметка = Ложь;
	КонецЦикла;
	
КонецПроцедуры
Показать
maksa2005; SotNick; romulanin; user682948_rusmaxval; via; Yan_Malyakov; Somebody1; san4o; criptid; vladir; ponka; user591389_aska_rabota; Bolnov; shevelyov; user1145086; +15 Ответить
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
4. Boneman 298 27.05.19 14:46 Сейчас в теме
(1) объект надо получать, и в нем и менять. Зачем форма
alex-l19041; Valerianich; +2 Ответить
5. user1145086 27.05.19 14:53 Сейчас в теме
(4)форма нужна для выполнения процедуры "Перерасчет"
8. AlexPC 27.05.19 16:36 Сейчас в теме
(1) Если с формой больше ничего делать не надо, то можно на сервере:

обДокумент = РеквизитФормыВЗначение("Объект");
обДокумент.Записать(<тут нужно указать режим записи>);
moreover; user682948_rusmaxval; user665211_antonfo; +3 Ответить
2. Prikum 3 27.05.19 14:46 Сейчас в теме
На сервере записывайте.
3. alyonchik 27.05.19 14:46 Сейчас в теме
6. alyonchik 27.05.19 14:55 Сейчас в теме
Получаете объект с формы и записываете
7. user1145086 27.05.19 14:58 Сейчас в теме
(6) копироватьданныеформы в реквизит формы, а потом на сервере записать?
9. user774630 27.05.19 17:26 Сейчас в теме
Вот пример кода для перерасчета Отпусков и их проведения в ЗУП 3.1
СписокДокументов - таб. часть в обработке, которая заполняется запросом. Отметка - реквизит типа Булево.
&НаКлиенте
Процедура ПерерасчитатьДокументы()
	
	НужныеСтроки = Объект.СписокДокументов.НайтиСтроки(Новый Структура("Отметка", Истина));
	Для каждого ТекСтр Из НужныеСтроки Цикл
		ПараметрыОтбора = Новый Структура("Ключ", ТекСтр.Отпуск);
		Форма = ПолучитьФорму("Документ.Отпуск.ФормаОбъекта", ПараметрыОтбора); 
		Форма.ПерезаполнитьНачисленияСотрудника();
		
		ПараметрыЗаписи = Новый Структура;
		ПараметрыЗаписи.Вставить("РежимЗаписи", РежимЗаписиДокумента.Проведение);
		
		Форма.Записать(ПараметрыЗаписи);
		
		ТекСтр.Отметка = Ложь;
	КонецЦикла;
	
КонецПроцедуры
Показать
maksa2005; SotNick; romulanin; user682948_rusmaxval; via; Yan_Malyakov; Somebody1; san4o; criptid; vladir; ponka; user591389_aska_rabota; Bolnov; shevelyov; user1145086; +15 Ответить
10. user1145086 27.05.19 20:14 Сейчас в теме
(9)Спасибо, то что нужно, но у меня ещё спрашивает форму открыть, иначе ошибка об Закрытии формы после записи
12. user613191_olgargor 29.05.19 20:37 Сейчас в теме
(10) Проанализируйте метод при записи, может это можно параметром каком-то регулировать, чтоб он не пытался закрыть форму, ну или просто напишите записать() внутри "Попытка-Исключение" без обработки самого исключения... некрасиво конечно, но может Вас это устроит
user1145086; +1 Ответить
13. user1145086 29.05.19 20:49 Сейчас в теме
(12)о, спасибо, а в попытке- исключение получается код до ошибки отработает?
14. user613191_olgargor 30.05.19 20:17 Сейчас в теме
(13) Да . В попытке он пытается выполнить код, в исключении отрабатывает, если произошла ошибка, если в исключении ничего не написано, то он ничего не будет делать, то есть не будет ругаться в вашем случае. По идее так :)
user1145086; +1 Ответить
11. artfa 58 28.05.19 15:26 Сейчас в теме
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот