Как добавить использование групп в справочнике 1c. Перебор элементов справочника

04.02.2024 Интернет-магазины

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

Сегодня мы рассмотрим особенности одного из видов объектов 1С Предприятие – справочников.

Справочники 1С 8.2 предназначены для хранения информации, которая будет использована в других объектах 1С – документах, отчетах. Таким образом учет в 1С ведется в разрезе (по) справочников.

Информация, которая хранится в справочниках называют Нормативно-справочной информацией.

Справочники 1С 8.2 делятся на собственно Справочники и Классификаторы. Под Классификаторами (в разговорах программистов 1С) понимаются справочники, состав которых утвержден государством (а таких куча, например Классификатор стран мира или Классификатор единиц измерения).

Тем не менее это не мешает во множестве компаний такие классификаторы исправлять и дополнять как хочется.

Зачем нужны Справочники 1С

Яркий пример можно сделать на примере товара. Есть некий товар, например «Лопата». Движения этого товара (покупка, поступление на склад, продажа) оформляются определенными документами.

В «жизни» — это бумажные документы, т.к. некие бланки, при заполнении которых каждый просто пишет от руки — Лопата, 20 штук.

В электронной системе, 1С – это электронные документы, где также есть поле товара. Но если каждый оператор будет писать наименование товара от руки, то могут быть опечатки. И тогда купили мы «Лопату», а продали «Лапату». Дополнительно – минус в том, что нам придется это писать множество раз.

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

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

Где расположены Справочники 1С 8.2

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

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

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

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

Как выглядят Справочники 1С

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

Нажав на группу мы проваливаемся в нее. Нажав на элемент – открывается форма элемента справочника. Она состоит из группы полей этого справочника, который предполагается заполнять.

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

Поле Код, которое заполняется обычно автоматически (номера по порядку) обычно по-умолчанию закрыты от редактирования пользователем. Изменить можно вот таким способом (конечно если это разрешено правами).

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

Настройка и разработка Справочников 1С

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

Основные особенности Справочников 1С, по закладкам:

Справочник "Организации" в программном решении "Управление производственным предприятием" определяет, по какому количеству организаций Вы собираетесь вести учет в текущей базе данных. Таким образом, в данном справочнике должна быть как минимум одна запись !

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

  • Пользователи иногда ошибаются при вводе данных, кто-то может указать "не свою" организацию (решается администрированием доступа к данным), кто-то может не указать ее вообще
  • База данных может быть изъята контролирующими органами, в результате чего им станет известна "лишняя" информация
  • Сбой базы данных автоматически "выводит из строя" все ваши предприятия

Впрочем, решать Вам.

Обратите внимание - справочник "Организации" хранит не список контрагентов, а только Ваши собственные организации, которые Вы контролируете (управляете ими). Для контрагентов предусмотрен другой справочник - "Контрагенты".

Ввод данных по Вашей организации

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

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

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

"Юр./Физ.лицо" - назначение поля вполне очевидно. Примите во внимание, что неправильное заполнение данного реквизита приведет к неправильному начислению заработной платы.

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

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

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

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

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

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

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

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

Особенности справочников 1С в Бухгалтерии 8

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

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

2) Во всех справочниках 1С можно производить сортировку по колонкам и поиск. Сортировка записей возможна только по установленным в конфигураторе колонкам. Практически всегда – это код и наименование записи и возможны дополнительные колонки.

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

Для поиска нужной записи можно использовать комбинацию клавиш Ctrl — F , меню программы, контекстное меню или панели инструментов интерфейса. При поиске важно понимать, что программа просто ищет строку введенных символов, не более и не менее. Если искомое наименование длинное, то можно искать только ключевую часть искомой строки, чтобы не тратить время на длительный ввод строки поиска. Или точно не известно, что необходимо найти. В этом случае в сроке поиска так же вводится часть искомой строки, а программа 1С будет последовательно предлагать все вхождения поиска. Для продолжения начатого поиска следует последовательно нажимать F3 .

Пример: если в поиске адреса указать город Москва, то это слово будет найдено в именительном падеже в соответствии с введенной строкой символов. А если указать «москв», то можно будет последовательно найти все адреса, в которых есть вхождение указанной подстроки поиска: Москва, Москву, москвич и т.д.

3) Многие справочники 1С связаны с другими объектами учета на логическом уровне. Например, справочник «Контрагенты» связан со справочником «Договоры контрагентов», а справочник — с регистром сведений «Цены номенклатуры». Таких взаимных связей может быть достаточно много.

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

Типовая конфигурация 1С Бухгалтерия 8.2 имеет больше сотни справочников разной степени важности. Нет большого смысла изучать их все, достаточно понять общие принципы работы со справочниками и работать с ними по мере необходимости. Cправочники в 1с, как правило, имеют очевидные названия, по которым нетрудно догадаться об их назначении.

Наиболее важные справочники в 1С Бухгалтерии 8 описаны в разделе

На странице можно скачать полный видеоурок по работе со справочниками в 1С.

Основное назначение.

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

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

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

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

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

Типы данных.

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

Виды справочников.

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

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

Табличная часть.

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

Примеры работы со справочниками в 1С.

СпрСотрудники = Справочники.Сотрудники ; // или
СпрДолжности = Справочники [ «Должности» ];

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

