1с установить примечание ячейки
Войдите как ученик, чтобы получить доступ к материалам школы
Система компоновки данных 1С 8.3 для начинающих: меняем оформление
Автор уроков и преподаватель школы: Владимир Милькин
Ставим цель
- Сделать копию отчёта с прошлого урока
- Изменить его имя на "Урок4.erf"
- Внести изменения в копию отчёта (сегодня разбираем примеры с условным оформлением)
Делаем копию отчёта с прошлого урока
Делаем копию отчёта с прошлого урока:
Переименовываем копию в "Урок4.erf":
Открываем базу "Гастроном" в конфигуратор:
Открываем отчёт "Урок4.erf":
В форме отчёта меняем имя на "Урок4" и открываем схему компоновки данных:
Давайте вспомним, как выглядит отчёт прошлого урока в режиме пользователя:
Сокращаем длину дробной части
Первая проблема, которую нам предстоит решить, это вывод слишком большого количества цифр после запятой (177,666666. ).
Причиной этого послужило деление при нахождении среднего. Чтобы устранить этот недостаток укажем в настройках поля "СредняяКалорийность" формат вывода чисел, подразумевающий только 2 числа в дробной части.
Для этого переходим на закладку "Настройки", там выделяем пункт "Отчет", далее в самом низу выделяем закладку "Условное оформление" и нажимаем зелёный плюсик, чтобы добавить новую запись:
В появившейся записи настраиваем поле "Оформляемые поля", чтобы указать к каким именно полям мы будем применять условное оформление:
В открывшемся диалоге нажимаем зелёный плюсик, чтобы добавить поле:
Добавляем поле "СредняяКалорийность" (именно в нём выводится слишком много чисел в дробной части), получилось вот так:
Теперь переходим к настройке поля "Оформление":
Наша задача задать правильный числовой формат:
Указываем значение точности равное двум:
Получилось вот так:
Итоговая запись условного оформления выглядит так:
Сохраняем отчёт и открываем (конфигуратор закрывать не нужно) в режиме пользователя:
Отлично, теперь дробная часть округляется до 2 чисел.
Выводим итоги жирным шрифтом
Теперь было бы здорово, чтобы итоговые значения вкуса, калорийности и средней калорийности выводились жирным шрифтом.
Это также легко сделать при помощи условного оформления.
Переходим на закладку "Настройки", далее выделяем пункт "Цвет" (потому что мы делаем настройку оформления, которая будет относится только к группировке цвет), далее переходим на закладку "Условное оформление" и снова нажимаем зелёный плюсик:
В новой записи настраиваем пункт "Оформляемые поля" (кнопка многоточие) и выбираем поля "Вкус", "Калорийность" и "СредняяКалорийность":
Переходим к настройке поля "Оформление":
Здесь находим пункт "Шрифт" и также открываем его по кнопке многоточие:
Начертание шрифта настраиваем вот так:
Нажимаем "Ок" и ещё раз "Ок":
Получилось вот так:
Сохраняем отчёт и формируем в режиме пользователя:
Отлично, но не совсем. Хочется, чтобы жирным выводились только значения итогов напротив цветов, а у нас условное оформление применилось ещё и к заголовкам полей и к общим итогам. Исправим это.
Для этого возвращаемся к записи условного оформления, которую мы только что создали и настраиваем поле "Область использования":
Снимаем галки напротив "В общем итоге" и "В заголовке полей":
Снова сохраняем отчёт и формируем в режиме пользователя:
Выводим жирным шрифтом общие итоги
А теперь давайте добьёмся, чтобы вся общая строка итогов (включая слово "Итого") выводилась жирным шрифтом.
Для этого переходим на закладку "Настройки", выделяем пункт "Отчет" (применяем настройки в целом к отчёту), далее переходим на закладку "Условное оформление" и добавляем ещё одну запись (зелёная кнопка плюс):
В новой записи не указывать "Оформляемые поля", что означает, что мы хотим применить оформление ко всем полям, а вместо этого настраиваем оформление:
Наконец, правильно настраиваем "Область использования" нашей записи:
Оставляем единственный пункт - "В общем итоге":
Получилось вот так:
Сохраняем отчёт и формируем в режиме пользователя:
Мы добились своего
Разукрашиваем фон заголовка полей и общие итоги
А что, если нам разукрасить фон заголовка полей и итоговой строки в зелёный цвет? А текст в белый?
Я покажу как легко это делается.
Вновь переходим на закладку "Настройки", выделяем пункт "Отчет", далее переходим на закладку "Условное оформление" и жмём зелёный плюсик, чтобы добавить ещё одну запись:
Сразу настраиваем "Область использования новой записи (оставляем только "В общем итоге" и "В заголовке полей"):
Далее переходим к полю "Оформление" новой записи, настраиваем цвет фона и цвет текста как на картинке ниже:
Получилось вот так:
Сохраняем отчёт и формируем в режиме пользователя:
Добавляем заголовок
Ну и в качестве завершающего приёма этого урока установим заголовок отчёта (мы это уже делали в прошлых уроках).
Для этого переходим на закладку "Настройки", выделяем пункт "Отчет", далее переходим на закладку "Другие настройки" и там настраиваем пункты "Выводить заголовок" и "Заголовок" вот так:
Сохраняем отчёт и формируем в режиме пользователя:
Эталонная обработка, после выполнения всех шагов этого урокаВойдите на сайт как ученик
Для учеников
Прибегайте к изучению эталонного варианта только после самостоятельного выполнения всех шагов.
На вопросы учеников — отвечаю по почте, но прежде загляните в ЧАВО (ссылка) .
Будем хранить примечание в доп. свойстве заказа и пользоваться стандартным функционалом работы с примечаниями табличного документа.
1) Вывод примечаний
К сожалению, примечания нельзя вставить в уже выведенную область (поправьте меня, если я ошибаюсь)
Если вы выводите отчёт вручную (методом .Вывести() ), то проблем никаких нет, вставляем примечсание через свойство .Примечание.Текст .
Однако у меня отчёт на СКД, поэтому пришлось немного исхитриться: пробежаться по выведенному ТД, получить для каждой строчки нужной группировки заказ (из расшифровки), вставить нужную ячейку с примечанием и удалить такую же без примечания.
Код будет примерно такой:
2) Добавление, удаление, редактирование примечаний и их сохранение в объекте
Будем использовать стандартный механизм работы с примечаниями ТД (правой кнопкой мыши по ячейке, пункты "Вставить/Изменить примечание", "Удалить примечание" использовать не будем, считаем что изменение примечание на пустую строку это и есть его удаление)
Добавим форме реквизит "ТекущийЗаказ", при активизации ячейки, если она "нужная", то записываем в этот реквизит значение расшифровки.
Далее ПриИзмененииСодержимогоОбласти если область имеет тип "РисунокТабличногоДокумента" и заполнен "ТекущийЗаказ", то запишем в его доп. свойство примечание
Тут есть один нюанс: Если кроме примечаний вы хотите использовать расшифровку (например, переходить в заказ), то нужно обеспечить пользователю возможность переключать режим "ТолькоПросмотр", т.к. когда он истина, то работает расшифровка, но не работает управление примечаниями, а когда "ложь", то наоборот.
Я решил эту проблему добавлением на форму кнопки, переключающей этот режим
Значения ячеек и элементы управления в табличном документе
Табличный документ (ТД) состоит из строк и столбцов, которые образуют ячейки. В этой статье рассмотрены возможности "1С:Предприятия 8", позволяющие разместить в ячейках табличного документа элементы управления для редактирования значений.
Ниже рассмотрены следующие темы:
- Свойства "Текст" и "Значение"
- Свойство "Формат"
- Элементы управления
- Элементы управления, встроенные в ячейку
- Элементы управления, не встроенные в ячейку
- Расширение элементов управления, расположенных в поле табличного документа
Свойства "Текст" и "Значение" ячейки табличного документа
Основные свойства у каждой ячейки табличного документа — это Текст и Значение , причем по умолчанию доступно свойство Текст , а свойство Значение заблокировано.
ВАЖНО! Свойства Текст и Значение не могут быть использованы одновременно! Если свойство-признак СодержитЗначение установлено в значение Истина , то свойство Текст недоступно, и наоборот, если свойство-признак СодержитЗначение равно Ложь , то свойство Значение недоступно, а также все связанные другие свойства, например, ТипЗначения и ЭлементУправления .
Ниже на рисунке показана палитра свойств для ячейки табличного документа. Обратите внимание, что флажок Содержит значение не установлен, поэтому данная ячейка будет отображать Текст .
Свойство Текст имеет тип Строка . Если в ячейке необходимо разместить какую-либо текстовую информацию, необходимо использовать именно свойство Текст , например:
Обратите внимание, что даже если вы присвоите свойству Текст значение другого типа (не строкового), то оно все равно будет интерпретировано как строка. Значения базовых типов преобразуются к строке, а для ссылочных типов данных (элементов справочников, документов и т. д.) берется их представление. Если же необходимо разместить в ячейке значение другого типа, например, число, булево, дату или ссылку, и при этом не преобразовывать это значение к строке, то нужно использовать свойство Значение .
Для того чтобы появилась возможность использовать свойство Значение , необходимо явно присвоить свойству ячейки СодержитЗначение значение Истина или установить флажок Содержит значение в палитре свойств, как это показано на следующем рисунке:
Для ячейки, у которой установлен признак СодержитЗначение , можно задать тип значения, размещаемого в ячейке. На следующем рисунке указан тип Строка , но есть также возможность указать несколько возможных типов, используя составной тип данных:
Следующий фрагмент демонстрирует, как можно управлять этими свойствами из встроенного языка:
Свойство "Формат" ячейки табличного документа
Для ячейки табличного документа можно задавать формат вывода данных. Для этого используется свойство Формат , которое содержит форматную строку. Приемы работы с форматной строкой полностью совпадают с функцией Формат() системы "1С:Предприятие 8". Свойство Формат может быть установлено как интерактивно — через палитру свойств, так и программно — из встроенного языка, например:
Элемент управления в табличном документе
Элементы управления, встроенные в ячейку
Для ячейки, у которой установлен признак СодержитЗначение , можно также задать элемент управления, который будет использоваться для редактирования этого значения.
Элемент управления можно назначить через палитру свойств или из встроенного языка с помощью метода УстановитьЭлементУправления() . Чтобы проверить в программе, установлен ли элемент управления для конкретной ячейки, можно использовать свойство ЭлементУправления , которое возвращает элемент управления, назначенный для ячейки.
Элементы управления, встроенные в ячейку, отображаются только при входе в режим редактирования значения. На приведенном ниже рисунке редактируемая ячейка обведена овалом, и в ней отображается флажок:
Ниже показан пример установки элемента управления типа Флажок из встроенного языка:
Элементы управления, не встроенные в ячейку
Существует еще один способ размещения элемента управления в ячейке: использование независимого элемента управления и его "привязка" к нужной ячейке. В этом случае сама ячейка не участвует в процессе работы, а ее значения и свойства ни на что не влияют. Значения нужно будет непосредственно получать из элемента управления как обычного элемента формы. Ячейка при этом используется только как область размещения (привязки) элемента управления.
Ниже показано, как могут выглядеть такие элементы управления (не встроенные в ячейку):
В следующем фрагменте приводится пример размещения не встроенного в ячейку элемента управления в табличном документе:
Расширение элементов управления, расположенных в поле табличного документа
Для элементов управления, расположенных в табличном документе, расширяется набор свойств, методов и событий:
Разберем самые важные свойства и методы:
- Свойство ВстроенВЯчейку имеет тип Булево и говорит о том, что элемент управления встраивается в ячейку или просто привязывается к ней, о чем было рассказано выше.
- Свойство Видимость позволяет показать или скрыть элемент управления.
- Свойство Значение предоставляет доступ к значению, которое редактируется в элементе управления. Оно используется только для элементов управления, поддерживающих связь с данными.
- Метод Расположить позволяет разместить элемент управления в конкретной области ячеек табличного документа. Именно этот метод был использован в вышеприведенном примере.
Для элементов управления, расположенных в табличном документе, можно обрабатывать события, например, При изменении . Процедура-обработчик события должен находиться в модуле формы. Вот почему элементы управления имеет смысл располагать в табличном документе, только если он выводится в диалог формы (в поле табличного документа).
Свойство "Защита" ячейки табличного документа
Это свойство имеет тип Булево и содержит признак защиты ячейки от редактирования. В режиме просмотра в табличном документе недоступны для редактирования ячейки и рисунки, у которых установлено свойство Защита .
Все печатные формы в программах 1С Предприятие формируются в формате табличного документа, напоминающего Excel, из строк и столбцов, у каждого из которых есть свой уникальный номер, им можно присвоить имя, оформить их, выбрав цвет текста, фона, а также рамок, и пр. Рассмотрим принципы работы с табличным документом на примере «1С:Бухгалтерия».
Создание табличного документа в 1С
В программе 1С, кроме работы с имеющимися печатными формами документов или отчетов, можно сформировать табличный документ с нуля, для чего надо зайти вменю «Файл-Новый».
В открывшемся окне выбираем характеристику и жмем «Ок».
Открыть табличный документ уже имеющийся в базе можно также в «Файле», выбрав команду «Открыть».
Оформление ячейки табличного документа
Создавая таблицу, мы можем установить характеристики шрифта, оформить ячейки рамками различного вида, а также выбрать цвет из палитры для всех объектов. Для этого, выделив ячейки и нажав правой кнопкой мышки, надо открыть окно «Свойства», где можно задать параметры к выделенным ячейкам – цвет, шрифт, границы и т.п.
Обработка табличной части также может быть сделана через меню «Файл-Таблица». Выбрав пункт «Форматирование», мы также можем настроить шрифт, выравнивание, границы.
Примечания и работа с ячейками
Заполнение табличного документа в 1С 8.3 предусматривает создание примечаний для ячейки или их группы. Они буду помечены треугольничком в правом верхнем углу, при наведении мышки на который будет всплывать окошечко с текстом, поясняющим данные ячеек. Чтобы их создать, надо вызвать нажатием правой кнопки мышки команду контекстного меню – «Вставить примечание» или через пункт меню «Файл-Таблица-Примечание».
Выглядеть это будет так:
Мы можем выполнять с ячейками любые действия, как с обычными таблицами в Excel или таблицами в документах Word – вставлять и удалять строки, объединять ячейки, скрывать и пр. («Файл-Таблица-Ячейки»).
Для удобства при работе с табличным документом можно пользоваться контекстным меню, нажав на ячейке или выделенному фрагменту правой кнопкой мышки. Например, выбрав команду «Раздвинуть», мы добавляем строки выше текущего положения. Здесь же мы можем объединить или разбить ячейки, удалить, очистить, настроить высоту строк, выбрав соответствующие команды.
Группировка элементов
Формируя структуру нашей таблицы, мы можем сгруппировать строки или удалить группировку при необходимости («Файл-Таблица-Группы»).
Это дает возможность объединить информацию из отчетов, применяя некоторое число вложенных группировок.
Их можно сделать горизонтальными или вертикальными, регулируя при этом расположение итогов в группировке: для первых – сверху или снизу, для вторых, соответственно – справа или слева.
Используя эти принципы, созданы все табличные формы в программе, например, отчет Оборотно-сальдовая ведомость по счету. С помощью редактора табличных документов в 1С можно создавать как небольшие табличные документы, так и документы, имеющие сложную структуру.
Макет печатной формы документа
Табличные документы формируются на основе макета, который представляет собой шаблон для формирования печатной формы. В него можно добавлять рисунки, логотипы, диаграммы, сводные таблицы.
В каждом документе имеется макет его печатной формы. Открыв печатную форму, нажав кнопку «Еще» и выбрав команду «Изменить макет», мы самостоятельно можем внести в него коррективы, не прибегая к помощи программиста. Теперь такая возможность доступна в пользовательском режиме 1С.
Макет печатной формы документа «Счет». Мы видим, что в одних ячейках содержится только текст, в других – имена параметров, которые необходимо будет задать при заполнении документа.
С помощью кнопки на панели инструментов и «Еще», выбрав нужный раздел, мы можем произвести изменение табличного документа 1С 8.3.
Ввод данных
В наш документ информацию можно внести руками, как в обычный Excel. Это могут быть текстовые или числовые данные, которые могут использоваться при исчислении в других ячейках, например, при заполнении некоторых форм отчетности.
Сохранение
Сформировав документ, его можно сохранить в файл на диске для отправки по электронной почте, переноса на другой компьютер или флешку и т.д. Для этого выберем команду «Сохранить» в пункте меню «Файл».
При сохранении табличного документа можно выбрать различные форматы, как в собственном формате – 1С-mxl, так и экспортировать в другие форматы – лист Excel, документ PDF или формат mxl-табличный документ v7.7 (для совместимости с версией платформы 7.7) и другие форматы.
В некоторых печатных формах документа имеется кнопка «Сохранить».
Читайте также: