Сбивается сортировка в печатной форме при выводе на печать
Добрый день! Помогите, пожалуйста, разобраться. При заполнении документа в табличных частях всё отображается в плане упорядочивания отлично, но при выводе на печать нумерация сбивается как на скриншоте.
Есть тестовая база, в которой я изначально и сделал доработку, там всё отлично выводится на печать. Код идентичен
Есть тестовая база, в которой я изначально и сделал доработку, там всё отлично выводится на печать. Код идентичен
Прикрепленные файлы:
![](/upload/forum/upload/076/076cbdebbb697c1e75325d838afe9141.png)
Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
(2) Серверная и та и та
Функция ПечатнаяФорма(МассивОбъектов, ОбъектыПечати, ИмяМакета,Специальность=Неопределено)
ТабличныйДокумент = Новый ТабличныйДокумент;
ПервыйДокумент = Истина;
Для Каждого ТекущийДокумент Из МассивОбъектов Цикл
Если Не ПервыйДокумент Тогда
ТабличныйДокумент.ВывестиГоризонтальныйРазделительСтраниц();
КонецЕсли;
ПервыйДокумент = Ложь;
НомерСтрокиНачало = ТабличныйДокумент.ВысотаТаблицы + 1;
Если ИмяМакета = "РейтингАбитуриентов" Тогда
Запрос = Новый Запрос();
Запрос.УстановитьПараметр("ТекущийДокумент", ТекущийДокумент);
Запрос.Текст =
"ВЫБРАТЬ
| РейтингАбитуриентов.БазыОсвоенияПрограммОбучения КАК БазыОсвоенияПрограммОбучения,
| РейтингАбитуриентов.Дата КАК Дата,
| РейтингАбитуриентов.ИсключитьЦелевиков КАК ИсключитьЦелевиков,
| РейтингАбитуриентов.Организация КАК Организация,
| РейтингАбитуриентов.План КАК План,
| РейтингАбитуриентов.ПолученноеОбразование КАК ПолученноеОбразование,
| РейтингАбитуриентов.Специальность КАК Специальность,
| РейтингАбитуриентов.Финансирование КАК Финансирование,
| РейтингАбитуриентов.ФормаОбучения КАК ФормаОбучения,
| РейтингАбитуриентов.ЦелевоеНаправление КАК ЦелевоеНаправление,
| РейтингАбитуриентов.СписокАбитуриентовПоСобеседованию.(
| НомерСтроки КАК НомерСтроки,
| АнкетаАбитуриента КАК АнкетаАбитуриента,
| Абитуриент КАК Абитуриент,
| ЦелевоеНаправление КАК ЦелевоеНаправление,
| Комментарий КАК Комментарий,
| АнкетаАбитуриента.ВидДокументаОбразования КАК АнкетаАбитуриентаВидДокументаОбразования,
| КопияАттестата КАК КопияАттестата,
| АнкетаАбитуриента.ЕстьЦелевойДоговор КАК АнкетаАбитуриентаЕстьЦелевойДоговор,
| АнкетаАбитуриента.СреднийБаллАттестата КАК АнкетаАбитуриентаСреднийБаллАттестата
| ) КАК СписокАбитуриентовПоСобеседованию,
| РейтингАбитуриентов.СписокАбитуриентовКЗачислению.(
| НомерСтроки КАК НомерСтроки,
| АнкетаАбитуриента КАК АнкетаАбитуриента,
| Абитуриент КАК Абитуриент,
| СуммаБаллов КАК СуммаБаллов,
| ЦелевоеНаправление КАК ЦелевоеНаправление,
| Комментарий КАК Комментарий,
| АнкетаАбитуриента.ВидДокументаОбразования КАК АнкетаАбитуриентаВидДокументаОбразования,
| КопияАттестата КАК КопияАттестата,
| АнкетаАбитуриента.ЕстьЦелевойДоговор КАК АнкетаАбитуриентаЕстьЦелевойДоговор,
| АнкетаАбитуриента.СреднийБаллАттестата КАК АнкетаАбитуриентаСреднийБаллАттестата
| ) КАК СписокАбитуриентовКЗачислению,
| РейтингАбитуриентов.СписокАбитуриентовКРаспределению.(
| НомерСтроки КАК НомерСтроки,
| АнкетаАбитуриента КАК АнкетаАбитуриента,
| Абитуриент КАК Абитуриент,
| СуммаБаллов КАК СуммаБаллов,
| ЦелевоеНаправление КАК ЦелевоеНаправление,
| Комментарий КАК Комментарий,
| КопияАттестата КАК КопияАттестата,
| АнкетаАбитуриента.ВидДокументаОбразования КАК АнкетаАбитуриентаВидДокументаОбразования,
| АнкетаАбитуриента.СреднийБаллАттестата КАК АнкетаАбитуриентаСреднийБаллАттестата,
| АнкетаАбитуриента.ЕстьЦелевойДоговор КАК АнкетаАбитуриентаЕстьЦелевойДоговор
| ) КАК СписокАбитуриентовКРаспределению
|ИЗ
| Документ.РейтингАбитуриентов КАК РейтингАбитуриентов
|ГДЕ
| РейтингАбитуриентов.Ссылка = &ТекущийДокумент";
Шапка = Запрос.Выполнить().Выбрать();
Шапка.Следующий();
// СпециальностьДисциплины = Шапка.СпециальностьДисциплины.Выбрать();
ТабличныйДокумент.ИмяПараметровПечати = "ПАРАМЕТРЫ_ПЕЧАТИ_РейтингАбитуриентов_РейтингАбитуриентов";
Макет = УправлениеПечатью.МакетПечатнойФормы("Документ.РейтингАбитуриентов.ПФ_MXL_РейтингАбитуриентов");
ОбластьМакета = Макет.ПолучитьОбласть("Шапка");
ОбластьМакета.Параметры.Организация =Шапка.Организация ;
ОбластьМакета.Параметры.Дата= Шапка.Дата;
ОбластьМакета.Параметры.Специальность=Шапка.Специальность;
ОбластьМакета.Параметры.Финансирование=Шапка.Финансирование;
ОбластьМакета.Параметры.ПолученноеОбразование= Шапка.ПолученноеОбразование;
ОбластьМакета.Параметры.БазыОсвоенияПрограммОбучения= Шапка.БазыОсвоенияПрограммОбучения;
ОбластьМакета.Параметры.ЦелевоеНаправление= Шапка.ЦелевоеНаправление;
ОбластьМакета.Параметры.ИсключитьЦелевиков= Шапка.ИсключитьЦелевиков;
ТабличныйДокумент.Вывести(ОбластьМакета);
ТабличныйДокумент.Вывести(Макет.ПолучитьОбласть("СписокАбитуриентовПоСобеседованиюШапка"));
ОбластьМакета = Макет.ПолучитьОбласть("СписокАбитуриентовПоСобеседованию");
СписокАбитуриентовПоСобеседованию = Шапка.СписокАбитуриентовПоСобеседованию.Выбрать();
Пока СписокАбитуриентовПоСобеседованию.Следующий() Цикл
ОбластьМакета.Параметры.НомерСтроки=СписокАбитуриентовПоСобеседованию.НомерСтроки;
//ОбластьМакета.Параметры.АнкетаАбитуриента=СписокАбитуриентовПоСобеседованию.АнкетаАбитуриента;
ОбластьМакета.Параметры.Абитуриент=СписокАбитуриентовПоСобеседованию.Абитуриент;
// ОбластьМакета.Параметры.ЦелевоеНаправление=СписокАбитуриентовПоСобеседованию.ЦелевоеНаправление;
//ОбластьМакета.Параметры.Комментарий=СписокАбитуриентовПоСобеседованию.Комментарий;
ОбластьМакета.Параметры.Копия=СписокАбитуриентовПоСобеседованию.КопияАттестата;
ТабличныйДокумент.Вывести(ОбластьМакета);
КонецЦикла;
ТабличныйДокумент.Вывести(Макет.ПолучитьОбласть("СписокАбитуриентовКЗачислениюШапка"));
ОбластьМакета = Макет.ПолучитьОбласть("СписокАбитуриентовКЗачислению");
СписокАбитуриентовПоСобеседованию = Шапка.СписокАбитуриентовКЗачислению.Выбрать();
Пока СписокАбитуриентовПоСобеседованию.Следующий() Цикл
ОбластьМакета.Параметры.НомерСтроки=СписокАбитуриентовПоСобеседованию.НомерСтроки;
// ОбластьМакета.Параметры.АнкетаАбитуриента=СписокАбитуриентовПоСобеседованию.АнкетаАбитуриента;
ОбластьМакета.Параметры.Абитуриент=СписокАбитуриентовПоСобеседованию.Абитуриент;
ОбластьМакета.Параметры.СуммаБаллов=СписокАбитуриентовПоСобеседованию.СуммаБаллов;
// ОбластьМакета.Параметры.ЦелевоеНаправление=СписокАбитуриентовПоСобеседованию.ЦелевоеНаправление;
//ОбластьМакета.Параметры.Комментарий=СписокАбитуриентовПоСобеседованию.Комментарий;
ОбластьМакета.Параметры.Копия=СписокАбитуриентовПоСобеседованию.КопияАттестата;
ОбластьМакета.Параметры.СБА = СписокАбитуриентовПоСобеседованию.АнкетаАбитуриентаСреднийБаллАттестата;
ОбластьМакета.Параметры.Целевой = СписокАбитуриентовПоСобеседованию.АнкетаАбитуриентаЕстьЦелевойДоговор;
ТабличныйДокумент.Вывести(ОбластьМакета);
КонецЦикла;
ТабличныйДокумент.Вывести(Макет.ПолучитьОбласть("СписокАбитуриентовКРаспределениюШапка"));
ОбластьМакета = Макет.ПолучитьОбласть("СписокАбитуриентовКРаспределению");
СписокАбитуриентовПоСобеседованию = Шапка.СписокАбитуриентовКРаспределению.Выбрать();
Пока СписокАбитуриентовПоСобеседованию.Следующий() Цикл
ОбластьМакета.Параметры.НомерСтроки=СписокАбитуриентовПоСобеседованию.НомерСтроки;
//ОбластьМакета.Параметры.АнкетаАбитуриента=СписокАбитуриентовПоСобеседованию.АнкетаАбитуриента;
ОбластьМакета.Параметры.Абитуриент=СписокАбитуриентовПоСобеседованию.Абитуриент;
ОбластьМакета.Параметры.СуммаБаллов=СписокАбитуриентовПоСобеседованию.СуммаБаллов;
//ОбластьМакета.Параметры.ЦелевоеНаправление=СписокАбитуриентовПоСобеседованию.ЦелевоеНаправление;
//ОбластьМакета.Параметры.Комментарий=СписокАбитуриентовПоСобеседованию.Комментарий;
ОбластьМакета.Параметры.Копия=СписокАбитуриентовПоСобеседованию.КопияАттестата;
ОбластьМакета.Параметры.СБА = СписокАбитуриентовПоСобеседованию.АнкетаАбитуриентаСреднийБаллАттестата;
ОбластьМакета.Параметры.Целевой = СписокАбитуриентовПоСобеседованию.АнкетаАбитуриентаЕстьЦелевойДоговор;
ТабличныйДокумент.Вывести(ОбластьМакета);
КонецЦикла;
// ИначеЕсли ИмяМакета = "" Тогда
// // ТелоОбработкиПечати
// ИначеЕсли ИмяМакета = "" Тогда
// // ТелоОбработкиПечати
КонецЕсли;
УправлениеПечатью.ЗадатьОбластьПечатиДокумента(ТабличныйДокумент, НомерСтрокиНачало, ОбъектыПечати, ТекущийДокумент);
КонецЦикла;
ТабличныйДокумент.АвтоМасштаб = Истина;
Возврат ТабличныйДокумент;
КонецФункции // ПечатнаяФорма()
Показать
(5)а получается я же могу в этой тз отсортировать при равенстве значений в одной колонке, чтобы в другой они становились в порядке возрастания. В первой у меня средний балл дисциплин, а во второй средний балл аттестата. И вот при равенстве балла дисциплин нужно чтобы в порядке убывания во второй остортировались. Так заработает же?
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот