|
Автоподбор ширины строки по количеству текста | ☑ | ||
---|---|---|---|---|
0
sergqwert
28.10.18
✎
21:35
|
Как в печатной форме откорректировать автоподбор ширины строки по количеству текста? Не вмещается текст в ячейке(обрезается). Поставил галочку Автовысота, все также.
Код ниже: Процедура ПриОткрытии() Если ЭтотОбъект.ЭтоНовый() Тогда ФотоВысота = 35; ФотоШирина = 23; Конецесли; Если ЭтотОбъект.ЭтоНовый() ИЛИ Спецификации.Количество()=0 Тогда ЗаполнитьНоменклатуруСпецификации(); КонецЕсли; КонецПроцедуры Процедура Печать(ИмяМакета, КоличествоЭкземпляров = 1, НаПринтер = Ложь) Экспорт Если ЭтотОбъект.ЭтоНовый() Тогда Предупреждение("Документ можно распечатать только после его записи"); Возврат; ИначеЕсли Не УправлениеДопПравамиПользователей.РазрешитьПечатьНепроведенныхДокументов(Проведен) Тогда Предупреждение("Недостаточно полномочий для печати непроведенного документа!"); Возврат; КонецЕсли; Если Не РаботаСДиалогами.ПроверитьМодифицированность(ЭтотОбъект) Тогда Возврат; КонецЕсли; ТабДокумент = Новый ТабличныйДокумент; ТабДокумент.ИмяПараметровПечати = "ПАРАМЕТРЫ_ПЕЧАТИ_БрифЛист"; Макет = ПолучитьМакет(ИмяМакета); КодЯзыкаПечать = Локализация.ПолучитьЯзыкФормированияПечатныхФорм(УправлениеПользователями.ПолучитьЗначениеПоУмолчанию(глЗначениеПеременной("глТекущийПользователь"), "РежимФормированияПечатныхФорм")); Макет.КодЯзыкаМакета = КодЯзыкаПечать; ОбластьШапка = Макет.ПолучитьОбласть("Шапка"); ОбластьСтрока= Макет.ПолучитьОбласть("Строка"); ОбластьДно = Макет.ПолучитьОбласть("Дно"); ОбластьШапка.Область(1,3,,3).ШиринаКолонки = ФотоШирина*13.3/23+1; ОбластьСтрока.Область(1,3,1,3).ШиринаКолонки= ФотоШирина*13.3/23+1; ОбластьДно.Область(1,3,,3).ШиринаКолонки=ФотоШирина*13.3/23+1; //ОбластьСтрока.Область(1,,1).ВысотаСтроки = ФотоВысота*70/23+1; ВысотаСтроки = ФотоВысота*70/23+1; ОбластьШапка.Параметры.БЛ = "Заказ на продукцию TM BERSERK SPORT ""BRIEF LIST"" № "+ОбщегоНазначения.ПолучитьНомерНаПечать(ЭтотОбъект); докПокупателя = ДокументОснование.Товары[0].Заказ; ОбластьШапка.Параметры.ЗаказПокупателя = ?(ЗначениеЗаполнено(докПокупателя),ОбщегоНазначения.ПолучитьНомерНаПечать(докПокупателя)+НСтр("ru=' от ';uk=' від '",КодЯзыкаПечать)+ Формат(докПокупателя.Дата, "ДФ='дд ММММ гггг';Л="+ Локализация.ОпределитьКодЯзыкаДляФормат(КодЯзыкаПечать)),""); ОбластьШапка.Параметры.ЗаказПоставщику = ОбщегоНазначения.ПолучитьНомерНаПечать(ДокументОснование)+НСтр("ru=' от ';uk=' від '",КодЯзыкаПечать)+ Формат(ДокументОснование.Дата, "ДФ='дд ММММ гггг';Л="+ Локализация.ОпределитьКодЯзыкаДляФормат(КодЯзыкаПечать)); //ОбластьШапка.Параметры.ЗаказПокупателя = ДокументОснование.Товары[0].Заказ; //ОбластьШапка.Параметры.ЗаказПоставщику = ДокументОснование; табДокумент.Вывести(ОбластьШапка); //ОбластьКартинка = ОбластьСтрока.ПолучитьОбласть(1,3,1,3); Нпп=1; Для каждого текСтрока из Спецификации Цикл ОбластьСтрока.Параметры.Нпп = Нпп; ОбластьСтрока.Параметры.Наименование = текСтрока.Номенклатура.Наименование +?(ЗначениеЗаполнено(текСтрока.Номенклатура.Артикул),"(артикул "+текСтрока.Номенклатура.Артикул+")",""); ОбластьСтрока.Параметры.НаименованиеРасшифровка = текСтрока.Номенклатура; ОбластьСтрока.Параметры.КодМодели = текСтрока.Номенклатура.КодМодели; тмпСтрока=""; Для каждого текСпецСтрока ИЗ текСтрока.Спецификация.ИсходныеКомплектующие Цикл Если НЕ текСпецСтрока.фБрифЛист Тогда Продолжить; КонецЕсли; тмпСтрока = тмпСтрока + СокрЛП(текСпецСтрока.Номенклатура.НаименованиеПолное) +" "+текСпецСтрока.ХарактеристикаНоменклатуры+" " +?(ЗначениеЗаполнено(текСпецСтрока.Комментарий),"( "+текСпецСтрока.Комментарий+"); ","; "); КонецЦикла; ОбластьСтрока.Параметры.Спецификация = тмпСтрока; ОбластьСтрока.Область(1,,1).АвтоВысотаСтроки=Истина; Если НЕ текСтрока.Номенклатура.ОсновноеИзображение.Пустая() Тогда Если ВысотаСтроки>ОбластьСтрока.Область(1,,1).ВысотаСтроки Тогда ОбластьСтрока.Область(1,,1).АвтоВысотаСтроки=Ложь; ОбластьСтрока.Область(1,,1).ВысотаСтроки = ВысотаСтроки; КонецЕсли; ОбластьСтрока.Рисунки.Изображение.Картинка = текСтрока.Номенклатура.ОсновноеИзображение.Хранилище.Получить(); Рисунок = ОбластьСтрока.Рисунки.Изображение; Рисунок.Верх = 1; //Рисунок.Лево = 1; Рисунок.Ширина = ФотоШирина; Рисунок.Высота = ФотоВысота; Рисунок.ГраницаСверху = 0; Рисунок.ГраницаСлева = 0; Рисунок.ГраницаСнизу = 0; Рисунок.ГраницаСправа = 0; Рисунок.РазмерКартинки = РазмерКартинки.Пропорционально; Иначе ОбластьСтрока.Рисунки.Изображение.Картинка = Новый Картинка; КонецЕсли; табДокумент.Вывести(ОбластьСтрока); текНоменклатура=текСтрока.Номенклатура; Нпп=Нпп+1; КонецЦикла; ОбластьДно.Параметры.ПечатьБирокИсполнитель1 = ПечатьБирокИсполнитель1.НаименованиеПолное; ОбластьДно.Параметры.ПечатьБирокИсполнитель2 = ПечатьБирокИсполнитель2.НаименованиеПолное; ОбластьДно.Параметры.ПечатьБирокИсполнитель3 = ПечатьБирокИсполнитель3.НаименованиеПолное; ОбластьДно.Параметры.Цена1 = ПолучитьЦенуПоКонтрагенту(ПечатьБирокИсполнитель1); ОбластьДно.Параметры.Цена2 = ПолучитьЦенуПоКонтрагенту(ПечатьБирокИсполнитель2); ОбластьДно.Параметры.Цена3 = ПолучитьЦенуПоКонтрагенту(ПечатьБирокИсполнитель3); ОбластьДно.Параметры.НанесениеПечатьИсполнитель1 = НанесениеПечатьИсполнитель1.НаименованиеПолное; ОбластьДно.Параметры.УслугаПечатиБиркиИсполнитель1=УслугаПечатиБиркиИсполнитель1.НаименованиеПолное; ОбластьДно.Параметры.УслугаПечатиБиркиИсполнитель2=УслугаПечатиБиркиИсполнитель2.НаименованиеПолное; ОбластьДно.Параметры.УслугаПечатиБиркиИсполнитель3=УслугаПечатиБиркиИсполнитель3.НаименованиеПолное; ОбластьДно.Параметры.ПошивИсполнитель = ДокументОснование.Контрагент.НаименованиеПолное; табДокумент.Вывести(ОбластьДно); УниверсальныеМеханизмы.НапечататьДокумент(ТабДокумент, КоличествоЭкземпляров, НаПринтер, ОбщегоНазначения.СформироватьЗаголовокДокумента(ЭтотОбъект, ЭтотОбъект.Метаданные().Представление()), ЭтотОбъект); КонецПроцедуры |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |