Добрый день, помогите разобраться, когда в ТЧ МестоРаботыТЧ справочника КарточкиПреподавателей несколько записей, то Телефон выводится несколько раз, что не так?
Процедура ДоговорПечать(ТабДок, Ссылка) Экспорт
//{{_КОНСТРУКТОР_ПЕЧАТИ(ДоговорПечать)
Макет = Документы.ДоговораСПреподавателями.ПолучитьМакет("Договор");
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| ДоговораСПреподавателями.НомерДоговора,
| ДоговораСПреподавателями.От,
| ДоговораСПреподавателями.Преподаватель,
| ДоговораСПреподавателями.Тема.(
| Название,
| Ссылка,
| НомерСтроки,
| Название КАК Название1
| ),
| КарточкиПреподавателейМестоРаботыТЧ.МестоРаботыПреподавателя,
| КарточкиПреподавателейМестоРаботыТЧ.ДолжностьПреподавателя,
| КарточкиПреподавателей.УлицаПроживанияПреподавателя КАК Улица,
| КарточкиПреподавателей.НомерДомаПроживанияПреподавателя КАК НомерДома,
| КарточкиПреподавателей.НомерКорпусаПроживанияПреподавателя КАК Корпус,
| КарточкиПреподавателей.НомерПодъездаПроживанияПреподавателя КАК НомерПодъезда,
| КарточкиПреподавателей.НомерКвКомнатыПроживанияПреподавателя КАК НомерКвартиры,
| КарточкиПреподавателейКонтактнаяИнформацияПреподавателя.НомерСтроки,
| КарточкиПреподавателейКонтактнаяИнформацияПреподавателя.КонтактнаяИнформацияПреподавателяКонтакты,
| КарточкиПреподавателейКонтактнаяИнформацияПреподавателя.Ссылка,
| КарточкиПреподавателейПаспортныеДанныеТЧ.Серия,
| КарточкиПреподавателейПаспортныеДанныеТЧ.Номер,
| КарточкиПреподавателейПаспортныеДанныеТЧ.ОрганВыдавший,
| КарточкиПреподавателейПаспортныеДанныеТЧ.ДатаВыдачи,
| КарточкиПреподавателейПаспортныеДанныеТЧ.ЛичныйНомер,
| КарточкиПреподавателейМестоРаботыТЧ.МестоРаботыПреподавателяОтдел,
| ДоговораСПреподавателями.ДоговорС,
| ДоговораСПреподавателями.ДоговорС КАК ДоговорС1,
| ДоговораСПреподавателями.ДоговорС КАК ДоговорС2,
| ДоговораСПреподавателями.ДоговорПо,
| ДоговораСПреподавателями.Ссылка КАК Ссылка1,
| ДоговораСПреподавателями.ВерсияДанных,
| ДоговораСПреподавателями.ПометкаУдаления,
| ДоговораСПреподавателями.Номер КАК Номер1,
| ДоговораСПреподавателями.Дата,
| ДоговораСПреподавателями.Проведен,
| ДоговораСПреподавателями.Ответственный,
| ДоговораСПреподавателями.Преподаватель КАК Преподаватель1,
| ДоговораСПреподавателями.НомерДоговора КАК НомерДоговора1,
| ДоговораСПреподавателями.От КАК От1,
| ДоговораСПреподавателями.ДоговорС КАК ДоговорС3,
| ДоговораСПреподавателями.ДоговорПо КАК ДоговорПо1,
| ДоговораСПреподавателями.Комментарий,
| ДоговораСПреподавателями.ДатаДокумента,
| ДоговораСПреподавателями.НомерЛицензии,
| ДоговораСПреподавателями.ДатаЛицензии КАК ДатаЛицензии1,
| ДоговораСПреподавателями.ЛицевойСчет,
| ДоговораСПреподавателями.ПрофильОбразования,
| ДоговораСПреподавателями.Разделы.(
| Ссылка,
| НомерСтроки,
| Тема,
| Раздел
| ),
| ДоговораСПреподавателями.Темы.(
| Ссылка,
| НомерСтроки,
| Тема
| ),
| ДоговораСПреподавателями.НомерЛицензии.Наименование КАК РуководительФИО,
| ДоговораСПреподавателями.НомерЛицензии.НомерЛицензии КАК НомерЛ,
| ДоговораСПреподавателями.НомерЛицензии.Должность.Наименование КАК ДолжностьРуководителя,
| ДоговораСПреподавателями.НомерЛицензии.Пол КАК Пол,
| ДоговораСПреподавателями.НомерЛицензии.ДатаЛицензии КАК ДатаЛицензии2,
| КарточкиПреподавателей.УлицаПроживанияПреподавателя.НаселённыйПункт КАК Город,
| КарточкиПреподавателей.УлицаПроживанияПреподавателя.НаселённыйПункт.Облать КАК Область,
| КарточкиПреподавателей.УлицаПроживанияПреподавателя.НаселённыйПункт.Район.Наименование КАК Район,
| КарточкиПреподавателейМестоРаботыТЧ.ДолжностьПреподавателя.Наименование КАК Должность,
| КарточкиПреподавателейМестоРаботыТЧ.Пенсионер
|ИЗ
| Справочник.КарточкиПреподавателей.МестоРаботыТЧ КАК КарточкиПреподавателейМестоРаботыТЧ
| ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.ДоговораСПреподавателями КАК ДоговораСПреподавателями
| ЛЕВОЕ СОЕДИНЕНИЕ Справочник.КарточкиПреподавателей КАК КарточкиПреподавателей
| ПО ДоговораСПреподавателями.Преподаватель = КарточкиПреподавателей.Ссылка
| ЛЕВОЕ СОЕДИНЕНИЕ Справочник.КарточкиПреподавателей.КонтактнаяИнформацияПреподавателя КАК КарточкиПреподавателейКонтактнаяИнформацияПреподавателя
| ПО ДоговораСПреподавателями.Преподаватель.КонтактнаяИнформацияПреподавателя.Ссылка = КарточкиПреподавателейКонтактнаяИнформацияПреподавателя.Ссылка
| ВНУТРЕННЕЕ СОЕДИНЕНИЕ Справочник.КарточкиПреподавателей.ПаспортныеДанныеТЧ КАК КарточкиПреподавателейПаспортныеДанныеТЧ
| ПО ДоговораСПреподавателями.Преподаватель.ПаспортныеДанныеТЧ.Ссылка = КарточкиПреподавателейПаспортныеДанныеТЧ.Ссылка
| ЛЕВОЕ СОЕДИНЕНИЕ Справочник.Доверенность КАК Доверенность
| ПО ДоговораСПреподавателями.НомерЛицензии = Доверенность.Ссылка
| И ДоговораСПреподавателями.ДатаЛицензии = Доверенность.Ссылка
| ПО КарточкиПреподавателейМестоРаботыТЧ.Ссылка = ДоговораСПреподавателями.Преподаватель.МестоРаботыТЧ.Ссылка
|ГДЕ
| ДоговораСПреподавателями.Ссылка В(&Ссылка)";
Запрос.Параметры.Вставить("Ссылка", Ссылка);
Выборка = Запрос.Выполнить().Выбрать();
Шапка = Макет.ПолучитьОбласть("Шапка");
ОсновнаяОбласть = Макет.ПолучитьОбласть("ОсновнаяОбласть");
ОсновнаяОбласть1 = Макет.ПолучитьОбласть("ОсновнаяОбласть1");
ОсновнаяОбласть2 = Макет.ПолучитьОбласть("ОсновнаяОбласть2");
Подвал = Макет.ПолучитьОбласть("Подвал");
Подвал2 = Макет.ПолучитьОбласть("Подвал2");
НомерСтроки = (" ");
ВТ = Запрос.Выполнить().Выгрузить();
МассивКонтактов = ВТ.ВыгрузитьКолонку("КонтактнаяИнформацияПреподавателяКонтакты");
СтрокаКонтактов = "";
МассивНомеров = ВТ.ВыгрузитьКолонку("НомерСтроки");
СтрокаНомеров = "";
Для Каждого КонтактнаяИнформацияПреподавателяКонтакты из МассивКонтактов Цикл
СтрокаКонтактов = СтрокаКонтактов + КонтактнаяИнформацияПреподавателяКонтакты + НомерСтроки;
КонецЦикла;
//ТабДок.Очистить();
ВставлятьРазделительСтраниц = Ложь;
Пока Выборка.Следующий() Цикл
Если ВставлятьРазделительСтраниц Тогда
ТабДок.ВывестиГоризонтальныйРазделительСтраниц();
КонецЕсли;
Телефон = Макет.ПолучитьОбласть("Телефон");
Телефон.Параметры.Контакт = СтрокаКонтактов;
Телефон.Параметры.Заполнить(Выборка);
Если Выборка.КонтактнаяИнформацияПреподавателяКонтакты = "" Тогда
Телефон.Параметры.Контакт = "----";
КонецЕсли;
Если ПустаяСтрока (Выборка.КонтактнаяИнформацияПреподавателяКонтакты) Тогда
Телефон.Параметры.Контакт = "-нет данных-";
КонецЕсли;
ТабДок.Очистить();
Шапка.Параметры.Заполнить(Выборка);
Шапка.Параметры.От = Формат(Выборка.От, "ДФ='dd MMMM yyyy'; ДЛФ=DD");
ТабДок.Вывести(Шапка, Выборка.Уровень());
МассивФИО = ПолучитьСклоненияСтроки(Ссылка[0].НомерЛицензии,,"ПД = Родительный");
ОсновнаяОбласть.Параметры.Руководитель = МассивФИО[0];
ОсновнаяОбласть.Параметры.ДатаЛицензии= Формат(Ссылка[0].ДатаЛицензии, "ДФ='dd.MM.yyyy'; ДЛФ=DD");
МассивДолжность = ПолучитьСклоненияСтроки(Ссылка[0].НомерЛицензии.Должность,,"ПД = Родительный");
ОсновнаяОбласть.Параметры.ДолжностьР = МассивДолжность[0];
Если Выборка.Пол = Перечисления.Пол.Мужчина Тогда
ОсновнаяОбласть.Параметры.Действие = "действующего";
Иначе
ОсновнаяОбласть.Параметры.Действие = "действующей"
КонецЕсли;
ОсновнаяОбласть.Параметры.Заполнить(Выборка);
Если Выборка.Пенсионер = ИСТИНА Тогда
ОсновнаяОбласть.Параметры.ДолжностьПреподавателя = "Пенсионер";
КонецЕсли;
ТабДок.Вывести(ОсновнаяОбласть);
ВыборкаТема = Выборка.Тема.Выбрать();
Пока ВыборкаТема.Следующий() Цикл
Строка = "";
Строка = Строка + ВыборкаТема.Название + ", ";
ОсновнаяОбласть1.Параметры.Заполнить(ВыборкаТема);
ТабДок.Вывести(ОсновнаяОбласть1, ВыборкаТема.Уровень());
КонецЦикла;
ОсновнаяОбласть2.Параметры.Заполнить(Выборка);
ОсновнаяОбласть2.Параметры.ДоговорС = Формат(Выборка.ДоговорС, "ДФ='dd MMMM yyyy'; ДЛФ=DD");
ОсновнаяОбласть2.Параметры.ДоговорПо = Формат(Выборка.ДоговорПо, "ДФ='dd MMMM yyyy'; ДЛФ=DD");
ТабДок.Вывести(ОсновнаяОбласть2);
Подвал.Параметры.Заполнить(Выборка);
Если Не ЗначениеЗаполнено(Выборка.Область) Тогда
Иначе
Подвал.Параметры.Область = Строка(Выборка.Область) +", ";
КонецЕсли;
Если Строка(Выборка.Район) = "" Тогда
Подвал.Параметры.Район = "";
Иначе
Подвал.Параметры.Район = Строка(Выборка.Район)+ " р-н, ";
КонецЕсли;
Подвал.Параметры.Город = "г." + Выборка.Город + " ,";
Подвал.Параметры.Улица = "ул." + Выборка.Улица + " ,";
Подвал.Параметры.НомерДома = "д." + Выборка.НомерДома + " ,";
Если ЗначениеЗаполнено(Выборка.Корпус) Тогда
Подвал.Параметры.Корпус = "к." + Выборка.Корпус + " ,";
Иначе
Подвал.Параметры.Корпус = "";
КонецЕсли;
// Подвал.Параметры.Корпус = "к." + Выборка.Корпус + " ,";
Подвал.Параметры.НомерКвартиры = "кв." + Выборка.НомерКвартиры;
ТабДок.Вывести(Подвал);
Подвал2.Параметры.Заполнить(Выборка);
Подвал2.Параметры.ДатаВыдачи = Формат(Выборка.ДатаВыдачи, "ДФ='dd.MM.yyyy'; ДЛФ=D");
МассивДолжность = ПолучитьСклоненияСтроки(Выборка.ДолжностьРуководителя,,"ПД = Родительный");
Подвал2.Параметры.ДолжностьРуководителя = МассивДолжность[0];
МассивФИО = РазложитьСтрокуНаПодстроки(Выборка.РуководительФИО, " ");
ФИО = МассивФИО[0]+" "+ Лев(МассивФИО[1],1)+". "+Лев(МассивФИО[2],1);
Подвал2.Параметры.ОтветственныйР = ФИО;
ТабДок.Вывести(Телефон, Выборка.Уровень());
ТабДок.Вывести(Подвал2);
ВставлятьРазделительСтраниц = Истина;
КонецЦикла;
КонецПроцедуры
ПоказатьПрикрепленные файлы:



По теме из базы знаний
- Формирование актов сверки взаиморасчётов и групповая печать
- КС 2 и КС 3 в 1С Бухгалтерия 3.0: заполнить, распечатать, сохранить. Отправить по ЭДО!
- 1С: Розница/УТ 10.3. ЕГАИС, загрузка акцизных марок в справочник Штрихкоды и Упаковки, регистр Акцизные марки из XML-сообщений входящих ТТН ЕГАИС + Печать акцизных марок
- Печать уведомления о прибытии иностранного гражданина или лица без гражданства в место пребывания старого (2019г с правками из приказа МВД №180 от 24.03.2020) и нового (2021г согласно приложению №4 к приказу МВД №856 от 10.12.2020) образца для ЗУП 3.1
- Печать дубля кода маркировки с помощью сканера
Найденные решения
Остальные ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот