Красота Оладьи Стрижки

Быстро. Подчиненные справочники. Быстро Необходимость заполнения справочников для 1с

Психушка. Один придурок другому:
-Тебе понравился мой рассказ, который я тебе вчера дал почитать?
-Да, но как-то всё размыто и много действующих лиц.
Входит врач:
-Так, придурки, кто спёр мою телефонную книгу?...

Назначение справочников
Справочник является списком возможных значений того или иного реквизита. Справочники используются в тех случаях, когда необходимо исключить неоднозначный ввод информации. Например, для того, чтобы покупатель, продавец, кладовщик, директор понимали, о каком товаре идет речь, каждый должен называть его одинаково. И в этом случае необходим справочник. Обычно в торговом предприятии он имеет вид прайс-листа, а если такой справочник хранится в компьютере, то в него заносят всю возможную номенклатуру товаров, с которыми работает торговая фирма.

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

С точки зрения пользователя, следует иметь в виду, что в Конфигураторе создается не сам справочник, как список значений, а разрабатывается заготовка справочника, его шаблон. В процессе конфигурирования описывается структура информации, которая будет храниться в справочнике, разрабатывается экранное и, если необходимо, печатное представление справочника, задаются различные особенности его «поведения».

Атрибуты справочников

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

Помимо кода и наименования, в справочниках системы 1С:Предприятие может храниться любая дополнительная информация об элементе справочника. Для хранения такой информации в справочнике может быть создан список реквизитов . Используя механизм реквизитов справочника, легко организовать, например, картотеку сотрудников. Например, справочник Сотрудники почти наверняка будет иметь атрибуты Должность , Оклад и другие. Фирма 1С предвосхитила программистов и ввела во все справочники два уже заданных атрибута: Код и Наименование . Действительно, практически любой объект из реальной жизни содержит эти атрибуты. Например, для сотрудников кодом выступает табельный номер, а наименованием -- фамилия, имя, отчество (ФИО).

Типы данных

Для каждого атрибута справочника нужно указать его тип данных, например, "число ", "строка ", "дата " (в версии 8.0 есть еще тип Булево - Истина или Ложь). Это базовые типы, но можно указать и сложные типы данных. Например атрибут Должность имеет тип данных Должности . В этом случае, значения этого атрибута будут выбираться из справочника Должности . Так реализуется простейшая связь между справочниками, когда значения атрибутов одного справочника выбираются из другого справочника.

Иерархические справочники

Список элементов справочника в системе 1С:Предприятие может быть многоуровневым . В этом случае все строки справочника будут разделяться на 2 вида: «просто» элементы справочника и группы справочника. Группы позволяют переходить на нижележащие уровни многоуровневого справочника. Использование многоуровневых справочников позволяет организовать ввод информации в справочник с нужной степенью детализации. Элементы и группы элементов в многоуровневом справочнике можно переносить из одной группы в другую.

Подчиненные справочники

Между справочниками может быть установлено отношение подчиненности . В терминах реляционных баз данных, между таблицами устанавливается связь "один-ко-многим". В этом случае каждый элемент подчиненного справочника будет связан с одним из элементов справочника-владельца.Иногда можно сказать, что элементы одного справочника принадлежат элементам другого. Например, в системе может быть справочник НалоговыеЛьготы. Тогда его можно сделать подчиненным справочнику Сотрудники. Это означает, что "Сотрудник владеет налоговыми льготами" .

Справочник Сотрудники

Справочник НалоговыеЛьготы

  • Иванов Иванов Иванов
  • Петров Петр Петрович
  • Светлов Михаил Петрович
  • Цветков Антон Васильевич

( владелец Петров Петр Петрович)

  • Льгота ветеранам
  • Льгота на детей
  • Иванов Иванов Иванов
  • Петров Петр Петрович
  • Светлов Михаил Петрович
  • Цветков Антон Васильевич

( владелец Светлов Михаил Петрович)

  • Льгота афганцам

Табличные части (только версия 8.0)

В версии 8.0 появилась возможность для элемента справочника иметь несколько табличных частей. Эту возможность рекомендуется использовать для отражения информации, связанной с данным элементом, но не имеющей собственной объектной сущности (для которых рекомендуется завести подчиненный справочник). Например, для спр. Товары может быть заведена табличная часть ЕдиницыИзмерения, для справочника Сотрудники могут быть заведены табличные части Образование и СоставСемьи. Работа с табличными частями похожа на работу с подчиненными справочниками за исключением того, что табличные части не могут быть типами, а значит уже будет нельзя создать реквизит типа Образование.

Сравнение справочников с другими объектами

Объект

Сходства

Различия

Константы хранит значение, сохраняется в базе данных Справочник хранит не одно значение, а целый список однородных объектов.
Документы сохраняется в базе данных, имеет реквизиты, документы могут быть подчиненными друг другу Справочник хранит нормативно-справочную информацию, а документы отражают события реального мира. Обычно значения реквизитов документов выбираются из справочников. Документ обычно проводится, документ обязательно имеет дату и время, документ может содержать табличную часть, чего нет в справочниках (в версии 8.0 справочники и документы могут иметь по несколько табличных частей). Справочники могут быть многоуровневыми, в справочнике могут быть периодические реквизиты, чего нет в документах (в версии 8.0 периодических реквизитов нет, а есть периодические регистры сведений).
Перечисления хранится в БД, хранит список значений Множество значений в справочник вводит пользователь в режиме Предприятие, а для перечислений список значений задается разработчиком в режиме Конфигуратор. Перечисления обычно используются в операторах Если.
ТаблицаЗначений имеет строки и колонки (не хранится в БД) ТаблицаЗначений предназначена для хранения промежуточных данных в памяти компьютера, возникающих во время работы программы. Таблица значений может хранить разнородные объекты, а в справочнике все элементы одного типа. Таблицы значений не могут быть многоуровневыми или подчиненными друг другу.
СписокЗначений хранит список значений (не сохраняется в БД) Список значений может хранить разнородные объекты, а в справочнике все элементы одного типа

Основы программирования

Создание и запись нового элемента

Поиск элемента справочника


//например, в приказе об увольнении
СпрСотр.НайтиЭлемент (Сотрудник);

СпрСотр.НайтиПоКоду (123);
СпрСотр.НайтиПоНаименованию ("Иванов Иван Иванович");
СпрСотр.НайтиПоРеквизиту ("Оклад", 5000);

//если элемент найден, он становится текущим и его можно прочитать так:

Если СпрСотр.НайтиПоНаименованию("Иванов Иван Иванович")=1 Тогда
........НайденныйСотр = СпрСотр.ТекущийЭлемент ();
КонецЕсли;


//в версии 8.0 если элемент найден, то он возвращается, иначе возвращается Неопределено

НайденныйСотр = СпрСотр.НайтиПоКоду (123);
НайденныйСотр = СпрСотр.НайтиПоНаименованию ("Иванов Иван Иванович");
НайденныйСотр СпрСотр.НайтиПоРеквизиту ("Оклад", 5000);

НайденныйСотр = СпрСотр.НайтиПоНаименованию("Иванов Иван Иванович");
Если НайденныйСотр = Неопределено Тогда
.....//элемент не найден
КонецЕсли;

Удаление элемента справочника

СпрСотр.Удалить (1); //непосредственное удаление

СпрСотр.Удалить (0); //пометка на удаление
СпрСотр.СнятьПометкуУдаления ();


Пометка = СпрСотр.ПометкаУдаления (); //обратите внимание: это метод


СпрСотр.Удалить (); //непосредственное удаление

СпрСотр.УстановитьПометкуУдаления (Истина) ; // пометка на удаление
СпрСотр.УстановитьПометкуУдаления (Ложь) ; //снять пометку на удаление

//можно проверить, помечен ли элемент на удаление
//есть свойство ПометкаУдаления, оно имеет тип Булево - Истина или Ложь

Пометка = СпрСотр.ПометкаУдаления ; //обратите внимание: это свойство
Если Пометка = Истина Тогда
.....//элемент помечен на удаление
КонецЕсли;

Перебор элементов справочника


СпрСотр.ВыбратьЭлементы ();
Пока СпрСотр.ПолучитьЭлемент () = 1 Цикл
...
...Сообщить("Сотрудник " + СпрСотр.Наименование);
КонецЦикла;


выборка = Справочники.Сотрудники.Выбрать ();
Пока выборка.Следующий () = 1 Цикл
... //действия с очередным элементом
КонецЦикла;


Родитель
Перебор элементов внутри группы. Группа в терминах 1С -- это "родитель".


СпрСотр.НайтиПоНаименованию("Работающие");
Работающие = СпрСотр.ТекущийЭлемент();
СпрСотр.ИспользоватьРодителя (Работающие);
//дальше, например, цикл по сотрудникам (см. выше)
...



ГруппаРаботающие = СпрСотр.НайтиПоНаименованию("Работающие");
выборка = СпрСотр.Выбрать (ГруппаРаботающие);
Пока выборка.Следующий () = 1 Цикл
... //действия с очередным элементом
...Сообщить("Сотрудник " + выборка.Наименование);
КонецЦикла;

Владелец
Перебор элементов справочника принадлежащих элементу другого справочника.
Один справочник подчинен другому справочнику, например спр. НалоговыеЛьготы подчинен спр. Сотрудники.

Периодические реквизиты
Чтение и запись периодических реквизитов.
Установка даты выборки периодических реквизитов для всего справочника.


//так мы узнаем, какая была у сотрудника
//категория на определенную дату

Катег = СпрСотр.Категория.Получить (НекаяДата);

//так мы установим сотруднику категорию
//на определенную дату
СпрСотр.Категория.Установить (НекаяДата, НоваяКатегория);

//можно установить дату выборки периодических
//реквизитов для всего справочника
СпрСотр.ИспользоватьДату (НекаяДата);

//тогда ниже уже нельзя использовать Установить и Получить
//доступ к периодическим реквизитам становится
//такой же, как к обычным реквизитам
Катег = СпрСотр.Категория;
СпрСотр.Оклад = 6000;

В версии 8.0 нет периодических реквизитов. Вместо них необхидом использовать регистры сведений, развернутые во времени.

Экранные формы справочников

Форма списка справочника

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

Лучше один раз увидеть, чем сто раз услышать, поэтому ниже для примера приведена форма списка справочника Сотрудники:




Модуль формы списка содержит процедуры и функции, которые действуют в контексте данной формы (в контексте объекта Справочник).

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

Событие

Описание

ПриОткрытии Вызывается при открытии формы списка справочника. Можно задать начальные значения для переменных, проверить права пользователя на открытие данного справочника и т.д.
ПриЗакрытии Вызывается при закрытии формы списка справочника.
ПриЗаписи

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

Пример, справочник Должности

ПриВыбореРодителя(НовРодитель) Вызывается при выборе родителя (группы). В этой процедуре можно проверить права пользователя на просмотр элементов данной группы.
ПриВыбореВладельца(НовВладелец) Вызывается при выборе владельца справочника-хозяина. Имеет смысл, если данный справочник подчинен другому.
ПриУстановкеОтбора(Реквизит,Значение) Предопределенная процедура при интерактивной установке отбора любым способом (отбор, быстрый отбор, отбор по значению, история отбора) и при отключении отбора.
ПриВыбореСтроки() Режим обработки выбора строки (двойной щелчок мыши или клавиша Enter) включается в форме списка справочника, журнала документов, счетов, журнала операций, журнала проводок при помощи метода Форма.ОбработкаВыбораСтроки(1). Тогда при выборе строки будет вызываться эта предопределенная процедура.


Сортировка

В форме списка справочника элементы могут быть отсортированы в различном порядке: по коду, по наименованию или по любому реквизиту, у которого в Конфигураторе установлен флажок Сортировка. Задать тип сортировки можно программно методом Сортировка (Способ, ФлагРазрешенияИзменения)


Процедура ПриОткрытии()
...... Сортировка ("Код",0); //сортировка по коду, пользователь изменить не может
КонецПроцедуры

Процедура ПриОткрытии()
......СправочникСписок.Порядок.Установить("Наименование Asc, Карточка Asc");
......//вопрос читателям: как запретить пользователю изменять порядок сортировки?
КонецПроцедуры

Отбор

В форме списка справочника элементы могут быть отфильтрованы, т.е. пользователю будут показаны только нужные элементы. Программно установить отбор можно методом УстановитьОтбор (Реквизит, Значение). Для этого у реквизита должен быть установлен флажок "Отбор по реквизиту" в Конфигураторе .

Статический фильтр (только версия 7.7)

В 1С 7.7 нельзя установить отбор по периодическому реквизиту или по нескольким реквизитам одновременно (сложный фильтр). В этом случае выходом из положения может быть метод ИспользоватьСписокЭлементов. Этому методу нужно передать список элементов, которые должны быть показаны. Предварительно этот список нужно сформировать.

Процедура ПоказатьРаботающихПлотников()

СписокЭлементов = создатьОбъект("СписокЗначений");

СпрСотр.ВыбратьЭлементы();

.....Если (СпрСотр.Родитель = группаРаботающие) И (СпрСотр.Должность=длжПлотник) Тогда
...........СписокЭлементов.ДобавитьЗначение(СпрСотр.ТекущийЭлемент());
.....КонецЕсли;
КонецЦикла;

ИспользоватьСписокЭлементов (СписокЭлементов);

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

Форма элемента и форма группы

Если справочник имеет сложную структуру, тогда его элементы удобнее редактировать в отдельном окне, а не в списке. Ниже приведена форма элемента справочника Сотрудники.


В форме элемента справочника также есть предопределенные процедуры (события):

События

Описание

ПриОткрытии() Вызывается при открытии формы элемента справочника. Можно задать начальные значения для переменных, проверить права пользователя на открытие данного элемента справочника и т.д.
ПриЗакрытии() Вызывается при закрытии формы элемента справочника.
ПриЗаписи()

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

Пример, справочник Сотрудники

Процедура ПриЗаписи
....Если Категория.Выбран()=0 Тогда
.........Предупреждение("Не указана категория сотрудника!");
.........СтатусВозврата(0);
.....КонецЕсли;
КонецПроцедуры

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

Следует заметить, что вверсии 8.0 список событий всех объектов значительно расширен.

Создание и запись элемента

Программное создание элемента справочника

Ниже в справочник Сотрудники программно добавляется новый сотрудник в группу Работающие. В справочнике заполняется поля Наименование, ДатаПриема и пара периодических реквизитов.



СпрСотр.Новый ();


СпрСотр.Записать ();
//установка периодических реквизитов возможна только после записи элемента
СпрСотр.Категория.Установить (СпрСотр.ДатаПриема, ктгСовместители);
СпрСотр.Должность.Установить (СпрСотр.ДатаПриема, длжПлотник);

а можно сделать красивее:

СпрСотр = СоздатьОбъект("Справочник.Сотрудники");
СпрСотр.ИспользоватьРодителя(грпРаботающие);
СпрСотр.ИспользоватьДату(ДатаПриема); //внимание!
СпрСотр.Новый();
СпрСотр.Наименование = "Иванов Иван Иванович";
СпрСотр.ДатаПриема = "01.01.2002";
//доступ к периодическим реквизитам становится такой же, как к обычным
СпрСотр.Категория = ктгСовместители;
СпрСотр.Должность = длжПлотник;
СпрСотр.Записать();

Нов = Справочники.Сотрудники.СоздатьЭлемент();
Нов.Родитель = грпРаботающие;
Нов.Наименование = "Иванов Иван Иванович";
Нов.ДатаПриема = "01.01.2002";
Нов.Записать();

//в версии 8.0 нет периодических реквизитов

Программное создание групп

СпрСотр = СоздатьОбъект("Справочник.Сотрудники");

СпрСотр.НоваяГруппа ();

СпрСотр.Записать ();

СпрСотр.НоваяГруппа();

СпрСотр.Записать();

Нов = Справочники.Сотрудники.СоздатьГруппу ();

Нов.Записать ();

Нов = Справочники["Сотрудники"].СоздатьГруппу ();
Нов.Наименование = "Работающие";
Нов.Записать ();

Внимание!

Транзакции

При создании множества элементов справочника для ускорения работы можно заключить цикл в транзакцию. При этом реальное создание всех элементов произойдет только по команде ЗафиксироватьТранзакцию(). На время выполнения транзакции справочник блокируется.

СпрСотр = СоздатьОбъект("Справочник.Сотрудники");
НачатьТранзакцию ();

Для Ном = 1 По 100 Цикл
.....СпрСотр.Новый();
.....СпрСотр.Наименование = "Новый " + Строка(Ном);
.....СпрСотр.Записать();
КонецЦикла;

ЗафиксироватьТранзакцию ();


СпрСотр = Справочники.Сотрудники;
НачатьТранзакцию ();

Для Ном = 1 По 100 Цикл
.....Нов = СпрСотр.СоздатьЭлемент();
.....Нов.Наименование = "Новый " + Строка(Ном);
.....Нов.Записать();
КонецЦикла;

ЗафиксироватьТранзакцию ();

Перебор элементов

Простой перебор

СпрСотр = СоздатьОбъект("Справочник.Сотрудники");
Режим = 0; //выбирать без учета иерархии, 1 - с учетом (по умолч.)
СпрСотр.ВыбратьЭлементы (Режим);
Пока СпрСотр.ПолучитьЭлемент ()=1 Цикл
.....<действия с очередным элементом/группой>
КонецЦикла;

Фильтрация (отбор)

СпрСотр = СоздатьОбъект("Справочник.Сотрудники");
РежимИерархии = 1; //1- выбирать с учетом иерархии, 0 - без учета
РежимГрупп = 0; //0 - не включать в выборку группы, 1 - включать
ИмяРеквизита = "Год"; //в Конфигураторе у реквизита должен быть установлен флажок Отбор
Значение = 1980;
СпрСотр.ВыбратьЭлементыПоРеквизиту (ИмяРеквизита,Значение,РежимИерархии, РежимГрупп);
Пока СпрСотр.ПолучитьЭлемент()=1 Цикл
.....<действия с очередным элементом>
КонецЦикла;

Фильтрация в цикле

СпрСотр = СоздатьОбъект("Справочник.Сотрудники");
СпрСотр.ИспользоватьРодителя(грпРаботающие);
СпрСотр.ИспользоватьДату(РабочаяДата());
СпрСотр.ВыбратьЭлементы ();
Пока СпрСотр.ПолучитьЭлемент ()=1 Цикл

Если СпрСотр.Должность <> длжПлотник Тогда
....Продолжить; //этого сотрудника пропускаем, перейти в начало цикла
КонецЕсли;

<действия с очередным элементом>

КонецЦикла;

Порядок сортировки

Перед выборкой можно задать порядок сортировки следующими методами:

ПорядокКодов()
ПорядокНаименований()
ПорядокРеквизита(ИмяРекв) //у реквизита должен быть установлен флажок Сортировка в Конфигураторе
ОбратныйПорядок()

Например, ниже открывается выборка сотрудников, отсортированных по номерам по убыванию:

СпрСотр = СоздатьОбъект("Справочник.Сотрудники");
СпрСотр.ПорядокКодов();
СпрСотр.ОбратныйПорядок();
СпрСотр.ВыбратьЭлементы();

Запрос к справочнику

