Дневник. Дневник. 4.4 Доработка интерфейса. Доработка интерфейса Список домашних заданий Как вы помните, у вас есть регистр ДомашниеЗадания
Скачать 0.72 Mb.
|
Доработка интерфейса Список домашних заданий Как вы помните, у вас есть регистр ДомашниеЗадания, в котором хранятся задания по всем предметам. Вы научились записывать в него данные. Теперь вы сделаете простой инструмент, который поможет вам разобраться в том, что задано, и поможет ничего не пропустить. Для этого вы создадите форму списка этого регистра. А затем, без использования встроенного языка, сделаете в ней несколько доработок. Итак, перейдите в конфигуратор и создайте форму списка регистра ДомашниеЗадания. Сначала уберите из неё поля, которые вам не понадобятся: Период, Регистратор, НомерСтроки, Выполнено. У вас должны остаться только Предмет и ДомашнееЗадание (рисунок 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. Окончательный вид электронного дневника |