Дневник. Дневник. 4.4 Доработка интерфейса. Доработка интерфейса Список домашних заданий Как вы помните, у вас есть регистр ДомашниеЗадания
![]()
|
Доработка интерфейса Список домашних заданий Как вы помните, у вас есть регистр ДомашниеЗадания, в котором хранятся задания по всем предметам. Вы научились записывать в него данные. Теперь вы сделаете простой инструмент, который поможет вам разобраться в том, что задано, и поможет ничего не пропустить. Для этого вы создадите форму списка этого регистра. А затем, без использования встроенного языка, сделаете в ней несколько доработок. Итак, перейдите в конфигуратор и создайте форму списка регистра ДомашниеЗадания. Сначала уберите из неё поля, которые вам не понадобятся: Период, Регистратор, НомерСтроки, Выполнено. У вас должны остаться только Предмет и ДомашнееЗадание (рисунок 8.2). ![]() Рисунок 8.2. Поля в форме списка Дальше, чтобы список был удобным, вы настроите его внешний вид. Все возможности настройки, которыми вы будете сейчас пользоваться, предоставляет источник этих данных. То есть объект ДинамическийСписок, который содержится в основном реквизите формы (рисунок 8.3). ![]() Рисунок 8.3. Источник данных — динамический список Если интересно, то описание его типа вы можете найти в синтакс-помощнике в ветке Интерфейс (управляемый) —Данные формы. Этот объект используется интересно. У него нет конструктора. Просто потому, что этот объект создаёт всегда сама платформа. Она использует этот объект во всех формах, где есть список элементов ![]() Благодаря тому, что он основан на системе компоновки данных, он имеет очень широкие возможности настройки, вплоть до использования произвольного запроса для получения данных. Задача разработчика и пользователя заключается как раз в настройке этого объекта. Разработчик может настроить его в конфигураторе. Пользователь может настроить его в режиме 1С:Предприятие. Кроме того, аналогичные настройки разработчик может выполнить с помощью встроенного языка. Вы сейчас настроите этот список в конфигураторе. Для этого нужно выделить реквизит формы Список и в палитре свойств открыть настройки этого списка (рисунок 8.4). ![]() Рисунок 8.4. Открыть настройки динамического списка Сначала на закладке Порядок задайте порядок, в котором будут показаны домашние задания. Сначала они должны быть отсортированы по полю Период, а затем по полю НомерСтроки (рисунок 8.5). Теперь на закладке Группировка укажите, что она будет выполняться по полю Период (рисунок 8.6). ![]() ![]() Рисунок 8.5. Порядок Теперь на закладке Группировка укажите, что она будет выполняться по полю Период (рисунок 8.6). ![]() Рисунок 8.6. Группировка Что это значит, проще показать, чем объяснять. Чтобы увидеть эту форму в командном интерфейсе, нужно включить команду перехода к ней. Для этого откройте командный интерфейс основного раздела. Если вы забыли, как это делается, посмотрите в разделе 2.9.5 «Объект конфигурации описывает, как будут выглядеть его данные». Включите команду перехода с списку регистра ДомашниеЗадания (рисунок 8.7). ![]() Рисунок 8.7. Команда перехода к списку регистра Нажмите ОК, запустите 1С:Предприятие в режиме отладки и откройте список регистра (рисунок 8.8). ![]() Рисунок 8.8. Список регистра Вот что значит группировка. Домашние задания собраны в группы по дням. Любую группу вы можете свернуть или развернуть, чтобы вам было удобно. Вернитесь в конфигуратор и снова откройте настройки динамического списка. Теперь вас будет интересовать закладка Условное оформление. На ней можно задать условия, в соответствии с которыми будет оформлен список. Например, если домашнее задание выполнено, тогда строка с этим заданием будет слегка закрашена серым. Таких условий может быть много, поэтому вы видите таблицу. Одна строка — одно оформление по условию. Каждый элемент оформления состоит из трёх частей. Оформление — это визуальный эффект, который должен быть использован. Условие — это условие, при выполнении которого этот визуальный эффект должен быть применён. Оформляемые поля — это те поля, к которым вы хотите применить оформление. Если хотите, чтобы были оформлены все поля, которые есть в строке, тут ничего указывать не нужно. Оформите строки с выполненными домашними заданиями. Добавьте новый элемент. Сначала задайте оформление (рисунок 8.9). ![]() Рисунок 8.9. Оформление Цвет фоны выберите Серебристо-серый (рисунок 8.10), ![]() Рисунок 8.10. Цвет фона «Серебристо-серый» Два раза нажмите ОК. После этого задайте условие. Условия могут быть сложными. Поэтому есть возможность добавить один элемент условия или группу, в которой будут содержаться несколько условий. Вам нужен Новый элемент (рисунок 8.11). ![]() Рисунок 8.11. Добавить новый элемент условия Условие будет заключаться в том, что в поле Выполнено должно находиться значение Истина. Именно в этом случае строка будет оформлена (рисунок 8.12). ![]() Рисунок 8.12. Условие Два раза нажмите ОК. Запустите 1С:Предприятие в режиме отладки, откройте список регистра. Сейчас у вас нет выполненных домашних заданий, поэтому условное оформление не применяется ни к одной строке (рисунок 8.13). ![]() Рисунок 8.13. Нет строк, удовлетворяющих условию оформления Теперь «выполните» домашнее задание по математике на 7 сентября. Дважды щёлкните по строке, отметьте в документе, что математика выполнена. Запишите и закройте документ. Установите курсор на первую строку списка (рисунок 8.14). ![]() Рисунок 8.14. Оформлена одна строка Вы увидите, что строка с заданием по математике закрашена серым. Условное оформление сработало. Почему я попросил вас установить курсор на первую строку? Потому что выделение текущей строки, которое использует платформа, «закрывает» серый фон, который установили вы. И его не видно. Но это не страшно, потому что сейчас вы сделаете так, чтобы выполненные домашние задания вообще исчезали из этого списка. Вернитесь в конфигуратор и снова откройте настройки динамического списка. Теперь вам понадобится самая первая закладка, которая называется Отбор. Она определяет, какие данные будут показаны в списке. Сейчас на ней нет никаких условий, значит, показываются все данные. Вы добавите своё условие, согласно которому должны быть показаны только невыполненные уроки (рисунок 8.15). ![]() Рисунок 8.15. Отбирать только невыполненные уроки Теперь вы сделаете так, чтобы этот отбор можно было быстро включать и выключать прямо в режиме 1С:Предприятие. Для этого сначала нужно задать ему представление. Пока у вас выделена строка с условием, нажмите на кнопку Подробно (рисунок 8.5). В появившемся поле Представление напишите Невыполненные (рисунок 8.16). ![]() Рисунок 8.16. Представление условия Теперь нажмите кнопку Свойства элемента пользовательских настроек, которая рядом с Подробно. В окне настроек установите флажок Включать в пользовательские настройки (рисунок 8.17). ![]() Рисунок 8.17. Включать в пользовательские настройки Два раза нажмите ОК. Запустите 1С:Предприятие в режиме отладки и откройте список регистра (рисунок 8.18). ![]() Рисунок 8.18. Список регистра Во-первых, теперь в нём только невыполненные задания. Во-вторых, появился флажок, который позволяет вам включать и отключать отбор. «Выполните» домашнее задание по музыке. После того как вы закроете документ, вы увидите, что из списка пропала не только строка с этим заданием, но и вся группировка 7 сентября. Потому что в ней не осталось невыполненных заданий (рисунок 8.19). ![]() Рисунок 8.19. Группировка «7 сентября» исчезла Если теперь вы снимете флажок Невыполненные, то снова увидите все домашние задания (рисунок 8.20). ![]() Рисунок 8.20. Все домашние задания Таким образом список получается очень удобным. Он автоматически показывает только то, что нужно. А если нужно увидеть всё, это выполняется одним нажатием. Теперь вернитесь в конфигуратор и наведите «окончательную красоту» в списке. Откройте свойства элемента формы Список. Во-первых, сбросьте флажок ЧередованиеЦветовСтрок. В результате все строки списка будут белыми, без выделения их «через одну». Во-вторых, свойство НачальноеОтображениеСписка установите в значение Начало. Благодаря этому при открытии списка курсор будет всегда на первой строке. В-третьих, свойство НачальноеОтображениеДерева установите в значение Не раскрывать. В результате список будет открываться со свёрнутыми группами. ![]() ![]() Рисунок 8.21. Свёрнутые группы списка Запустите 1С:Предприятие в режиме отладки и откройте список (рисунок 8.21). Домашнее задание Так работать гораздо удобнее. Вы видите, что у вас есть домашние задания на 9 и на 11 сентября. Сначала вы открываете 9 сентября и выполняете эти задания. При этом задания 11 сентября вам не мешают (рисунок 8.22). ![]() Рисунок 8.22. Задания на 9 сентября Теперь осталось сделать последнюю маленькую доработку. Сейчас в каждой строке списка отображается одна строка домашнего задания. А домашнее задание, если вы помните, может записываться у вас в несколько строк. При такой настройке списка вы не увидите в нём вторую и следующие строки домашнего задания. Чтобы решить эту проблему, нужно выполнить настройку в двух местах. Во-первых, в регистре сведений ДомашниеЗадания. Нужно открыть свойства его ресурса ДомашнееЗадание и установить ему свойство МногострочныйРежим. Это приведёт к тому, что в списке регистра домашнее задание будет отображаться в несколько строк. Во-вторых, в форме списка регистра ДомашниеЗадания. Здесь нужно выделить элемент формы ДомашнееЗадание и установить его свойство АвтоВысотаЯчейки. Это нужно для того, чтобы по высоте раздвигались не все строки списка, а только та строка, в которой находится многострочный текст. Запустите 1С:Предприятие в режиме отладки и откройте список. Теперь, если попадётся домашнее задание, написанное в несколько строк, вы их увидите в списке (рисунок 8.23). ![]() Рисунок 8.23. Домашнее задание в несколько строк Начальная страница Посмотрите на всё прикладное решение в целом. Создайте ему начальную страницу и удобные команды. Начальную страницу вы уже редактировали. Если забыли, посмотрите в разделе 2.14.1 «Добавление формы». Вместо формы списка документов добавьте на неё общую форму Планировщик. Потому что этот инструмент удобен, и его хочется видеть сразу после открытия вашего электронного дневника. Он даёт общую информацию о том, «как обстоят дела» (рисунок 8.25). ![]() Рисунок 8.25. Планировщик на начальной странице Командный интерфейс основного раздела Теперь наведите порядок в командном интерфейсе основного раздела. Планировщик в панели Сервис можно отключить. Теперь он у вас на начальной странице. Список предметов стал теперь не так важен, его можно перенести в группу Обычное. В освободившуюся группу Важное логично поместить две команды: Домашние задания и Учебные дни. Команду создания предмета можете оставить, а можете отключить. Как вам больше нравится (рисунок 8.26). ![]() ![]() Рисунок 8.26. Командный интерфейс основного раздела Теперь можете запустить 1С:Предприятие в режиме отладки и посмотреть на окончательный вид вашего дневника (рисунок 8.27). ![]() Рисунок 8.27. Окончательный вид электронного дневника |