Перебор элементов справочника можно организовать через Запрос. Часто это бывает удобнее, если применяется сложное условие отбора или группировка элементов. Подробнее см. Запросы

Поиск элемента

Поиск элемента

СпрСотр = СоздатьОбъект("Справочник.Сотрудники");
Если СпрСотр.НайтиЭлемент (ВыбрСотр)=1 Тогда
....//элемент становится текущим
....СпрСотр.Родитель = грпРаботающие;
....СпрСотр.Записать();
КонецЕсли;

Поиск по коду

Если СпрСотр.НайтиПоКоду (1) = 1 Тогда
....ЭлементИлиГруппа = СпрСотр.ТекущийЭлемент();
КонецЕсли;

Поиск по наименованию

Если СпрСотр.НайтиПоНаименованию ("Работающие")=1 Тогда
....грпРаботающие = СпрСотр.ТекущийЭлемент();
КонецЕсли;

Режим = 1; // 1 - поиск внутри установленного подчинения (родителя) (по умолч.); 0 - поиск во всем справочнике
ФлагПоиска = 0; //1 - найти точное соответствие; 0 - найти наименование по первым символам (по умолч)
СпрСотр.ИспользоватьРодителя(грпРаботающие);
Если СпрСотр.НайтиПоНаименованию("Ив",Режим,ФлагПоиска)=1 Тогда
....ПервыйРаботающийИв = СпрСотр.ТекущийЭлемент();
КонецЕсли;

Поиск по реквизиту

ИмяРекв = "Год"; //у реквизита должен быть установлен флажок Сортировка в Конфигураторе
ФлагГлобПоиска = 1; // 1- искать во всем справочнике, 0 - искать в пределах подчинения
Если СпрСотр.НайтиПоРеквизиту (ИмяРекв,1980,ФлагГлобПоиска)=1 Тогда
.....НайденныйЭлемент = СпрСотр.ТекущийЭлемент();
КонецЕсли;

Поиск элемента в цикле

СпрСотр = СоздатьОбъект("Справочник.Сотрудники");
СпрСотр.ИспользоватьРодителя(грпРаботающие);
СпрСотр.ИспользоватьДату(РабочаяДата());
СпрСотр.ВыбратьЭлементы ();
Пока СпрСотр.ПолучитьЭлемент ()=1 Цикл

Если СпрСотр.Должность = длжПлотник Тогда
....Прервать; //нашли работающего плотника! выйти из цикла
КонецЕсли;

КонецЦикла;
<действия с найденным элементом>

Запрос к справочнику

Поиск элемента справочника можно организовать через Запрос. Часто это бывает удобнее, если применяется сложное условие отбора. Подробнее см. Запросы

Удаление элементов

Непосредственное удаление

СпрСотр = СоздатьОбъект("Справочник.Сотрудники");
СпрСотр.НайтиЭлемент(ВыбрСотрудник);
СпрСотр.Удалить(); //непосредственное удаление

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

Можно программно получить список объектов, содержащих ссылку на удаляемый объект методом НайтиСсылки(объект).

Пометка на удаление

Для контроля ссылочной целостности базы данных удаляемые элементы всего лишь помечаются на удаление. Затем специальной командой меню Операции => "Удаление помеченных объектов" в монопольном режиме система 1С проконтролирует ссылочную целостность и физически удалит элементы из базы данных, если на них нет ссылок в других объектах.

СпрСотр = СоздатьОбъект ("Справочник.Сотрудники");
СпрСотр.НайтиЭлемент (ВыбрСотрудник);
СпрСотр.Удалить (0); //пометка на удаление

//можно проверить, помечен ли элемент на удаление
//функция возвращает 1 - если помечен, 0 - если нет
Пометка = СпрСотр.ПометкаУдаления ();

//можно снять пометку на удаление
СпрСотр.НайтиЭлемент (ВыбрСотрудник);
СпрСотр.СнятьПометкуУдаления ();

Транзакции

При удалении множества элементов справочника для ускорения работы можно заключить цикл в транзакцию. При этом реальное удаление (пометка на удаление) всех элементов произойдет только по команде ЗафиксироватьТранзакцию(). На время транзакции справочник блокируется.

СпрСотр = СоздатьОбъект("Справочник.Сотрудники");
НачатьТранзакцию ();

СпрСотр.ВыбратьЭлементы();
Пока СпрСотр.ПолучитьЭлемент()=1 Цикл
......СпрСотр.Удалить(0); //пометка на удаление
КонецЦикла;

ЗафиксироватьТранзакцию ();

Иерархические справочники

Список элементов справочника в системе 1С:Предприятие может быть многоуровневым. В этом случае все строки справочника будут разделяться на 2 вида: «просто» элементы справочника и группы справочника. Группы позволяют переходить на нижележащие уровни многоуровневого справочника. Возможное количество уровней вложенности справочника задается в Конфигураторе.

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

Внимание! Иерархический справочник - это также многоуровневый справочник, или справочник с группами .
Группа справочника в 1С часто называется "родитель ".

Программное создание группы

СпрСотр = СоздатьОбъект("Справочник.Сотрудники");

СпрСотр.НоваяГруппа ();
СпрСотр.Наименование = "Работающие";
СпрСотр.Записать ();

СпрСотр.НоваяГруппа();
СпрСотр.Наименование = "Уволенные";
СпрСотр.Записать();

Внимание! В Конфигураторе можно задать для реквизита то, что он действителен только для элемента, только для группы или для обоих. Например, поле ДатаПриема не имеет смысла для группы Работающие. Поэтому не стоит обращаться к реквизитам элементов, если вы работаете с группой и наоборот.

Установка текущей группы


СпрСотр.ИспользоватьРодителя (грпРаботающие); //теперь мы внутри группы Работающие
СпрСотр.ВыбратьЭлементы(); //открыть выборку элементов группы Работающие

СпрСотр = СоздатьОбъект("Справочник.Сотрудники");
СпрСотр.ИспользоватьРодителя (грпРаботающие);
СпрСотр.Новый(); //создание нового элемента в группе Работающие

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

Метод / атрибут

Описание

Уровень()

Этот метод возвращает уровень текущего элемента. Например, для сотрудника, который находится в группе Работающие, мы получим число 2.

Пример, вывод иерархического справочника в виде дерева:

СпрСотр = СоздатьОбъект("Справочник.Сотрудники");
СпрСотр.ВыбратьЭлементы();

//вывести отступ в соответствии с глубиной вложенности элемента
Для Ном=1 По СпрСотр.Уровень() Цикл
.....Сообщить(".....");
КонецЦикла;

КонецЦикла;

ЭтоГруппа() Этот метод возвращает 1, если текущий элемент справочника является группой, или 0 если группой не является.

Пример, вывод сотрудников (группы не выводятся):

СпрСотр = СоздатьОбъект("Справочник.Сотрудники");
СпрСотр.ВыбратьЭлементы();
Пока СпрСотр.ПолучитьЭлементы()=1 Цикл

Если СпрСотр.ЭтоГруппа()=1 Тогда
......Продолжить; //группы пропускаем, перейти в начало цикла
КонецЕсли;
Сообщить(СпрСотр.Наименование);

КонецЦикла;

ПринадлежитГруппе(...) Метод проверяет, принадлежит ли указанной группе текущий элемент справочника (независимо от того, на каком нижележащем уровне он находится).
Возвращает: 1 - если элемент принадлежит указанной группе, 0 - если нет.

Пример, вывод товаров, принадлежащих к группе Спиртное, независимо от того входят ли они в подгруппы Шампанское, Пиво, Водка, Вино и т.д.:




.....Сообщить(СпрТовары.Наименование);
КонецЕсли;

КонецЦикла;

атрибут Родитель

Этот атрибут содержит родителя текущего элемента справочника, т.е. группу, в которой находится текущий элемент. Доступен для чтения и записи.

Пример, перенос всех товаров из группы Спиртное в группу Распродажа:

СпрТовары = СоздатьОбъект("Справочник.Товары");
СпрТовары.ВыбратьЭлементы();
Пока СпрТовары.ПолучитьЭлементы()=1 Цикл

Если СпрТовары.ПринадлежитГруппе(грпСпиртное)=1 Тогда
.....СпрСотр.Родитель = грпРаспродажа;
.....СпрСотр.Записать();
КонецЕсли;

КонецЦикла;

А можно сделать красивее и перенести всю группу Спиртное в группу Распродажа, тогда все подгруппы и элементы также перенесутся в группу Распродажа.

СпрТовары = СоздатьОбъект("Справочник.Товары");
СпрТовары.НайтиЭлемент(грпСпиртное);
СпрТовары.Родитель = грпРаспродажа;
СпрТовары.Записать();

ПолныйКод()

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

Например, "2/7/123"

ПолноеНаименование()

Возвращает строку, содержащую полное наименование выбранного элемента справочника со всеми вышестоящими уровнями, разделенными символом "/".

Например, "Спиртное/Шампанское/Советское"

Возможность выбора группы в реквизите диалога

Часто бывает удобно для реквизитов на форме, имеющих тип Справочник, отключить возможность выбора группы. Тогда в данное поле может быть выбран только элемент и не может быть выбрана группа. В общем, проще один раз попробовать, чем несколько раз объяснять.

Форма.ВыбрСотрудник.ВыборГруппы (0); //отключить возможность выбора группы

Подчиненные справочники

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

Назначение подчиненных справочников

Любой справочник может использоваться как сам по себе, так и быть подчиненным какому-либо другому справочнику. Например, справочник договоров может использоваться отдельно, а может быть связан со справочником организаций.

Чтобы подчинить справочник какому-либо из справочников, уже существующих в системе, в поле «Подчинен» следует выбрать наименование этого справочника. Такой справочник в системе 1С:Предприятие называется владельцем.

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