НовЭл = Справочники . Сотрудники . СоздатьЭлемент ();
НовЭл. Наименование = «Петров Петр Петрович» ;
НовЭл. Оклад = 5000 ;
НовЭл. Записать();

//Создание и запись новой группы справочника

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

ПустаяСсылка = Справочники. Валюты. ПустаяСсылка();
Если ПустаяСсылка. Пустая() Тогда
Сообщить(«Ссылка пустая.» );
КонецЕсли;

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

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

Если НайденныйСотр = Неопределено Тогда
//элемент не найден
Иначе
//элемент найден
КонецЕсли;

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

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

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

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

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

Выборка = Справочники. Сотрудники. Выбрать();
// начало перебора элементов справочника в цикле

Сообщить(«Сотрудник « + Выборка. Наименование);
КонецЦикла;

//перебор внутри группы (при иерархической структуре), группа в 1С является родителем для элементов внутри

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

//выборка элементов справочника, подчиненного другому справочнику

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

// Как внести изменения в элемент справочника по ссылке

ОбъектСправочника = СсылкаНаЭлемент. ПолучитьОбъект();
ОбъектСправочника. Комментарий = «Контрагент изменен.» ;
ОбъектСправочника. Записать();

// Как узнать принадлежность элемента справочника группе с учетом уровней иерархии

Если СсылкаНаЭлемент. ПринадлежитЭлементу(СсылкаНаГруппу) Тогда
Сообщить(СсылкаНаЭлемент. Наименование + » принадлежит « + СсылкаНаГруппу. Наименование);
КонецЕсли;

// Как скопировать существующий элемент справочника

Копия = СсылкаНаЭлемент. Скопировать();
Копия. Наименование = Копия. Наименование + » КОПИЯ» ;
Копия. УстановитьНовыйКод();
Копия. Записать();

// Как выяснить уровень вложенности элемента справочника

// Примеры работы со справочниками в 1С с помощью языка запросов
// Как обойти все элементы справочника

Запрос = Новый Запрос;
Запрос. Текст =
«ВЫБРАТЬ
| Контрагенты.Ссылка
| ИЗ
| Справочник.Контрагенты КАК Контрагенты»;

СсылкаНаГруппу = Справочники. Контрагенты. ПустаяСсылка();
СсылкаНаЭлемент = Справочники. Контрагенты. ПустаяСсылка();


Если ВыборкаДетальныеЗаписи. Ссылка. ЭтоГруппа Тогда
СсылкаНаГруппу = ВыборкаДетальныеЗаписи. Ссылка;
Иначе
СсылкаНаЭлемент = ВыборкаДетальныеЗаписи. Ссылка;
КонецЕсли;
КонецЦикла;

// Как отобрать элементы справочника по родителю (перечислим все элементы группы)

Запрос = Новый Запрос;
Запрос. Текст =
«ВЫБРАТЬ
| Контрагенты.Ссылка
| ИЗ
| Справочник.Контрагенты КАК Контрагенты
| ГДЕ
| Контрагенты.Родитель = &Родитель»;

Запрос. УстановитьПараметр(«Родитель» , СсылкаНаГруппу);

РезультатЗапроса = Запрос. Выполнить();

ВыборкаДетальныеЗаписи = РезультатЗапроса. Выбрать();
Сообщить(СсылкаНаГруппу. Наименование + «:» );
Пока ВыборкаДетальныеЗаписи. Следующий() Цикл
Сообщить
КонецЦикла;

// Как отобрать элементы справочника по владельцу (перечислим все договоры контрагента)

Запрос = Новый Запрос;
Запрос. Текст =
«ВЫБРАТЬ
| ДоговорыКонтрагентов.Ссылка
| ИЗ
| Справочник.ДоговорыКонтрагентов КАК ДоговорыКонтрагентов
| ГДЕ
| ДоговорыКонтрагентов.Владелец = &Владелец»;

Запрос. УстановитьПараметр(«Владелец», СсылкаНаЭлемент);

РезультатЗапроса = Запрос. Выполнить();

ВыборкаДетальныеЗаписи = РезультатЗапроса. Выбрать();
Сообщить(СсылкаНаЭлемент. Наименование + «:» );
Пока ВыборкаДетальныеЗаписи. Следующий() Цикл
Сообщить(» « + ВыборкаДетальныеЗаписи. Ссылка);
КонецЦикла;

// Как отобрать элементы справочника по коду, наименованию, реквизиту

Запрос = Новый Запрос;
Запрос. Текст =
«ВЫБРАТЬ
| Валюты.Ссылка
| ИЗ
| Справочник.Валюты КАК Валюты
| ГДЕ
| Валюты.Наименование = &Наименование И
| Валюты.Код = &Код И
| Валюты.НаименованиеПолное = &НаименованиеПолное»;

Запрос. УстановитьПараметр(«Наименование» , «руб.» );
Запрос. УстановитьПараметр(«Код» , «643» );
Запрос. УстановитьПараметр(«НаименованиеПолное» , «Российский рубль» );

РезультатЗапроса = Запрос. Выполнить();

ВыборкаДетальныеЗаписи = РезультатЗапроса. Выбрать();

Пока ВыборкаДетальныеЗаписи. Следующий() Цикл
Сообщить(ВыборкаДетальныеЗаписи. Ссылка);
КонецЦикла;