Сумма прописью в печатной форме "Список Перечислений Зарплаты В Банк"

1. Zhest 21 14.05.13 16:19 Сейчас в теме
Добрый день! Подскажите, каким образом можно вывести результат "ИтогоНаСтранице" прописью?

Функция ПечатьСписокПеречислений(ПечатаемыйДокумент, Ведомости, ФИОСокращенно = Истина) Экспорт
	
	ТабДокумент = Новый ТабличныйДокумент;
	ТабДокумент.ПолеСлева = 0;
	ТабДокумент.ПолеСправа = 0;
	ТабДокумент.ИмяПараметровПечати = "ПАРАМЕТРЫ_ПЕЧАТИ_СписокПеречислений";
	
	Макет 		= ПолучитьМакет("СписокПеречисленийЗарплатыВБанк");
	
	// получаем данные для печати
	ВыборкаДляШапки = ЗапросШапкиДляПечатиСпискаПеречислений(ПечатаемыйДокумент).Выполнить().Выбрать();
	ВыборкаРаботники = ЗапросСпискаДляПечатиПеречняПеречислений(ПечатаемыйДокумент.Дата, Ведомости, ФИОСокращенно).Выполнить().Выбрать();
	
	// подсчитываем количество страниц документа - для корректного разбиения на страницы
	ВсегоСтрокДокумента = ВыборкаРаботники.Количество();

	ОбластьМакетаШапкаДокумента = Макет.ПолучитьОбласть("ШапкаДокумента");
	ОбластьМакетаШапка			= Макет.ПолучитьОбласть("Шапка");
	ОбластьМакетаСтрока 		= Макет.ПолучитьОбласть("Строка");
	ОбластьМакетаИтогПоСтранице = Макет.ПолучитьОбласть("ИтогПоЛисту");
	ОбластьМакетаПодвал 		= Макет.ПолучитьОбласть("Подвал");
	
	// массив с двумя строками - для разбиения на страницы
    ВыводимыеОбласти = Новый Массив();
	ВыводимыеОбласти.Добавить(ОбластьМакетаСтрока);
	ВыводимыеОбласти.Добавить(ОбластьМакетаИтогПоСтранице);
	
	// выводим данные о руководителях организации
	Пока ВыборкаДляШапки.Следующий() Цикл
		ОбластьМакетаШапкаДокумента.Параметры.Заполнить(ВыборкаДляШапки); // Шапка документа.
 		ОбластьМакетаШапкаДокумента.Параметры.НазваниеОрганизации = СокрЛП(ОбластьМакетаШапкаДокумента.Параметры.НазваниеОрганизации);
		ОбластьМакетаСтрока.Параметры.Заполнить(ВыборкаДляШапки);
		ОбластьМакетаПодвал.Параметры.Заполнить(ВыборкаДляШапки); // подписи
	КонецЦикла;
	
	ТабДокумент.Вывести(ОбластьМакетаШапкаДокумента);
	ТабДокумент.Вывести(ОбластьМакетаШапка);
	
	ВыведеноСтраниц = 1; ВыведеноСтрок = 0; ИтогоНаСтранице = 0; Итого = 0;
	// выводим данные по строкам документа.
	Пока ВыборкаРаботники.Следующий() Цикл
	
		// разбиение на страницы
		ВыведеноСтрок = ВыведеноСтрок + 1;
		
		ОбластьМакетаСтрока.Параметры.Заполнить(ВыборкаРаботники);
		ОбластьМакетаСтрока.Параметры.НомерСтроки = ВыведеноСтрок;
		
		// Проверим, уместится ли строка на странице или надо открывать новую страницу
		ВывестиПодвалЛиста = Не ФормированиеПечатныхФорм.ПроверитьВыводТабличногоДокумента(ТабДокумент, ВыводимыеОбласти);
		Если Не ВывестиПодвалЛиста и ВыведеноСтрок = ВсегоСтрокДокумента Тогда
			ВыводимыеОбласти.Добавить(ОбластьМакетаПодвал);
			ВывестиПодвалЛиста = Не ФормированиеПечатныхФорм.ПроверитьВыводТабличногоДокумента(ТабДокумент, ВыводимыеОбласти);
		КонецЕсли;
		Если ВывестиПодвалЛиста Тогда
			
			ОбластьМакетаИтогПоСтранице.Параметры.ИтогоНаСтранице = ИтогоНаСтранице;
			ОбластьМакетаИтогПоСтранице.Параметры.ИтогоНаСтранице = ЧислоПрописью(ИтогоНаСтранице,,"Рубль,рубля,рублей,м,копейка,копейки,копеек,ж,2");
			ТабДокумент.Вывести(ОбластьМакетаИтогПоСтранице);
			ТабДокумент.ВывестиГоризонтальныйРазделительСтраниц();
			ТабДокумент.Вывести(ОбластьМакетаШапка);
			ВыведеноСтраниц = ВыведеноСтраниц + 1;
			ИтогоНаСтранице = 0;
			
		КонецЕсли;
		
		ТабДокумент.Вывести(ОбластьМакетаСтрока);
		ИтогоНаСтранице = ИтогоНаСтранице + ВыборкаРаботники.Сумма;
		Итого = Итого + ВыборкаРаботники.Сумма;

	КонецЦикла;

	Если ВыведеноСтрок > 0 Тогда 
		ОбластьМакетаИтогПоСтранице.Параметры.ИтогоНаСтранице = ИтогоНаСтранице;
	КонецЕсли;
	
	ВыводимыеОбласти = Новый Массив();
	ВыводимыеОбласти.Добавить(ОбластьМакетаСтрока);
	//ВыводимыеОбласти.Добавить(ОбластьМакетаИтогПоСтранице);
	//ВыводимыеОбласти.Добавить(ОбластьМакетаПодвал);
	//Для Сч = 1 По ОбластьМакетаСтрока.Параметры.Количество() Цикл
	//	ОбластьМакетаСтрока.Параметры.Установить(Сч - 1,""); 
	//КонецЦикла;
	//ОбластьМакетаСтрока.Параметры.Физлицо = " " + Символы.ПС + " ";
	//Пока ФормированиеПечатныхФорм.ПроверитьВыводТабличногоДокумента(ТабДокумент, ВыводимыеОбласти, Ложь) Цикл
	//	ТабДокумент.Вывести(ОбластьМакетаСтрока);
	//КонецЦикла;
	
	ТабДокумент.Вывести(ОбластьМакетаИтогПоСтранице);
	ОбластьМакетаПодвал.Параметры.Итого = Итого;
	ТабДокумент.Вывести(ОбластьМакетаПодвал);

	Возврат ТабДокумент;
	
КонецФункции
Показать
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. HameleonA 103 14.05.13 21:24 Сейчас в теме
Смотрите ЧислоПрописью(<Число>, <ФорматнаяСтрока>, <ПараметрыПредметаИсчисления>)
3. Zhest 21 15.05.13 09:35 Сейчас в теме
Спасибо, я так и сделала, просто пару строчек еще прописала и все получилось!
Оставьте свое сообщение

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