Лекция 4:

Справочники, разработка форм

< Лекция 3 || Лекция 4: 123456 || Лекция 5 >
Аннотация: Лекция посвящена конструированию справочников, вопросам разработки управляемых форм и выполнения различных действий в клиентских методах, в частности, рассмотрена методика вывода сообщений об ошибках в привязке к элементам управления.

Справочник Организации

Справочник можно сравнить с картотекой, с неким списком данных, каждая запись которого имеет определенную структуру. В организации – независимо от того, автоматизирован ли в ней учет или нет, присутствует множество таких списков. Это – списки сотрудников, клиентов, товаров.

В нашей конфигурации уже есть пара справочников. Один из них – это справочник Организации, который нужен для хранения списка организаций, по которым планируется вести учет. Справочник, сразу после его создания, имеет некоторые стандартные реквизиты. Это утверждение справедливо и для других объектов конфигурации. Для управления реквизитами объекта служит закладка Данные окна редактирования объекта, рис. 3.1.

Настройка справочника

Рис. 3.1. Настройка справочника

Ознакомиться со списком стандартных реквизитов можно, нажав на кнопку Стандартные реквизиты – появится окно, содержащее список таких реквизитов, рис. 3.2.

Стандартные реквизиты справочника и их свойства

увеличить изображение
Рис. 3.2. Стандартные реквизиты справочника и их свойства

Стандартные реквизиты поддерживают настройку некоторых свойств – для доступа к свойствам стандартного реквизита, достаточно выделить его в окне и обратиться к палитре Свойства.

Нашему справочнику Организации не хватает, для полноты его использования в системе, реквизита, который содержал бы полное наименование организации. Добавим этот реквизит к справочнику – на вкладке Данные окна редактирования объекта, нажмем на кнопку Добавить, параметры реквизита будут следующими:

Имя: ПолноеНаименование

Тип: Строка, длина – 50.

Проверка заполнения: Выдавать ошибку

Свойство Проверка заполнения по умолчанию для новых реквизитов установлено в значение Не проверять. Оно позволяет автоматически проверять заполненность поля – если поле не заполнено – система выдаст ошибку. Если нам нужны особые алгоритмы проверки содержимого поля перед записью элемента справочника, мы можем реализовать эти алгоритмы самостоятельно.

Настройка нового реквизита справочника

увеличить изображение
Рис. 3.3. Настройка нового реквизита справочника

Посмотрим на наш справочник в режиме 1С:Предприятие. Создадим новый элемент, дадим ему наименование Салон красоты, а полное наименование заполнять не будем, и попытаемся записать элемент, нажав на кнопку Записать и закрыть. Элемент не будет записан, мы увидим сообщение об ошибке – в виде сообщения и в виде всплывающей подсказки, рис. 3.4.

Сообщение об ошибке при попытке записи элемента справочника

увеличить изображение
Рис. 3.4. Сообщение об ошибке при попытке записи элемента справочника

Введем в поле Полное наименование текст ООО "Салон красоты" - после этого можно будет записать и закрыть элемент справочника. Он отобразится в списке справочника в рабочей области окна программы, рис. 3.5.

Новый элемент справочника в списке

Рис. 3.5. Новый элемент справочника в списке

В информационной панели, которая расположена в нижней части окна программы, появится ссылка для доступа к только что созданному элементу и будет сообщено о его создании.

Код элементу справочника будет присвоен автоматически.

Справочники в 1С:Предприятие могут содержать предопределенные элементы. К их созданию можно перейти с вкладки Прочее, по кнопке Предопределенные.

< Лекция 3 || Лекция 4: 123456 || Лекция 5 >
Лариса Дятчина
Лариса Дятчина

Код 

&НаКлиенте

Процедура ОсновноеКонтактноеЛицоПриИзменении(Элемент)

Если НЕ ПроверитьЗаполнениеРеквизита() Тогда

 Сообщить("Выбранное контактное лицо, "+Объект.ОсновноеКонтактноеЛицо+",не работает у контрагента.");

КонецЕсли;

КонецПроцедуры

 

&НаСервере

Функция ПроверитьЗаполнениеРеквизита()

 Возврат (Объект.ОсновноеКонтактноеЛицо.ПредставительРаботает);  

КонецФункции

&НаСервере

Процедура УстановитьНомерПредставителя()

 

 Объект.ТелефонКонтактногоЛица=Объект.ОсновноеКонтактноеЛицо.КонтактныеСведения;

КонецПроцедуры

При проверке выдает ошибку:

{Справочник.Контрагенты.Форма.ФормаСписка.Форма(12,11)}: Переменная не определена (Объект)
 Возврат (<<?>>Объект.ОсновноеКонтактноеЛицо.ПредставительРаботает);   (Проверка: Сервер)
{Справочник.Контрагенты.Форма.ФормаСписка.Форма(17,2)}: Переменная не определена (Объект)
 <<?>>Объект.ТелефонКонтактногоЛица=Объект.ОсновноеКонтактноеЛицо.КонтактныеСведения; (Проверка: Сервер)
{Справочник.Контрагенты.Форма.ФормаСписка.Форма(17,32)}: Переменная не определена (Объект)
 Объект.ТелефонКонтактногоЛица=<<?>>Объект.ОсновноеКонтактноеЛицо.КонтактныеСведения; (Проверка: Сервер)
{Справочник.Контрагенты.Форма.ФормаСписка.Форма(6,41)}: Переменная не определена (Объект)
 Сообщить("Выбранное контактное лицо, "+<<?>>Объект.ОсновноеКонтактноеЛицо+",не работает у контрагента."); (Проверка: Тонкий клиент)

 

работаю на версии 1С:Предприятие 8.3 (8.3.10.2650)

максим матасов
максим матасов