- Программная доработка макета построителя отчета
- Свойство построителя отчета «Макет»
- Изменение сгенерированного макета
- Изменение оформительских свойств для определенных полей
- Изменение полей для определенных группировок
- Работа с макетом оформления
- Подсказки «1с»
- понедельник, 9 февраля 2015 г.
- Настройка ширины колонок результата построителя отчета
- Настройка ширины колонок (скрыть колонки) результата построителя отчета
- Как изменить размер колонок в отчете?
- См. также:
- Похожие публикации
- Карточка публикации
- Добавить комментарий Отменить ответ
- Построитель отчета
- Как в 1С СКД изменить ширину колонок отчета
- Настройка колонок в 1С СКД
Программная доработка макета построителя отчета
При выводе отчетов с помощью построителя отчета иногда возникает необходимость обеспечить дополнительное форматирование полей в отчете, сохранив при этом возможность настройки пользователем всех параметров отчета. Одним из возможных вариантов реализации данной функциональности является программная доработка макета, автоматически генерируемого построителем отчета. В данном разделе описываются некоторые приемы, которые можно использовать для доработки сгенерированного макета.
Свойство построителя отчета «Макет»
Объект ПостроительОтчета имеет свойство Макет. Это свойство содержит макет — табличный документ, который будет использован для вывода отчета. В случае, когда данное свойство не установлено, построитель отчета генерирует макет автоматически при каждом доступе к значению данного свойства и использует сгенерированный макет для вывода отчета. Если программно изменить значение данного свойства, то построитель отчета перестает генерировать макет, а для вывода отчета будет использовать установленный макет. Для того чтобы построитель отчета продолжил автоматическую генерацию макета, необходимо «сбросить» свойство Макет, присвоив ему значение Неопределено.
Пример установки макета:
Пример сброса макета и получения автоматически сгенерированного макета:
Изменение сгенерированного макета
При необходимости доработки автоматически сгенерированного макета достаточно получить автоматически сгенерированный макет, произвести в нем необходимые изменения и установить его в качестве макета.
В данном примере были изменены цвет фона и цвет текста во всем макете.
Изменение оформительских свойств для определенных полей
Если необходимо доработать формат некоторого поля, выводимого в отчет, необходимо найти ячейку, в которой располагается данное поле, и изменить значение формата в данной ячейке.
В приведенном примере в макете ищется поле Количество и устанавливается формат поля — два знака после запятой.
Аналогичным приемом можно воспользоваться для установки ширины колонки, в которой располагается поле.
Изменение полей для определенных группировок
Иногда возникает потребность исключения некоторых ресурсов из определенных группировок. Например, требуется выводить поле ВалютнаяСуммаОборот только для группировок, которые располагаются после группировки Валюта, и не выводить для всех вышестоящих группировок. Такой функциональности можно достичь, если доработать макет, удалив из группировок, которые находятся выше группировки Валюта, поле ВалютнаяСуммаОборот.
Работа с макетом оформления
При необходимости использования макета оформления для доработанных макетов следует установить построителю отчета макет оформления после доработки маета и вызвать метод построителя ОформитьМакет(). В приведенном ранее примере следует перед указанным кодом сбросить макет оформления построителя отчета, присвоив ему значение Неопределено, а после доработки макета установить требуемый макет оформления и вызвать метод ОформитьМакет().
Источник
Подсказки «1с»
Примеры по программированию в 1с 7.7, 8.1, 8.2
понедельник, 9 февраля 2015 г.
Настройка ширины колонок результата построителя отчета
Настройка ширины колонок (скрыть колонки) результата построителя отчета
Процедура ШиринаКолонок(Тд,МассивКолонокУдалить)
ТабличныйДокумент = Тд;
НачалоДанных = 0;
// Найдем в результирующем документе область шапки таблицы
ОбластьШапки = ТабличныйДокумент.Области.Найти(«ШапкаТаблицы»);
Если ТипЗнч(ОбластьШапки) = Тип(«ОбластьЯчеекТабличногоДокумента») Тогда
// Из шапки таблицы получим начальную строку с которой будем рассчитывать ширины
НачальнаяСтрока = ОбластьШапки.Верх;
НачалоДанных = ОбластьШапки.Низ + 1;
// Если область шапки таблицы не найдена, найдем область шапки строк
ОбластьШапки = ТабличныйДокумент.Области.Найти(«ШапкаСтрок»);
Если ТипЗнч(ОбластьШапки) = Тип(«ОбластьЯчеекТабличногоДокумента») Тогда
// Из шапки таблицы получим начальную строку с которой будем рассчитывать ширины
НачальнаяСтрока = ОбластьШапки.Верх;
НачалоДанных = ОбластьШапки.Низ + 1;
ШиринаТаб = ТабличныйДокумент.ШиринаТаблицы;
КолМасс = МассивКолонокУдалить.количество();//всегда должно быть меньше
Для Сч = 0 По КолМасс-1 Цикл
ТекущаяКолонка=ШиринаТаб-сч;
Зн = МассивКолонокУдалить.Получить(КолМасс-1-сч);
Если ПустаяСтрока(Зн) Тогда Продолжить;КонецЕсли;//В массиве указаны имена колонок на удаление, если нет нименования колонки — значит не удаляем
ТабличныйДокумент.Область(, ТекущаяКолонка, НачалоДанных, ТекущаяКолонка).ШиринаКолонки = 0;
Пример отчета, в котором настраивается ширина колонок результата постоителя отчета:
Источник
Как изменить размер колонок в отчете?
Есть ли возможность в 1С изменить размер колонок отчета так, чтобы изменение запомнилось программой? Каждый раз вынуждены раздвигать одни колонки и уменьшать ширину других. Хотелось бы ручной труд свести к минимуму. Это возможно?
Если вы перешли на Платформу 8.3.16, то для решения задачи выполните следующие действия:
- В сформированном отчете, например, Карточка учета страховых взносов : раздел Зарплата и кадры — Отчеты по зарплате кликните мышкой по любому полю таблицы отчета для активизации команд группы Таблица.
- Установите возможность редактировать отчет по кнопке Меню (три вертикальные точки) — Таблица — Вид — Редактирование .
- Выделите колонки, размер которых хотите изменить, например:
- Январь ;
- Февраль ;
- Март ;
- Апрель ;
- Май ;
- Июнь ;
- Июль ;
- Август ;
- Сентябрь ;
- Октябрь ;
- Ноябрь ;
- Декабрь .
Границы выделенных колонок помечаются желтыми линиями.
После переформирования отчета по кнопке Сформировать все выполненные настройки отчета сбрасываются.
При работе с Карточкой учета страховых взносов вы всегда сможете открыть компактную настройку, выбрав сохраненный вариант.
См. также:
Если Вы являетесь подписчиком системы «БухЭксперт8: Рубрикатор 1С Бухгалтерия», тогда смотрите материалы по теме:
Если Вы еще не подписаны:
После оформления подписки вам станут доступны все материалы по 1С:Бухгалтерия, записи поддерживающих эфиров и вы сможете задавать любые вопросы по 1С.
Получите еще секретный бонус и полный доступ к справочной системе БухЭксперт8 на 14 дней бесплатно
Похожие публикации
Карточка публикации
Разделы: | |
---|---|
Рубрика: | ПРОМО: 1С Бухгалтерия / Работа с отчетами |
Объекты / Виды начислений: | |
Последнее изменение: | 30.03.2020 |
ID задана и содержит ID поста $termini = get_the_terms( $post->ID, ‘post_tag’ ); // так как функция вернула массив, то логично будет прокрутить его через foreach() foreach( $termini as $termin )< echo '' . $termin->name . »; > /* * Также вы можете использовать: * $termin->ID — понятное дело, ID элемента * $termin->slug — ярлык элемента * $termin->term_group — значение term group * $termin->term_taxonomy_id — ID самой таксономии * $termin->taxonomy — название таксономии * $termin->description — описание элемента * $termin->parent — ID родительского элемента * $termin->count — количество содержащихся в нем постов */ —>
(1 оценок, среднее: 5,00 из 5)
Добавить комментарий Отменить ответ
Для отправки комментария вам необходимо авторизоваться.
Вы можете задать еще вопросов
Доступ к форме «Задать вопрос» возможен только при оформлении полной подписки на БухЭксперт8
Нажимая кнопку «Задать вопрос», я соглашаюсь с
регламентом БухЭксперт8.ру >>
Как не попасть в ловушку, работая с контрагентами из ЕАЭС
[29.10.2021 запись] Пообъектный учет ОС и подходы к определению и пересмотру СПИ
[14.10.2021 запись] 6-НДФЛ в 1С
[11.10.2021 запись] Учет ОС по-новому: ФСБУ 6/2020, ФСБУ 26/2020, ФСБУ 25/2018
Отчетность за 9 месяцев 2021 в 1С
ТОП-20 вопросов по 6-НДФЛ за 9 месяцев 2021
Спасибо за вебинар. Все понятно. Особенно нравятся ваши схемы — очень наглядно, легко запоминается.
Источник
Построитель отчета
Отчет сделан построителем отчета, без макета, одно из полей имеет размерность 1024 символов и выводится соответственно огромным полем, что крайне неудобно. Можно как то сделать без макета значение «Переносить»?
Процедура ВедомостьВыбытияОСВывести()
//<<КОНСТРУКТОР_ВЫХОДНЫХ_ФОРМ_ПОСТРОИТЕЛЬОТЧЕТА_ВЫПОЛНИТЬ(ВедомостьВыбытияОС)
// Данный фрагмент построен конструктором.
// При повторном использовании конструктора, внесенные вручную изменения будут утеряны.
ПостроительОтчетаВедомостьВыбытияОС.Параметры.Вставить(«ДатаНачала», ДатаНачала);
ПостроительОтчетаВедомостьВыбытияОС.Параметры.Вставить(«ДатаОкончания», ДатаОкончания);
ПостроительОтчетаВедомостьВыбытияОС.Параметры.Вставить(«Передача», Перечисления.ВидыСобытийОС.Передача);
ПостроительОтчетаВедомостьВыбытияОС.Параметры.Вставить(«Списание», Перечисления.ВидыСобытийОС.Списание);
ПостроительОтчетаВедомостьВыбытияОС.Параметры.Вставить(«ЧастичнаяЛиквидация», Перечисления.ВидыСобытийОС.ЧастичнаяЛиквидация);
ПостроительОтчетаВедомостьВыбытияОС.Выполнить();
ВыбранныеПоля = ПостроительОтчетаВедомостьВыбытияОС.ВыбранныеПоля;
Поле = ВыбранныеПоля.Найти(«НаименованиеОбъекта»);
Если Не ОбщегоНазначения.ЗначениеНЕЗаполнено(Поле) Тогда
Поле.Представление = «Наименование объекта»;
КонецЕсли;
Поле = ВыбранныеПоля.Найти(«НачальнаяСтоимость»);
Если Не ОбщегоНазначения.ЗначениеНЕЗаполнено(Поле) Тогда
Поле.Представление = «Начальная стоимость»;
КонецЕсли;
Поле = ВыбранныеПоля.Найти(«ИнвНомер»);
Если Не ОбщегоНазначения.ЗначениеНЕЗаполнено(Поле) Тогда
Поле.Представление = «Инв. номер»;
КонецЕсли;
Поле = ВыбранныеПоля.Найти(«ГосНомер»);
Если Не ОбщегоНазначения.ЗначениеНЕЗаполнено(Поле) Тогда
Поле.Представление = «Гос. номер»;
КонецЕсли;
Поле = ВыбранныеПоля.Найти(«ПричинаСписания»);
Если Не ОбщегоНазначения.ЗначениеНЕЗаполнено(Поле) Тогда
Поле.Представление = «Причина списания»;
КонецЕсли;
ПостроительОтчетаВедомостьВыбытияОС.РазмещениеИзмеренийВСтроках = ТипРазмещенияИзмерений.Вместе;
ПостроительОтчетаВедомостьВыбытияОС.РазмещениеРеквизитовИзмеренийВСтроках = ТипРазмещенияРеквизитовИзмерений.Отдельно;
ПостроительОтчетаВедомостьВыбытияОС.РазмещениеРеквизитовИзмеренийВКолонках = ТипРазмещенияРеквизитовИзмерений.Отдельно;
Поле = ВыбранныеПоля.Найти(«НаименованиеОбъекта») ;
ПостроительОтчетаВедомостьВыбытияОС.МакетОформления = ПолучитьМакетОформления(СтандартноеОформление.Классика);
ПостроительОтчетаВедомостьВыбытияОС.МакетОформления.Вывод = ТипРазмещенияТекстаТабличногоДокумента.Переносить;
//ПостроительОтчетаВедомостьВыбытияОС.МакетОформления.ТекущаяОбласть.РазмещениеТекста = ТипРазмещенияТекстаТабличногоДокумента.Переносить;
ЭлементыФормы.ПолеТабличногоДокумента.ФиксацияСверху = 4;
ЭлементыФормы.ПолеТабличногоДокумента.АвтоМасштаб = Истина;
ЭлементыФормы.ПолеТабличногоДокумента.ОриентацияСтраницы = ОриентацияСтраницы.Ландшафт;
ПостроительОтчетаВедомостьВыбытияОС.ТекстЗаголовка = «Ведомость выбытия ОС (упр) за период с » + Формат(ДатаНачала,»ДЛФ=DD; ДП=-«) + » по » + Формат(ДатаОкончания,»ДЛФ=DD; ДП=-«);
ПостроительОтчетаВедомостьВыбытияОС.Вывести(ЭлементыФормы.ПолеТабличногоДокумента);
Очень не хочется макет рисовать для десяти подобных отчетов, чувствую что дело тут в ерунде какой нибудь, гугл не помогает(
Источник
Как в 1С СКД изменить ширину колонок отчета
В 1С при создании отчетов с помощью системы компоновки данных (СКД) очень часть необходимо настроить ширину колонок отчета. Так как в большинстве случаев в отчет выводиться очень много данных и в все они могут не поместиться на экран монитора. Может быть и другая ситуация, например, в отчет выводиться колонка «Наименование» чего либо, по умолчанию ширина колонки при формирование отчета будет равна максимальному количеству символов в наименование, т.е если у вас все наименование примерно 15-20 символов но одно будет 30 то и ширина всей колонки будет 30, визуально все это будет смотреться не красиво. Поэтому при создании какого либо отчета об этом нужно подумать и ограничить максимальную ширину колонок.
Так же рекомендую ознакомиться со следующими статьями.
Настройка колонок в 1С СКД
Для примера я возьму вот такой простеньких отчет, как видим при его формирование первые две колонки занимают практически половину, а остальные даже не влазят на экран. Конечно, ширину колонок можно изменить прямо в пользовательском режиме, но это придется делать каждый раз.
Лучше сразу настроить ширину в СКД, тем боле что делается это очень просто. Открываем основную схему компоновки данных, в полях ищем нужную колонку и в правой части открываем оформление.
Далее ищем пункт «Максимальная ширина» и указываем необходимое количество символов.
Сохраняем и пробую сформировать отчет заново и видим что ширина колонки изменилась.
Все это необходимо продумывать на этапе создания отчета. Хороший отчет должен всегда помещаться на экран монитора пользователя.
Источник