Внешне работа с подчиненным справочником в системе 1С:Предприятие будет выглядеть следующим образом.

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

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

При работе с системой 1С:Преднриятие для подчиненного справочника может быть отключен показ в виде иерархического списка. В этом случае в окне подчиненного справочника будут отображаться все элементы этого справочника, то есть элементы, починенные разным владельцам, будут показываться вперемешку. Тем не менее, любой элемент подчиненного справочника «знает» своего владельца: если для справочника включен режим «Редактировать в диалоге» (см. ниже п. «Создание форм справочника»), наименование элемента-владельца будет выдаваться в заголовке окна редактирования элемента справочника.

Установка текущего владельца


СпрДоговоры.ИспользоватьВладельца(ВыбрКонтрагент);
СпрДоговоры.ВыбратьЭлементы(); //открываем выборку по договорам выбранного контрагента
<...>

Информация о текущем элементе

Если справочник подчиненный, то будет полезным применение следующих методов и атрибутов, которые позволяют получить информацию о текущем элементе справочника:

Атрибут

Описание

атрибут Владелец

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

Пример, перенос всех договоров от одного котрагента к другому (справочник Договоры подчинен справочнику Контрагенты):

СпрДоговоры = СоздатьОбъект("Справочник.Договоры");
СпрДоговоры.ИспользоватьВладельца(Контрагент1);
СпрДоговоры.ВыбратьЭлементы();
Пока СпрДоговоры.ПолучитьЭлементы()=1 Цикл

СпрДоговоры.Владелец = Контрагент2;
СпрДоговоры.Записать();

КонецЦикла;


Периодические реквизиты

Включение опции «Периодический» позволяет указать для реквизита справочника хранение истории изменений его значения. Такой реквизит в системе 1С:Предприятие называется периодическим и обладает следующим свойством: в отличие от «обычных» (не периодических) реквизитов, система 1С:Предприятие хранит значения такого реквизита по датам их изменения. При обращении к значению такого реквизита на некоторую дату выдается его значение на эту дату, либо, если таковое отсутствует, - на ближайшую предыдущую дату, на которую устанавливалось значение реквизита.

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

К периодическому реквизиту можно обращаться при помощи встроенного языка системы 1С:Предприятие - получать и записывать значение реквизита на указываемую дату. Однако, следует иметь в виду, что при получении значения реквизита на какую-то дату извлекается его значение на указанную или (если значение на указанную дату отсутствует) на ближайшую предыдущую дату, а запись значения периодического реквизита выполняется всегда на указанную дату.

В режиме использования конфигурации для периодического реквизита можно вызвать окно «История». Это окно представляет собой таблицу, состоящую из двух граф: дата изменения значения реквизита справочника и значение на эту дату. Окно «История» позволяет редактировать историю изменений значения реквизита напрямую: вводить новые строки, редактировать или удалять существующие.

Методы периодических реквизитов
//так мы узнаем, какая была у сотрудника категория на определенную дату
Катег = СпрСотр.Категория.Получить (НекаяДата);

//так мы установим сотруднику категорию на определенную дату
СпрСотр.Категория.Установить (НекаяДата, НоваяКатегория);

Внимание! Эти методы можно применять, если ранее не применялся метод ИспользоватьДату

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

//можно установить дату выборки периодических реквизитов для всего справочника
СпрСотр.ИспользоватьДату (НекаяДата);

//тогда ниже уже нельзя использовать методы Установить и Получить
//доступ к периодическим реквизитам становится такой же, как к обычным реквизитам
Катег = СпрСотр.Категория;
СпрСотр.Оклад = 6000;

Объект "Периодический"

Для работы с историей периодического реквизита очень удобно использовать объект "Периодический".

Пример, вывести историю карьеры сотрудника за текущий год:

ИсторияКарьеры = СоздатьОбъект("Периодический");
ИсторияКарьеры.ИспользоватьОбъект("Должность",ВыбрСотрудник);
ИсторияКарьеры.ВыбратьЗначения(НачГода(РабочаяДата(),КонГода(РабочаяДата()));
Пока ИсторияКарьеры.ПолучитьЗначение()=1 Цикл
....Сообщить(Строка(ИсторияКарьеры.ДатаЗнач) + " " + Строка(ИсторияКарьеры.Значение));
КонецЦикла;

С помощью объекта Периодический можно также редактировать и удалять значения. Полный список методов см. в Синтакс-помощнике.

Проведение документов

При проведении документа часто требуется установить новое значение периодического реквизита на определенную дату. Это называется движение документа. В этом случае следует применять метод УстановитьРеквизитСправочника:

УстановитьРеквизитСправочника (Сотрудник, "Должность", НоваяДолжность, ДатаПеремещения);

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

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

Процедура ОбработкаПроведения()

ВыбратьСтроки();
Пока ПолучитьСтроку()=1 Цикл

ПривязыватьСтроку (НомерСтроки);
УстановитьРеквизитСправочника(Сотрудник, "Должность", НоваяДолжность, ДатаПеремещения);

КонецЦикла;

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

Подбор из справочника

Функция подбора позволяет выбирать несколько значений из справочника или другого объекта, не закрывая его. Например, есть документ РасходнаяНакладная, в котором пользователь может указать несколько товаров.

Организация подбора

Синтаксик: ОткрытьПодбор(<Объект>,<ИмяФормы>,<КонтекстФормы>,<ФлагМножВыбора>,<ТекЗнач>)

ОткрытьПодбор("Справочник.Номенклатура","ФормаДляПодбора",Конт,1);


...НоваяСтрока();
...Товар = Элемент;
КонецПроцедуры

Можно воспользоваться контекстом формы и сразу перейти в нужную группу, например:

ОткрытьПодбор("Справочник.Номенклатура","ФормаДляПодбора",Конт,1);
Конт.ИспользоватьРодителя(грпСпиртное);

Процедура ОбработкаПодбора(Элемент,КонтФормы)
...НоваяСтрока();
...Товар = Элемент;
КонецПроцедуры

Установка и получение значений из подбора

КонтФормыПодбора.УстановитьЗначениеВПодборе (<ИмяРеквизита>,<Значение>)

<ИмяРеквизита> - строка с именем реквизита формы подбора значения;
<Значение> - значение реквизита.

КонтФормыПодбора.ПолучитьЗначениеИзПодбора (<Выражение>)

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

Другие полезные методы

Метод

Описание

Вид() Установить или считать текущее название вида справочника. Возвращает текущее название вида справочника, как оно задано в Конфигураторе, например "Сотрудники". Установка вида справочника возможна для реквизитов типа "Справочник", т.е. справочник неопределенного вида.
ПредставлениеВида() Получить пользовательское представление вида справочника, как он задан в конфигураторе.
Возвращает строковое значение, содержащее пользовательское представление вида справочника (синоним).
УстановитьАтрибут(ИмяРеквизита, Значение) Установить значение реквизита по его имени.
<ИмяРеквизита> - строковое выражение, содержащее имя реквизита, как оно задано в конфигураторе. <Значение> - выражение, содержащее устанавливаемое значение реквизита.
ПолучитьАтрибут(ИмяРеквизита) Получить значение реквизита по его имени. Возвращает значение реквизита.
Выбран()

Возвращает 1 - если элемент справочника выбран, 0 - если не выбран. Часто применяется для проверки на ошибки, чтобы все необходимые данные были указаны.

Выбрать(...) Вызов диалога для выбора элемента справочника.
Возвращает: 1 - если элемент выбран; 0 - если не выбран. Выбранный элемент становится текущим.

Чтение структуры справочников

Цикл по справочникам

КолвоСправочниковВКонфигурации = Метаданные.Справочник();
Для Ном=1 to КолвоСправочниковВКонфигурации Цикл

кфгСпр = Метаданные.Справочник(Ном);
Идентификатор = кфгСпр.Идентификатор();
ПолныйИдентификатор = кфгСпр.ПолныйИдентификатор();
Синоним = кфгСпр.Синоним();

Найти элемент справочника в 1С 8 можно тремя способами:

1) Поиск по коду

Если известен код элемента справочника, и необходимо получить ссылку на него, то можно воспользоваться методом НайтиПоКоду(<Код>, <ПоискПоПолномуКоду>, <Родитель>, <Владелец>) код элемента справочника и в результате будет получена либо ссылка на элемент справочника, либо пустая ссылка, если элемент с таким кодом не найден. Следует заметить, что если в справочнике присутствует несколько элементов с указанным кодом, то будет возвращен тот, который найден первым.

НайденныйЭлемент = Справочники.Номенклатура.НайтиПоКоду("00000011254" );

Описание параметров метода НайтиПоКоду :

  • <Код> (обязательный) . Тип: Число, Строка. Описание: искомый код, строка или число в зависимости от настроек справочника в конфигураторе.
  • <ПоискПоПолномуКоду> (необязательный) . Тип: Булево. Описание: определяет режим поиска по полному коду, истина — искомый код следует задавать в виде строки, состоящей из последовательности кодов по уровням справочника, разделенных символом “/”. Значение по умолчанию: Ложь.
  • <Родитель> (необязательный)
  • <Владелец> (необязательный)

2) Поиск по наименованию

Если известно наименование элемента справочника и необходимо получить ссылку на него, то можно воспользоваться методом НайтиПоНаименованию(<Наименование>, <ТочноеСоответствие>, <Родитель>, <Владелец>) менеджера справочника. В простейшем случае необходимо передать данному методу наименование элемента справочника и в результате будет получена либо ссылка на элемент справочника, либо пустая ссылка, если элемент с таким наименованием не найден. Следует заметить, что если в справочнике присутствует несколько элементов с указанным наименованием, то будет возвращен тот, который найден первым.

НайденныйЭлемент = Справочники.Номенклатура.НайтиПоНаименованию("Аппарат сварочный" );

