БухИтоги=СоздатьОбъект("БухгалтерскиеИтоги");
БухИтоги.ИспользоватьПланСчетов(ПланыСчетов.Наш);
БухИтоги.ИспользоватьРазделительУчета(ФирмаДокумента);
БухИтоги.ИспользоватьСубконто(ВидыСубконто.Сотрудник,,1);
БухИтоги.ВыполнитьЗапрос(,ТекущаяДата(),"70");
БухИтоги.ВыбратьСубконто(1);
Пока БухИтоги.ПолучитьСубконто(1)=1 Цикл
Сотр=БухИтоги.Субконто(1);
ИОст=БухИтоги.СКК(1);
НоваяСтрока();
// Заполняем новыми строками
Сотрудник=Сотр;
Сумма=Окр(ИОст*Коэфф,2,1);
КонецЦикла;
КонецПроцедуры
Напишем модуль проведения документа. Он очень простой.
Процедура ОбработкаПроведения()
КурсД=Курс;
КратД=Валюта.Кратность;
КурсУ=Константа.ОснВалюта.Курс.Получить(ДатаДок);
КратУ=Константа.ОснВалюта.Кратность;
Коэфф=Окр((КурсД*КратУ)/(КурсУ*КратД),6,1);
// переводим в валюту документа
ВыбратьСтроки();
Пока ПолучитьСтроку() = 1 Цикл
Операция.НоваяПроводка();
Операция.Дебет.Счет = СчетПоКоду("70",ПланыСчетов.Наш);
Операция.Кредит.Счет = СчетПоКоду("50.1",ПланыСчетов.Наш);
Операция.Дебет.Сотрудник = Сотрудник;
Операция.Сумма = Окр(Сумма*Коэфф,2,1);
Операция.Фирма = ФирмаДокумента;
Операция.Комментарий = "Выплата зарплаты из кассы";
Операция.НомерЖурнала = "1";
КонецЦикла;
Операция.Содержание = "Выплата зарплаты";
Операция.СуммаОперации = Окр(Итог("Сумма")*Коэфф,2,1);
Операция.Автор = АвторДокумента;
Операция.Записать();
КонецПроцедуры
Как видите, все просто и коротко. Проверьте работоспособность документа в 1С:Предприятии. И попробуйте поредактировать операцию, создаваемую документом.
Глава 8
2.42 Отчет по остаткам на складе готовой продукции.