Разработка формы справочника ФизическиеЛица
Лабораторная работа №3
Справочники, разработка форм
Справочник Организации
Справочник можно сравнить с картотекой, с неким списком данных, каждая запись которого имеет определенную структуру. В организации – независимо от того, автоматизирован ли в ней учет или нет, присутствует множество таких списков. Это – списки сотрудников, клиентов, товаров.
В разрабатываемой конфигурации уже есть справочники. Один из них – это справочник Организации, который нужен для хранения списка организаций, по которым планируется вести учет. Справочник, сразу после его создания, имеет некоторые стандартные реквизиты. Это утверждение справедливо и для других объектов конфигурации. Для управления реквизитами объекта служит закладка Данные окна редактирования объекта, рис. 1.
Рис. 1.Настройка справочника
Ознакомиться со списком стандартных реквизитов можно, нажав на кнопку Стандартные реквизиты – появится окно, содержащее список таких реквизитов, рис. 2.
Рис. 2.Стандартные реквизиты справочника и их свойства
Стандартные реквизиты поддерживают настройку некоторых свойств – для доступа к свойствам стандартного реквизита, достаточно выделить его в окне и обратиться к палитре Свойства.
Справочнику Организации не хватает реквизита, который содержал бы полное наименование организации. Добавим этот реквизит к справочнику – на вкладке Данные окна редактирования объекта, нажмем на кнопкуДобавить, параметры реквизита будут следующими:
Имя: ПолноеНаименование
Тип: Строка, длина – 50.
Проверка заполнения: Выдавать ошибку
Свойство Проверка заполнения по умолчанию для новых реквизитов установлено в значение Не проверять. Оно позволяет автоматически проверять заполненность поля – если поле не заполнено – система выдаст ошибку. Если необходимы особые алгоритмы проверки содержимого поля перед записью элемента справочника, можно эти алгоритмы самостоятельно.
Рис. 3.Настройка нового реквизита справочника
Отладим конфигурацию. Создадим новый элемент, дадим ему наименование Салон красоты, а полное наименование заполнять не будем, и попытаемся записать элемент, нажав на кнопку Записать и закрыть. Элемент не будет записан, появится сообщение об ошибке – в виде сообщения и в виде всплывающей подсказки, рис. 4.
Рис. 4.Сообщение об ошибке при попытке записи элемента справочника
Введем в поле Полное наименование текст ООО "Салон красоты" - после этого можно будет записать и закрыть элемент справочника. Он отобразится в списке справочника в рабочей области окна программы, рис. 5.
Рис. 5.Новый элемент справочника в списке
В информационной панели, которая расположена в нижней части окна программы, появится ссылка для доступа к только что созданному элементу и будет сообщено о его создании.
Код элементу справочника будет присвоен автоматически.
Справочники в 1С:Предприятие могут содержать предопределенные элементы. К их созданию можно перейти с вкладки Прочее, по кнопкеПредопределенные.
Справочник ФизическиеЛица
Следующим справочником будет справочник ФизическиеЛица. Он предназначен для хранения списка физических лиц и сведений о них. В частности, данные о самом физическом лице (Фамилия, Имя, Отчество, дата рождения, пол, район проживания), а так же об истории его трудовой деятельности. Для хранения данных о физическом лице подойдут обычные реквизиты справочника. А для того, чтобы хранить историю трудовой деятельности, понадобится другая структура данных, а именно – табличная часть.
Табличная часть – это таблица, состав и свойства полей (столбцов) которой мы задаем на этапе разработки. В пользовательском режиме создается необходимое количество строк.
Надо отметить, что понятия "Сотрудник" и "Физическое лицо" - это разные вещи. Сотрудник – это тот, кто в настоящий момент работает в организации, и сотрудник обязательно является физическим лицом. А вот физическое лицо, сведения о котором могут храниться в базе данных организации, вполне может не являться сотрудником – например – это может быть кандидат на какую-либо должность, или, наоборот, уволенный сотрудник.
Создадим новый справочник, дадим ему имя ФизическиеЛица, включим его в состав подсистем БухгалтерскийУчет,УчетРаботыМастеров и РасчетЗаработнойПлаты.
На вкладке Данные создадим следующие реквизиты:
Имя: Фамилия
Тип: Строка, длина 30
Имя: Имя
Тип: Строка, длина 30
Имя: Отчество
Тип: Строка, длина 30
Имя: ДатаРождения
Тип: Дата, состав даты – Дата
Следующие реквизиты – это Пол и РайонПроживания. Строковые реквизиты обычно заполняют вводом данных с клавиатуры. В случае же с указанием пола и района проживания заполнение с клавиатуры непременно приведет к появлению в базе различных наименований для одних и тех же показателей при использовании текстовых полей. Для мужского пола это вполне может быть, при ограничении длины строки одним символом, "М" и "м", для районов так же возможно различное написание. Для обеспечения единообразия при вводе подобных показателей рационально использовать для их хранения отдельные справочники или перечисления. Для хранения наименований пола мы воспользуемся перечислением.
Создадим новое перечисление, дадим ему имя Пол, включим в подсистему РасчетЗаработнойПлаты. На вкладке Данные окна редактирования объекта для перечисления задаются значения перечисления. Зададим два значения – Мужской и Женский, рис. 6.
Рис. 3.6.Создание перечисления Пол
Теперь создадим новый справочник – дадим ему имя Районы, включим в состав подсистемы РасчетЗаработнойПлаты, на вкладкеДанные изменим длину наименования до 100 символов, этот справочник не будет иметь дополнительных реквизитов, так же мы можем исключить его из состава общего реквизита Организация, рис. 7.
Рис. 7.Создание справочника Районы
Вернемся к настройке справочника ФизическиеЛица. Добавим еще два реквизита:
Имя: Пол
Тип: ПеречислениеСсылка.Пол
Имя: РайонПроживания
Тип: СправочникСсылка.Районы
Теперь займемся табличной частью справочника. При необходимости, справочники могут иметь несколько табличных частей. Сначала нажмем на кнопку Добавить табличную часть, зададим имя табличной части ТрудоваяИстория. В табличную часть добавим следующие реквизиты (поля), выделив табличную часть и нажав на кнопку Добавить реквизит:
Имя: Организация
Тип: Строка, длина 30
Имя: ДатаНачалаРаботы
Тип: Дата, состав даты – Дата
Имя: ДатаОкончанияРаботы
Тип: Дата, состав даты – Дата.
В итоге окно редактирования справочника будет выглядеть так, как показано на рис. 8.
Рис. 8.Состав справочника ФизическиеЛица
В предыдущей работе был создан общий реквизит Организация, который планировалось добавлять ко многим объектам конфигурации. Справочник ФизическиеЛица имеет смысл вести по всем организациям. Настроить состав общего реквизита можно в ветви Общие реквизиты. Сделать это можно и в окне редактирования объекта, нажав кнопку Общие реквизиты на вкладке Данные. Нажмем эту вкладку и установим для общего реквизита Организация значение Не использовать, рис. 9.
Рис. 9.Настройка общих реквизитов из окна редактирования объекта
Если открыть справочник в режиме 1С:Предприятие – с ним можно будет работать, так как система автоматически сгенерирует его форму, рис. 10. Такие формы подходят в том случае, если не планируется каким-либо образом вмешиваться в функционирование формы из Конфигуратора.
Рис. 10.Форма справочника, сгенерированная автоматически
Если же решаемая нами задача требует каких-то особенных приемов работы с формой объекта, понадобится собственная форма. Например, это понадобится, если мы хотим автоматически заполнять поле Наименование на основе полей Фамилия, Имя иОтчество. А именно, чтобы наименование содержало фамилию и инициалы физического лица.
Разработка формы справочника ФизическиеЛица
Откроем закладку Формы окна редактирования справочника ФизическиеЛица. Можно отметить, рис. 11, что ни одной формы не задано – то есть все они создаются системой автоматически. Нам же нужна собственная форма элемента справочника.
Рис. 11.Вкладка Формы окна редактирования объекта
Нажмем на кнопку с увеличительным стеклом напротив поля Элемента в группе Формы. Появится окно Конструктора формы справочника, в его первом окне оставим все по умолчанию – а именно – нас интересует Форма элемента справочника, рис. 12.
Рис. 12.Первое окно конструктора форм справочника
В следующем окне, рис. 13., мы можем указать состав реквизитов для расположения на форме, а так же указать количество колонок, которое нужно для расположения элементов управления на форме. Оставим здесь все так же по умолчанию и нажмем на кнопку Готово.
Рис. 13.Второе окно конструктора форм справочника
После этого нужно открыть окно редактора форм для формы элемента справочника, рис. 14. Ранее мы уже сталкивались с этим окном, теперь рассмотрим его подробнее.
Рис. 14.Окно редактирования формы элемента справочника
Это окно объединяет в себе несколько редакторов и окон. В частности, это следующие:
Редактор элементов формы (закладка Элементы в верхней левой части окна) – с его помощью можно контролировать элементы управления, которые будут расположены на форме. Выделив элемент в данном окне, мы можем настраивать его свойства в стандартной палитре свойств. Обратите внимание на кнопку Проверить, находящуюся в правой части командной панели закладки Элементы. Нажатие на нее приводит к выводу конструируемой формы в интерактивном виде, что позволяет лучше оценить ее внешний вид в пользовательском режиме, но, конечно, не дает возможности работать с данными информационной базы.
Окно просмотра формы (закладка Форма в нижней части окна) – здесь представлена форма в том виде, который она примет после настроек. Кроме того, выделяя элементы формы в данном окне, мы, не имея возможности, как это было ранее, произвольно перемещать их, можем вызывать их контекстное меню, рис. 14., с помощью которого можно перемещать элемент вверх или вниз (то же самое можно делать в окне Элементы), открывать окно его свойств, назначать обработчики событий (их можно назначать и в окне Свойства, открытом для данного элемента).
Рис. 15.Работа с элементами формы
Редактор реквизитов представлен вкладкой Реквизиты ( рис. 15.). Для того, чтобы добавить реквизит объекта на форму (то есть – создать элемент управления, связанный с данным реквизитом), достаточно перетащить элемент из окна Реквизиты в окно Элементы. Реквизиты, уже присутствующие на форме, отмечены серым квадратиком.
Редактор команд можно открыть, нажав на вкладку Команды. Здесь доступны три дополнительные вкладки. Вкладка Команды формы (поумолчанию пустая) содержит команды формы, их можно сравнить с командными кнопками, которые в версии 1С:Предприятие 8.1. можно было размещать на форме. Теперь последовательность действий выглядит так – сначала создать команду формы, потом перетащить ее в окно Элементы, настроить свойства, задать обработчики событий. Вкладка Стандартные команды( рис. 16.) содержит стандартный набор команд – в нашем случае – стандартный для формы и табличного поля, размещенного на форме.
Рис. 16.Стандартные команды
Вкладка Глобальные команды содержит набор команд уровня прикладного решения.
Вкладка Параметры предоставляет доступ к редактору параметров.
Вкладка Командный интерфейс позволяет редактировать командный интерфейс.
Реализуем автоматическое заполнение поля Наименование на основе полей Фамилия, Имя и Отчество.
Для этого сначала настроим элемент управления, отображающий наименование на форме, таким образом, чтобы его нельзя было редактировать. Выделим элемент управления в панели Элементы, откроем окно его свойств и установим свойство ТолькоПросмотр, рис. 17. Благодаря этому свойству пользователь не сможет отредактировать текст в поле ввода. Похожего эффекта можно достичь и другими способами, например, указав в свойстве Вид элементаэлемента Наименование вместо Поле ввода – Поле надписи.
Рис. 17.Настройка элемента Наименование
Для правильного формирования наименования важно, чтобы пользователь ввел данные в поля Фамилия, Имя и Отчество.