Описание параметров метода НайтиПоНаименованию :

  • <Наименование> (обязательный) . Тип: Строка. Описание: строка, содержащая искомое наименование.
  • ТочноеСоответствие> (необязательный) . Тип: Булево. Описание: определяет режим поиска по полному соответствию, поиск будет успешным, если строка поиска: в случае значения параметра Ложь — будет соответствовать левой части наименования, в случае значения параметра Истина — будет полностью совпадать с наименованием (за исключением “хвостовых” пробелов в наименовании). Значение по умолчанию: Ложь.
  • <Родитель> (необязательный) . Тип: СправочникСсылка. Описание: родитель, в пределах которого нужно выполнять поиск, если не указан, то поиск будет проводиться во всем справочнике.
  • <Владелец> (необязательный) . Тип: СправочникСсылка. Описание: владелец, в пределах которого нужно выполнять поиск, если не указан, то поиск будет проводиться во всем справочнике.

3) Поиск по произвольному реквизиту

Если известно значение какого либо реквизита справочника и необходимо получить ссылку на него, то можно воспользоваться методом НайтиПоРеквизита(<ИмяРеквизита>, <ЗначениеРеквизита>, <Родитель>, <Владелец>) менеджера справочника. В простейшем случае необходимо передать данному методу имя реквизита, его значение и в результате будет получена либо ссылка на элемент справочника, либо пустая ссылка, если элемент с таким значением указанного реквизита не найден. Следует заметить, что если в справочнике присутствует несколько элементов с таким значением указанного реквизита, то будет возвращен тот, который найден первым.

НайденныйЭлемент = Справочники.Номенклатура.НайтиПоРеквизиту("Артикул" ,"А-255" );

Описание параметров метода НайтиПоРеквизит :

  • <ИмяРеквизита> (обязательный) . Тип: Строка. Описание: имя реквизита, как он задан в конфигураторе, по значению которого осуществляется поиск. Тип значения: произвольный, кроме ХранилищеЗначения и строк произвольной длины.
  • <ЗначениеРеквизита> (обязательный) . Тип: Произвольный. Описание: значение реквизита, по которому должен выполняться поиск.
  • <Родитель> (необязательный) . Тип: СправочникСсылка. Описание: родитель, в пределах которого нужно выполнять поиск, если не указан, то поиск будет проводиться во всем справочнике.
  • <Владелец> (необязательный) . Тип: СправочникСсылка. Описание: владелец, в пределах которого нужно выполнять поиск, если не указан, то поиск будет проводиться во всем справочнике.

Клюев В.В.

http://prof1c.kklab.ru

Подчинённые справочники

Скорее всего Вы уже неоднократно замечали в обычных типовых конфигурациях, взаимосвязанные между собой справочники, когда при выборе элемента справочника(справочник1), значение другого справочника(справочник2) «фильтруется» по этому значению - то есть выбираются значения, принадлежащие только текущему элементу справочника1; к примеру - это Справочник «Подразделения», владельцем которого является Справочник «Организации».

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

Справочник1 и Справочник2. В справочнике2 перейдите на вкладку «Владельцы» и выберите владельца - «Справочник1», смотрите как показано на рисунке.

Теперь при создании элементов в «Справочнике2», система будет просить ввести владельца справочника1. Есть опция - Использование подчинения - когда задается подчинение Элементам, группам, или группам и элементам.

Казалось бы всё просто, но проблемы возникают у пользователей. Пользователь при открытии «Справочника2» видит все элементы в совершенно непонятном порядке, да и к тому же, если вы работали с типовыми конфигурациями, то могли заметить, что напрямую в справочнике «Подразделения» вы нигде не задаёте владельца, а при открытии справочника можете выбирать организацию и в зависимости от этого получать элементы, подчинённые той или иной организации; при этом при создании элемента справочника «Подразделения» по умолчанию вы получите того владельца, которого выбрали в форме списка подразделений.
Итак приступим, и создадим «Форму списка» для нашего «Справочника2», пока предоставьте это 1С, не внося никаких изменений, позже мы подкорректируем созданную конструктором форму.
В «Справочнике2» перейдите на вкладку Формы и добавьте (+) новую Форму списка справочника и нажмите Готово.

Создадим реквизит формы с типом данных «Справочник1.Ссылка», с именем «ОтборСправочник1», и перетащим этот реквизит на форму, задайте заголовок «Справочник1».


Теперь, для того, чтобы «сие чудо» заработало, необходимо написать код, который будет выполнять отбор при выборе Элемента Справочника1.

8.2, 8.3 Управляемые формы

Для того, чтобы отобразить в форме списка справочника только необходимые нам элементы по выбранному элементу Справочника1, необходимо программно сделать отбор - по выбранному элементу, для этого воспользуемся предопределенной процедурой элемента управления ОтборСправочник1, и напишем код, выполняющие указанную задачу.
В верхней части выберите «ОтборСправочник1» нажмите на правую клавишу мыши и выберите «Свойства», в появившемся окне найдите свойство «ПриИзменении» и нажмите лупу, тем самым перейдя в модуль формы; автоматически создается процедура «ОтборСправочник1ПриИзменении(Элемент)»

В процедуре введите следующий текст:

& НаКлиенте Процедура ОтборСправочник1ПриИзменении(Элемент) Список. Отбор. Элементы. Очистить() ; // ЭлементОтбора = Список. Отбор. Элементы. Добавить(Тип(" ЭлементОтбораКомпоновкиДанных " ) ) ; ЭлементОтбора. ЛевоеЗначение = Новый ПолеКомпоновкиДанных(" Владелец " ) ; ЭлементОтбора. ВидСравнения = ВидСравненияКомпоновкиДанных. Равно; ЭлементОтбора. Использование = Истина ; ЭлементОтбора. ПравоеЗначение = ОтборСправочник1; ЭлементОтбора. РежимОтображения = РежимОтображенияЭлементаНастройкиКомпоновкиДанных. Недоступный; КонецПроцедуры

8.2 Обычные формы


При построении форм - всё то же самое, только формы необходимо создавать обычные, управляемые формы в обычном приложении не работают.
Разница будет состоять в процедуре отбора для элемента в форме списка и создании реквизита.
Чтобы добавить реквизит на обычную форму нажмите кнопку

Процедура Справочник1ПриИзменении(Элемент) ЭтаФорма. Отбор. Владелец. Значение = Справочник1. Ссылка; ЭтаФорма. Отбор. Владелец. Использование = Истина ; ЭтаФорма. ЭлементыФормы. СправочникСписок. НастройкаОтбора. Владелец. Доступность = Ложь ; //(?) КонецПроцедуры

Предпоследней строкой(?) - запрещаем изменять отбор при открытии параметров отбора пользователем - только через элемент управления!

Видео (без звука - все понятно без звука)

Для работы с постоянной и условно постоянной информацией с некоторым множеством значений в системе используются объекты типа «Справочник».

В конкретной конфигурации создается необходимое количество справочников, для хранения данных об объектах, используемых при автоматизации данной предметной области. Например, это могут быть справочники «Организации», «Товары», «Сотрудники» и т.д.

Кроме того, справочники используются для организации аналитического учета, что позволяет исключить неоднозначность при заполнении реквизитов документов или других справочников. При вводе информации в экранные формы документа минимум этой информации вводится с клавиатуры, а большая часть – выбором из открывающихся справочников.

Как правило справочник может редактироваться в процессе работы – могут вводиться новые элементы, редактироваться или удаляться уже существующие (если это не запрещено конкретному пользователю).

Работа со справочниками осуществляется в двух режимах:

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

В режиме выбора элемента справочника. В этом случае справочник открывается с помощью кнопки

или клавиши F4 при вводе нужной информации в документ или другой справочник.

Отличия между этими двумя режимами заключается в том, что в режиме просмотра справочника из главного меню нажатие клавиши ENTER (аналогично двойному щелчку) приведет к открытию текущего элемента справочника для редактирования. Аналогичные действия в режиме выбора из справочника приведут к выбору текущего элемента для вставки его в заполняемый документ.

5.1. Окно справочника

Для вызова на экран нужного справочника можно воспользоваться командами главного меню (например, справочник «Контрагенты» открывается из пункта меню «Основная деятельность» , справочник «Организации» – из пункта меню «Организации» и т.д.). Если в главном меню есть пункт «Операции» , то вызов справочника можно осуществить, выбрав пункт «Операции-Справочники» . На экран будет выдан список существующих справочников в алфавитном порядке:



Выбрав нужный справочник, следует нажать «ОК».


Вот как выглядит в общем виде диалоговое окно справочника:



Если справочник имеет иерархическую структуру, окно справочника может содержать дерево групп.

При щелчке по знаку «+» в узле – ветвь раскроется. Закрыть ветвь дерева можно щелчком мыши на знаке «-» .

Просмотр дерева можно производить с помощью клавиш цифровой клавиатуры:

«*» – раскрывает сразу все ветви дерева;

«-» – скрывает все ветви дерева текущей группы;

«+» – раскрывает следующий уровень ветвей текущей группы.

Если в меню «Действия» установлен показ в виде иерархического списка или нажата кнопка

на панели инструментов, то в крайней левой колонке табличного поля иерархического справочника выводятся условные знаки, обозначающие тип строки;

=> Строка является элементом справочника


=> Строка соответствует группе элементов. Двойной щелчок левой кнопки мыши на этом значке раскрывает группу.


=> Строка содержит название группы, открытой для просмотра. Двойной щелчок левой кнопки мыши на этом значке закрывает группу


Для одноуровневых справочников, не имеющих иерархической структуры, значки не различаются.

Когда в многоуровневом справочнике режим «Иерархический просмотр» выключен, то показываются все группы и элементы справочника причем вперемешку. Это бывает удобным, если справочник имеет сложную иерархию и Вы не помните точно, в какой группе находится нужный Вам элемент. При включенном иерархическом списке Вам пришлось бы последовательно открывать-закрывать многочисленные папки для поиска нужного элемента, при отключенной же иерархии, когда все элементы видны на экране, сделать это гораздо проще, используя один из вариантов поиска (быстрый или произвольный). При отключенном иерархическом списке все элементы справочника выстраиваются по наименованию (в алфавитном порядке). Сортировку справочника можно изменить. Для этого в пункте меню «Действия» следует выбрать подпункт «Сортировка» и вариант «Упорядочить по: Код». При этом элементы справочника выстраиваются в порядке возрастания их кодов. Такая сортировка бывает полезной при ответе на вопрос о том, какие элементы вводились в справочник раньше, а какие позже, так как при вводе новых элементов справочника код автоматически присваивается на единицу больше последнего.

Работу с элементами справочника можно вести с помощью пункта меню «Действия» окна справочника, либо с помощью пиктограмм панели инструментов справочника:


=> Создается новый элемент справочника копированием элемента, выделенного курсором


=> Для переноса элемента или группу из одной группы в другую группу справочника нужно установить курсор на строку с тем элементом, который необходимо переместить, затем выбрать пункт «Действия – Переместить в группу» или воспользоваться соответствующей кнопкой. После этого в открывшемся диалоге дерева групп выбрать наименование той группы, куда предполагается перенести элемент.


=> При сетевой работе обновить текущий список справочника можно с помощью кнопки на панели инструментов или нажатием клавиш CTRL+SHIFT+R.


=> Для того, чтобы воспользоваться справочной системой программы можно нажать клавишу F1 или нажать кнопку на панели инструментов


=> Текущий элемент справочника открывается для редактирования (аналог клавиши F2). Именно этой кнопкой можно воспользоваться, если справочник открыт в режиме выбора, а в названии (или других реквизитах) обнаружена ошибка. С помощью этой кнопки элемент будет открыт для исправления, после завершения которого клавишей ENTER можно будет выбрать его.


=> Установить пометку на удаление (аналог клавиши DEL).

5.2. Ввод информации в справочник

Для ввода нового элемента выберите пункт «Действия – Добавить» формы списка справочника или нажмите на клавишу INSERT или можно воспользоваться кнопками на панели инструментов справочника:


Добавить элемент


Создать новую группу (CTRL+F9)


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

Если для иерархического справочника отключен показ в виде иерархического списка, ввод нового элемента производиться в текущую группу (ту, которая была выбрана до изменения режима просмотра) или в корневую группу.

Если в форме ввода элемента предусмотрен реквизит «Родитель» , то независимо от режима и текущей группы можно указать принадлежность к любой другой группе.



В форме заполняются основные реквизиты «Код» и «Наименование» и другие реквизиты справочника. Если это обусловлено конфигурацией, при вводе элемента его код будет проверяться на уникальность, если он совпадет с одним из кодов, уже имеющихся в справочнике, то будет выдано сообщение «Код не уникален!» . В этом случае код должен быть исправлен.

Для записи элемента в справочник следует нажать кнопку «ОК» . Для отказа от ввода в справочник нового элемента следует нажать на клавишу «ESC». В случае ввода информации об элементе справочника в отдельном диалоговом окне при этом будет выдан запрос о сохранении изменений, на который в данном случае следует ответить «Нет ».



Если для конкретного справочника возможны два варианта ввода нового элемента (непосредственно в списке справочника или в отдельно открывающемся диалоговом окне), то выбор конкретного варианта осуществляется из пункта меню «Действия Редактировать в диалоге» , который представляет собой переключатель. При «нажатом» состоянии пункта ввод осуществляется в диалоге, при «отжатом» – в списке.

Если для справочника имеется возможность организовать в нем иерархическую структуру, то для ввода новой группы следует выбрать пункт меню «Действия Новая группа» формы списка или воспользоваться кнопкой

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

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

5.3. Редактирование информации в справочнике

Порядок редактирования информации в справочнике отличается в зависимости от того, происходит это в строке списка справочника или в отдельном диалоговом окне:


При редактировании в строке следует установить курсор в нужную строку и сделать двойной щелчок левой кнопкой мыши или нажать клавишу ENTER . Ячейка переключится в режим редактирования. Напомним, что описанные способы не действуют, если справочник открыт в режиме выбора. Двойной щелчок или клавиша ENTER в этом случае как раз и осуществляет выбор из справочника. Для редактирования же элемента справочника, открытого в режиме выбора, следует выбрать пункт «Действие -Изменить» или нажать клавишу F2 .Перемещаться по реквизитам редактируемого элемента справочника можно клавишами Tab , Shift+Tab или мышью. Для закрепления результатов редактирования следует нажать клавишу ENTER или кнопку

на панели инструментов окна справочника. Для отказа от редактирования реквизита следует нажать клавишу ESC .

Для редактирования элемента справочника в режиме диалога так же следует установить курсор в нужную строку и сделать двойной щелчок левой кнопкой мыши или нажать клавишу ENTER . Откроется диалоговое окно элемента справочника, в которое нужно внести необходимые изменения, а затем нажать либо клавишу «ОК» (произойдет запись информации и окно редактируемого элемента закроется), либо «Записать» (произойдет запись информации, окно редактируемого элемента при этом остается на экране).


Для некоторых реквизитов справочников необходимо хранить историю изменения их реквизитов. Просмотр истории периодических реквизитов может осуществляться при установке курсора на соответствующий элемент в списке справочника и нажатия на кнопку «Перейти» и выбора соответствующего регистра сведений.


5.4. Подчиненные справочники

Система «1С: Предпрятие» имеет механизм поддержки подчиненных справочников. Этот механизм позволяет связать между собой элементы разных справочников. У подчиненного справочника каждый элемент связан с конкретным элементом справочника – владельца. Если справочник имеет подчиненные справочники, то для открытия нужно воспользоваться пунктом меню «Действия – Перейти» и указать вид подчиненного справочника.



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



Для иерархических справочников список подчиненных элементов может быть показан только для элементов, не являющимися группами. Если же в момент вызова подчиненного справочника курсор стоял на группе элементов, будет выдано сообщение:

5.5. Поиск элементов справочника

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

? Быстрый поиск . Для выполнения быстрого поиска необходимо просто набирать на клавиатуре искомое значение. При обнаружении первого введенного символа он отображается в рамке в нижней части колонки, а курсор устанавливается в ту ячейку списка, первые символы которой совпадают с введенными. Последний введенный символ можно удалить из строки поиска, нажав клавишу Backspase . Если поиск осуществляется в иерархическом справочнике, который представлен в виде иерархического списка, то поиск производится только в текущей группе справочника. Для поиска во всем справочнике следует отключить режим просмотра справочника в виде иерархического списка.

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

на главной панели инструментов программы. Форма диалога зависит от типа данных в колонке, для которой производится поиск.



¦ Укажите информацию, которую необходимо найти.

¦ Переключатель «Вперед – Назад – Везде» позволяет задать направление поиска.

¦ Опция «По текущей колонке» , если она включена, указывает, что поиск будет производиться только в текущей колонке табличной части – той, в которую установлен курсор. При выключенной опции поиск будет производиться во всех колонках слева направо.

¦ Опция «Учитывать регистр» , позволяет указать, будут ли различаться при поиске по строковому значению прописные и строчные буквы. Если эта опция включена, одинаковые прописные и строчные буквы будут считаться разными символами.

¦ После выполнения всех необходимых установок следует нажать кнопку «Поиск».

Если значений, указанных в качестве шаблона поиска, в списке несколько, можно продолжить поиск с теми же установками, выбрав пункт «Правка Найти следующий», «Правка Найти предыдущий» или воспользоваться кнопками

главной панели инструментов программы.

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

Для использования этого элемента следует ввести в него искомую строчную информацию и нажать клавишу ENTER . Если при очередной попытке найти набранный текст на экран выводится предупреждение «Строка не найдена» , то это означает, что в данном направлении нет данных, содержащих указанный текст.

5.6. Отбор и сортировка элементов справочника

Для настройки отбора и сортировки списка в командной панели выберите пункт «Действия – Установить отбор и сортировку списка».



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


Закладка «Отбор»

В некоторых списках предусматривается возможность отбора данных по значениям реквизитов. Это позволяет просматривать только те данные, которые имеют определенное значение в реквизите, выбранном для отбора. Отбор данных производится по определенному набору критериев отбора.

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

Отбор может проводиться сразу по нескольким видам. Для этого достаточно установить флажок слева от наименования вида отбора.

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

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

Значением отбора может являться любое из имеющихся значений этого реквизита, например, «Частное лицо». Вид отбора и значение отбора составляют условие отбора. Условие отбора в определенный момент времени может быть только одно.

Заметим, что возможность отбора предусматривается для большинства списков, причем по одному или нескольким реквизитам. Если для списка отборы не предусмотрены, то в меню и в панели инструментов не будет содержаться элементов интерфейса для управления отборами.

Выбранные параметры отбора могут быть сохранены для использования в дальнейшем. Для этого нажмите кнопку «Отборы».

При установке отбора в окне формы списка выводятся только элементы, удовлетворяющие выбранному условию отбора.

Отбор данных в списке может быть установлен несколькими способами.


Закладка «Сортировка»

На закладке «Сортировка» устанавливается порядок представления отобранных данных.

В списке слева содержатся реквизиты, по которым будет осуществляться сортировка. Направление сортировки (по возрастанию или убыванию) задается кнопкой с двумя стрелками.

Реквизиты переносятся из правого списка.

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

5.7. Использование элементов справочника

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

или клавиши F4 при вводе реквизита типа «справочник».


Открытое в режиме выбора окно справочника может иметь несколько другой вид, нежели когда он открыт для просмотра и редактирования. Могут иметь место иной состав и расположение колонок справочника, как правило, отсутствует дерево групп, и так далее.

Несмотря на то, что форма для выбора предназначена в основном для выбора требуемого элемента справочника, в этой форме имеется возможность выполнять те же действия, что и в режиме просмотра и редактирования – добавлять в справочник новые элементы, редактировать реквизиты существующих элементов, переносить элементы в другие группы (если в окне есть дерево групп), и тому подобное. Например, при заполнении документа «Счет на оплату» новому покупателю, справочник «Контрагенты», открытый в режиме выбора, не будет содержать нужной организации, но ее можно будет добавить в справочник непосредственно в режиме выбора, а после записи в справочник – выбрать в документ. Если же счет выписывается на уже имеющегося в базе покупателя, но в открытом для выбора справочнике «Контрагенты» в названии или других реквизитах контрагента обнаружена ошибка, ее можно исправить непосредственно в режиме выбора, а затем выбрать в документ уже исправленное значение.

Выбор элемента из справочника, открытого для выбора, осуществляется следующим образом:

Необходимо установить курсор в строку с нужным элементом

Нажать клавишу ENTER или кнопку выбора элемента

панели инструментов справочника (если она предусмотрена при создании конфигурации).


Для того, чтобы очистить значение поля, заполненного выбором из справочника, следует:

Установить курсор в поле, необходимое очистить

Нажать сочетание клавиш SHIFT+F4 или выбрать команду меню «Правка Очистить» .

5.8. Справочник «Контрагенты»

Контрагент – это общее понятие, куда включены поставщики и покупатели, организации и частные лица.

В качестве контрагента может выступать организация, имеющая несколько собственных юридических лиц (холдинг). В этом случае в справочник «Контрагенты» заносится головная организация холдинга, а также все юридические лица, входящие в состав холдинга. Для всех контрагентов, входящих в состав холдинга, устанавливается флаг «Входит в холдинг» и указывается головной контрагент – головная организация холдинга. Для головного контрагента флаг «Входит в холдинг» не устанавливается.

Контрагенты могут быть сгруппированы по группам классификатора справочника, например, «Поставщики», «Покупатели» и «Реализаторы» . Справочник контрагентов имеет неограниченное количество уровней вложенности.

На закладке «Общие» следует указать:



? Юр./физ лицо – статус контрагента.

? Группа контрагентов – принадлежность контрагента группе.

? ИНН – идентификационный номер контрагента, для отражения в печатных формах документации

? Входит в холдинг – признак того, что контрагент входит в состав холдинга и для него требуется указать головного контрагента

? Головной контрагент – головная организация холдинга

Для юридического лица:

? Полное наименование - наименование контрагента для отражения в печатных формах документации, в реквизит наименование надо написать наименование так, чтобы его было легко найти с помощью быстрого поиска. Например: Федоров ЧП – это наименование, а ЧП «Федоров свидетельство 333» – полное наименование.

? КПП - код постановки на учет, для отражения в печатных формах документов

? Код по ОКПО

Для физического лица:

? ФИО – фамилия, имя и отчество

? Документ – документ, удостоверяющий личность физического лица.


На закладке «Контакты» :

В таблице «Адреса и телефоны» представлена контактная информация контрагента. Отображаются как заполненные виды контактной информации для данного контрагента, так и те, которые не заполнены, но введены в справочник «Виды контактной информации» для объектов типа «Контрагент». Для каждого вида контактной информации можно посмотреть историю его изменения, кликнув по кнопке «История» командной панели таблицы.

В таблице «Контактные лица» отображаются контактные лица контрагентов. Список контактных лиц можно редактировать.



Закладка «Счета и договоры» :

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

Жирным шрифтом отмечаются основной договор и расчетный счет, которые можно изменить соответствующими кнопками командных панелей «Установить основным».


5.9. Справочник «Номенклатура»

Справочник «Номенклатура» предназначен для хранения информации о товарах, комплектах, наборах, продукции, возвратной таре, материалах, услугах, объектах строительства, оборудовании. Жесткого деления на такие категории нет, выделяются лишь услуги и наборы. Категории того, что это возвратная тара, материалы, продукция определяются в момент поступления номенклатуры на предприятие.

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


? Краткое наименование. Используется для выбора и быстрого поиска номенклатуры из списка.

? Полное наименование . Используется, например, для вывода в печатные формы документов. Например: Йоргут «Bio двойная польза» клубника шиповник 480 г – это полное наименование, Bio 2 польза, клубн.шип.480 йогурт – наименование для быстрого поиска.

? Группа номенклатуры . Ссылка на группу справочника «Номенклатура», к которой принадлежит элемент в том случае, если в справочнике задана иерархическая структура. При ручном изменении родителя происходит переброска элемента из одной группы в другую.

? Вид номенклатуры . Указатель для включения складского учета.

? Единица измерения . Каждая позиция номенклатуры характеризуется базовой единицей измерения. Она выбирается из справочника «Классификатор единиц измерения».

? ГТД, Страна происхождения, Ставка НДС . Реквизиты, значение которых будет использоваться в системе в качестве значения по умолчанию при оформлении, например, счетов-фактур.

У справочника «Номенклатура» есть подчиненные справочники, которые открываются по кнопке «Перейти» в меню справочника:

Справочник «Назначения использования» – предназначен для указания назначений использования переданной в эксплуатацию специальной одежды, специальной оснастки и инвентаря.

Справочник «Спецификации номенклатуры» – предназначен для хранения спецификаций – состава изделий. В спецификации можно указать несколько наименований продукции (выход спецификации) и список материалов, необходимых для изготовления указанного выхода.

5.10. Справочник «Склады (места хранения)»

Справочник «Склады (места хранения)» предназначен для ведения списка мест хранения товаров.

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



Элементы справочника «Склады (места хранения)» используются практически во всех документах, регистрирующих движение товаров, и определяют место хранения, по которому фактически совершено то или иное движение.

Партионный учет может вестись в разрезе складов или по предприятию в целом.

Способ ведения партионного учета определяется в настройках параметров учета.

В конфигурации разделяются оптовые, розничные склады и неавтоматизированные торговые точки.

Для каждого склада (розничного, оптового и неавтоматизированной торговой точки) может быть задан тип цен, по которым будет осуществляться продажа в розницу («Тип розничных цен «). Тип розничных цен используется для автоматического заполнения цен в документах, осуществляемых продажу товаров в розницу. При изменении розничных цен производится автоматический пересчет остатков товаров по новым розничным ценам.

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

В справочник «Склады (места хранения)» может быть введено любое количество складов. Информация хотя бы об одном складе должна присутствовать обязательно.

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

5.11. Справочник «Банки»

В справочник «Банки» заносятся сведения о банках, в которых имеются расчетные счета как у самой компании, так и у контрагентов.

В данный справочник заносится информация о наименовании банка, в котором открыт расчетный счет компании или контрагента, БИК, корреспондентский счет, а также данные о местонахождении банка, телефоны для связи с работниками банка, индекс и почтовый адрес банка.

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



Справочник можно заполнить либо вручную (при небольшом количестве вводимых элементов), либо используя общероссийский классификатор банков. Нажав в окне списка банков кнопку «Добавить банки из классификатора РФ» , можно получить доступ к этому классификатору, а при первом нажатии – вызвать окно обновления классификатора банков с диска информационного сопровождения или с сайта «Росбизнесконсалтинг».

5.12. Справочник «Валюты»

Данный справочник используется во всех видах учета (бухгалтерском и налоговом).

В справочнике валют изначально имеются две валюты: российский рубль и доллар США. По умолчанию в качестве валюты регламентированного учета (базовой валюты) в конфигурации установлен российский рубль. Для того чтобы начать работать с конфигурацией, необходимо ввести текущий курс доллара по отношению к рублю.

Информация о курсе и кратности валюты хранятся в регистре сведений. По умолчанию в списке указываются значения, установленные на рабочую дату («Сервис – Параметры – Рабочая дата» ). Эта дата показывается в списке валют в поле «Дата курса». В любой момент времени пользователь может изменить дату и посмотреть значение курса валют на любую интересующую его дату.

Динамику изменения курса можно посмотреть, открыв форму элемента валюты для любой валюты в списке.

С помощью стандартных клавиш сортировки и отбора можно отсортировать список курсов валют или установить период отображения истории курсов валют.

Новую валюту можно добавить в справочник из общероссийского классификатора валют. Для этого в списке валют имеется специальная кнопка «Подбор из ОКВ» .


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

Новую валюту можно ввести и путем добавления информации в справочник «Валюты» . Информация о новой валюте вводится в режиме диалога. При вводе новой валюты заполняются реквизиты Курс и Кратность.


Реквизиты «Курс» и «Кратность» взаимосвязаны, смысл их использования следующий. Если кратность задана равной единице, то в поле «Курс» вводится количество рублей, соответствующее единице данной валюты (то есть, курс валюты – в привычном понимании). Если курс данной валюты по отношению к рублю очень низкий (точность составляет меньше 4 знаков дробной части), в поле «Кратность» следует указать количество единиц валюты, принятое к котированию (котировочная единица валюты), а в поле «Курс» – сумму в рублях, соответствующую этому количеству единиц валюты.


Например. Курс итальянской лиры составляет 3,4756 рубля за 1000 лир. Тогда в поле «Кратность» указываем 1000 (котировочная единица итальянской лиры), а в поле «Курс» 3,4756.


Для того чтобы в формах печати правильно формировалось наименование валюты прописью, необходимо задать параметры прописи валюты.

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


Например. Если установлено количество разрядов 1 знак, то сумма по документу будет отображена, как 150,2 евро, а если 2 знака, то – 150,20 евро.


Установка текущего курса и изменение истории курса валюты производится в регистре сведений «Курсы валют». Для изменения данных по истории курса валюты необходимо установить курсор в справочнике валют на строку с нужной валютой и открыть форму элемента валюты.

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

Курсы валют можно не только редактировать вручную, но и заполнять автоматически с помощью С помощью данной обработки можно произвести загрузку актуальных курсов валют за определенный период времени. Обработка вызывается из справочника «Валюты» при нажатии на кнопку «Загрузить курсы».

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



С помощью кнопки «Подбор» можно подобрать те валюты из справочника «Валюты» , по которым необходимо загружать курсы.

С помощью кнопки «Заполнить» можно заполнить список валют всеми валютами, которые зарегистрированы в справочнике «Валюты».

Загрузка курсов производится при нажатии на кнопку «Загрузить». После успешной загрузки информация о курсах валют автоматически записывается в регистр сведения для каждой валюты.

Кнопка «Очистить» очищает список валют и их курсов.

5.13. Справочник «Основные средства»

Справочник «Основные средства» предназначен в первую очередь для хранения наиболее общей информации об объектах основных средств, которая характеризует сами объекты и не зависит от того, какой организации принадлежит объект, в каком он состоянии находится в тот или иной момент времени и т.д.

Справочник предназначен для ведения аналитического учета по отдельным объектам на счетах:

– 01 «Основные средства»;

– 02 «Амортизация основных средств»;

– 03 «Доходные вложения в материальные ценности»;

– 83.1 «Прирост стоимости имущества по переоценке»;

– 98.2 «Безвозмездные поступления (ОС)»

– 001 «Арендованные основные средства»;

– 010 «Износ основных средств»;

– 011 «Основные средства, сданные в аренду»;

К основным сведениям, которые следует указать в справочнике, относятся:

? группа ОС

? полное наименование

? изготовитель

? заводской номер

? номер паспорта

? дата выпуска

? ОКОФ

? группа учета ОС – следует выбрать категорию, к которой относится данное основное средство. В программе основные средства классифицированы по следующим группам:

v Сооружения;

v Передаточные устройства;

v Машины и оборудование;

v Транспортные средства;

v Инструмент;

v Инвентарь;

v Рабочий скот;

v Продуктивный скот;

v Многолетние насаждения;

v Капитальные затраты по улучшению земель;

v Земельные участки;

v Объекты природопользования;

v Прочие основные фонды.

? Амортизационная группа ОС – следует выбрать категорию, к которой относится данное основное средство в. В программе амортизационные группы основных средств классифицированы по следующим группам:

v Первая группа (от 1 года до 2 лет включительно)

v Вторая группа (свыше 2 лет до 3 лет включительно)

v Третья группа (свыше 3 лет до 5 лет включительно)

v Четвертая группа (свыше 5 лет до 7 лет включительно)

v Пятая группа (свыше 7 лет до 10 лет включительно)

v Шестая группа (свыше 10 лет до 15 лет включительно)

v Седьмая группа (свыше 15 лет до 20 лет включительно)

v Восьмая группа (свыше 20 лет до 25 лет включительно)

v Девятая группа (свыше 25 лет до 30 лет включительно)

v Десятая группа (свыше 30 лет)

v Отдельная группа (п.1, ст.322 НК РФ)

? Подлежит амортизации – определяет, должна ли для данного объекта рассчитываться амортизация. Если флажок «Подлежит амортизации» установлен, то начисление амортизации производится с кредита счета 02 в дебет счета затрат. Если флажок не установлен, то начисление амортизации не производится, а износ, рассчитанный по нормам, один раз в конце года относится в дебет счета 010.

? Автотранспорт – признак принадлежности к автотранспорту

Справочники - в программе «1С: Предприятие» справочники служат для: хранения условно-постоянной информации, поддержки внутрифирменных или общих классификаторов, формирования списков возможных значений субконто, (то есть для организации аналитического учета). Термин «субконто» введен для обозначения набора зна­чений, используемых для ведения аналитического учета по бухгал­терским счетам. В качестве субконто обычно выступают объекты, по которым ведется аналитический учет на предприятии: основные средства, организации, товары и т. д. Вид субконто определяет сово­купность объектов конкретного типа, которые используются для ве­дения аналитического учет.

Использование справочников позволяет исключить неоднознач­ность при заполнении тех или иных реквизитов документов или дру­гих справочников. Например, если в счете требуется вводить наиме­нование организации-клиента, выбор элемента из справочника клиентов позволит избежать ошибочного ввода наименования раз­ными конечными пользователями (продавцами). Если это не запрещено в конкретной конфигурации (для кон­кретного пользователя), справочник может редактироваться в про­цессе работы - могут вводиться новые записи, редактироваться или удаляться существующие.

Работа со справочниками может осуществляться в двух режимах: режим «просмотра и редактирования» и режим «выбора элемента спра­вочника».

В режиме просмотра и редактированияформа справочника от­крывается при помощи кнопки - « Изменить текущий элемент (F2 ) » .




В режиме выборасправочник открывается только при вводе зна­чения субконто, константы, реквизита документа или реквизита дру­гого справочника нажатием кнопки - « Выбор» или клавиши « F4». В конфигурации могут быть определены различные формы для выбора элементов справочника.

К примеру, мы решили выбрать « Страну»:




Вызов справочника осуществляется различными способами в зависимости от конфигурации задачи. Самый простой вариант вызова через системное меню: « Операции» - « Справочник» . Вкладка « Операции» может быть доступна только при полном « Интерфейсе» ;

Программа выдаст список справочников, существующих в данной конфигурации.


Рассмотрим в данном примере, справочник « Номенклатура».




Панель редактирования :

- « Добавить (Ins - Insert ) » ;

- « Добавить группу (Ctrl+F9 ) » ;

- « Добавить копированием (F9 ) » ;

- « Изменить текущий элемент (F2 ) » ;

- « Установить пометку удаления (Del - Delete ) ».

Внешний вид формы справочника пол­ностью определяется в процессе настройки конфигурации задачи. Однако существует несколько общих элементов, которые имеет каж­дая форма справочника: заголовок окна справочника; табличное поле справочника - список элементов справочника в форме таблицы.

В заголовке окна справочника выдается название справочника. Название справочника задается в процессе настройки конфигурации задачи и может быть изменено только в сеансе кон­фигурирования задачи. Табличное поле справочника содержит колонки. Их состав и структура определяется конкретной конфигурацией. Минимальное количество колонок - две: код и наименование элемента справочника. Если справочник содержит много элементов (строк) и имеет мно­го колонок, то в таблице справочника выводится только определенная его часть, а внизу и справа появляются линейки прокрутки.




Справочник имеет панель элементов, необходимую для быстрого доступа к наиболее часто исполь­зуемым командам работы со справочником. Если при настройке параметров интерфейса не задано иное, то обычно панель инструментов располагается в верхней части окна справочника под строкой заголовка окна. При работе со справочником используется «активная ячейка». Такая ячейка в таблице справочника всегда вы­делена инверсным цветом. Иногда она называется «текущей» ячейкой.

С элементами справочника можно производить следующие действия, которые осуществляются при выборе соответствующего пункта меню «Действия »или нажатия управляющей кнопки на панели управления в списке или в форме элемента справочника:

  • «Перечитать» - данные в элементе справочника будут перезаписаны в соответствии с последними изменениями в информационной базе. Данное действие рекомендуется использовать при сетевой работе, когда нескольким пользователям разрешено редактировать один и тот же элемент справочника.

  • «Скопировать» - при выполнении этого действия будет создан новый элемент справочника путем копирования текущего элемента справочника.

  • «Перейти» - при выполнении этого действия будет открыто меню, в котором представлен список дополнительных сведений, которые могут быть получены по объекту справочника.

Строки в справочнике могут быть двух типов: элементы справоч­ника и наименования группы справочника .




Для справочника, у которого установлена иерархия элементов, каждый элемент может представлять собой группу. Кроме того, как элементы, так и группы могут быть помечены к удалению, что отражается «за­черкнутыми» значкамив крайней левой колонке справочника.

Для просмотра информации в « группах/элементах» используется двойной щелчок мыши по « группе / элементу».

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

Порядок сортировки можно за­дать с помощью кнопки «Действия», и выбора из раскрывающегося списка действий пункта «Сортировка».




Ввод в справочник нового элемента осуществляется с помощью клавиши « INS - Insert » или с помощью меню « Действия». После того, как откроется форма ввода нового элемента справочника, необходимо заполнить все графы и сохранить их, нажав на кнопку « ОК». Заполнение каждой колонки завершается нажатием клавиши « Enter».




Редактирование данных справочника осуществляется с помощью клавиши «F2» или команды «Действия» - «Изменить». Для редактирования необходимо установить курсор на тот элемент, который подлежит изменению!



Для удаления данных в системе «1С: Предприятие» существует два режима: непосредственное удаление и пометка на удаление данных.

Для пометки на удаление или удаления элемента справочника необходимо поместить курсор на строку с удаляемым элементом и выполнить одно из следующих действий: нажать клавишу Del ete , нажать мышью кнопку на панели инструментов окна справочника, выбрать пункт «Удалить» («Пометить на удаление») в меню «Дей­ствия», расположенного на панели справочника. Программа выдаст запрос об удалении или пометке на удаление. После ответа «Да» на запрос об удалении или пометке на удаление элемент справочника будет удален (помечен на удаление).




Если элемент помечается на удаление, это будет отражено в изменении условного значка в крайней левой графе таблицы. Для удаления объектов, помеченных на удаление, необходимо в главном меню выбрать пункт «Операции» - «Удаление помеченных объектов».