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

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

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

В качестве примера рассмотрим алгоритм формирования проводок документом "Списание материалов", создание которого приводится в книге "Введение в конфигурирование 1С Бухгалтерии 7.7"

В этом документе, оформляющем отпуск материалов для вспомогательного производства, формируются проводки по счету 23, на котором ведется аналитический учет в разрезе затрат вспомогательного производства Список затрат вспомогательного производства представляет собой справочник "Затраты"

Приведем фрагмент алгоритма проведения:

Операция.НоваяПроводка();
Операция.Дебет.Счет=СчетПоКоду("23");
Операция.Дебет.Затраты=Затраты;
Операция.Кредит.Счет=СчетПоКоду("10.1");
Операция.Кредит.Материалы=Материалы;
Операция.Кредит.МестаХранения=МестаХранения;
Операция.Количество=Количество;

В выделенной шрифтом строке алгоритма субконто дебета формируемой проводки заполняется значением реквизита "Затраты" документа "Списание материалов"

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

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

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

Эта строка должна располагаться выше строк формирования проводок:

Спр=СоздатьОбъект("Справочник.Затраты");
Операция.НоваяПроводка();
Операция.Дебет.Счет=СчетПоКоду("23");
Операция.Дебет.Затраты=Затраты;
Операция.Кредит.Счет=СчетПоКоду("10.1");
Операция.Кредит.Материалы=Материалы;
Операция.Кредит.МестаХранения=МестаХранения;
Операция.Количество=Количество;
Операция.Сумма=Сумма;

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

Для позиционирования в справочнике по заданному коду предназначен метод "НайтиПоКоду" Методу "НайтиПоКоду" достаточно указать единственный параметр - код элемента справочника Тогда, чтобы получить элемент справочника "Затраты", имеющий код "2", нужно выполнить следующие действия:

Спр=СоздатьОбъект("Справочник.Затраты");
Спр.НайтиПоКоду("2");
Операция.НоваяПроводка();
Операция.Дебет.Счет=СчетПоКоду("23");
Операция.Дебет.Затраты=Затраты;
Операция.Кредит.Счет=СчетПоКоду("10.1");
Операция.Кредит.Материалы=Материалы;
Операция.Кредит.МестаХранения=МестаХранения;
Операция.Количество=Количество;
Операция.Сумма=Сумма;

Метод "НайтиПоКоду" осуществляет только поиск объекта с указанным кодом. Для получения значения найденного элемента справочника после метода "НайтиПоКоду" обязательно нужно вызвать метод "ТекущийЭлемент".

Полученное значение справочника мы присваиваем субконто дебета проводки

Спр=СоздатьОбъект("Справочник.Затраты");
Спр.НайтиПоКоду("2");
Операция.НоваяПроводка();
Операция.Дебет.Счет=СчетПоКоду("23");
Операция. Дебет.Затраты=Спр.ТекуицшЭлеиент();
Операция.Кредит.Счет=СчетПоКоду("10.1");
Операция.Кредит.Материалы=Материалы;
Операция.Кредит.МестаХранения=МестаХранения;
Операция.Количество=Количество;
Операция.Сумма=Сумма;

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

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

Метод "НайтиПоКоду" в случае успешного поиска возвращает значение "1", а в случае неудачного поиска - "0". После вызова этого метода мы проверим результат поиска, и будем формировать проводки, только если элемент найден. Если же элемент с указанным кодом отсутствует, будем выводить на экран сообщение о том, что элемент не найден:

Спр=СоздатьОбъект("Справочник.Затраты");
Если Спр.НайтиПоКоду("2")=1 Тогда
	Операция.НоваяПроводка();
	Операция.Дебет.Счет=СчетПоКоду("23");
	Операция.Дебет.Затраты=Спр.ТекущийЭлемент();
	Операция.Кредит.Счет=СчетПоКоду("10.1");
	Операция.Кредит.Материалы=Материалы;
	Операция.Кредит.МестаХранения=МестаХранения;
	Операция.Количество=Количество;
	Операция.Сумма=Сумма;
Иначе
	Сообщить("Искомый элемент не найден!");
КонецЕсли;

Ещё раз: как продвигать свои посты на «Клерке»

Если вы видите это сообщение, значит продвижение работает.

Ещё раз: как продвигать свои посты на «Клерке»
10

Начать дискуссию

Вклады 18%, обвал рынка, рост налогов, дешёвый доллар, новые облигации, дивиденды и другие новости. Воскресный инвестдайджест

Есть что по жести? Ещё как есть! Разве что расчленёнки не хватает, так-то рынок акций и облигаций нормально приуныл. Но это пока был не обвал, а коррекция. Обвал точно ожидает нас всех впереди, но это не точно. Зато доллар всё ещё дешёвый, IPO проводятся, появляются новые облигации и дивиденды.

Вклады 18%, обвал рынка, рост налогов, дешёвый доллар, новые облигации, дивиденды и другие новости. Воскресный инвестдайджест

Курсы повышения
квалификации

22
Официальное удостоверение с занесением в госреестр Рособрнадзора

С 01 июля новая форма отчета о движении денег по зарубежным счетам

С 01 июля 2024 года изменится форма отчета о движении денег и иных финансовых активов по зарубежным счетам, которые готовят и подают юридические лица и ИП

В чем проблема прогрессивной налоговой системы в России?

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

Лучшие спикеры, новый каждый день

💥 Бодрящие скидки на курсы повышения квалификации и профессиональной переподготовки! Ведем запись на первый летний поток

Набираем первый летний поток-2024 на профкурсы. Успейте записаться до 3 июня, чтобы за лето повысить квалификацию и выйти на новый уровень знаний!

Календарь вебинаров для бухгалтера в июне 2024. Выбирайте и смотрите!

Будьте в курсе последних изменений в законодательстве! Выбирайте из 9 вебинаров интересные именно вам и записывайтесь. Забирайте в закладки календарь вебинаров для бухгалтера, которые пройдут в июне 2024. Подписчикам «Клерк.Премиум» — бесплатный доступ.

Календарь вебинаров для бухгалтера в июне 2024. Выбирайте и смотрите!
7
Инвестиции

Инвестиции в космические объекты пропишут в законе

Госдума приняла в первом чтении законопроект о государственно-частном партнерстве в сфере космической деятельности.

Опытом делятся эксперты-практики, без воды
Трудовое право

Чем грозит неявка сотрудника на медосмотр

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

Налог на прибыль

Все гранты на инновационное развитие освободили от налога

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

Предприятия за каждого сотрудника из другого региона получат 300 тысяч рублей

Государство выделит субсидии бизнесу, который работает над крупным проектом и привлекает сотрудников из других регионов. Размер поддержки составит 12 МРОТ.

За что заблокируют ваш счет? Что не нужно делать, чтобы «влететь» на блок

Сейчас в мире бизнеса идет война за темную и светлую сторону.

За что заблокируют ваш счет? Что не нужно делать, чтобы «влететь» на блок

Налоговые перспективы на 2025 год. Прогрессивная шкала НДФЛ

Какими будут налоговые ставки НДФЛ в 2025 году и можно ли этот налог оптимизировать.

🚚 Грузоперевозка в страну ЕАЭС может облагаться разным НДС

При сделках с контрагентами из стран ЕАЭС взимание косвенных налогов при работах, услугах идет в стране, территория которой признается местом реализации. При грузоперевозках место реализации – страна исполнителя.

Миникурсы, текстовые и видеоинструкции для бухгалтеров
МСФО

Внедрение азиатских МСФО на российский рынок

В данном докладе мы рассмотрим перспективы внедрения азиатских Международных стандартов финансовой отчетности (МСФО) на российский рынок.

Внедрение азиатских МСФО на российский рынок
1
Маркетплейсы

Цены на наушники на маркетплейсах оказались завышенными по сговору

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

💥 Бодрящие скидки на курсы повышения квалификации и профессиональной переподготовки! Ведем запись на первый летний поток обучения

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

💥 Бодрящие скидки на курсы повышения квалификации и профессиональной переподготовки! Ведем запись на первый летний поток обучения
2
Инвестиции

Итоги 35 месяцев инвестиций. 3,83 млн рублей

1 июня, значит пора защищать детей и подводить итоги мая! Ежемесячно я пишу отчёт о том, что произошло с моими инвестициями. Напоминаю: я начал копить на квартиру в Сочи в июле 2021. 35 месяцев позади. Погнали!

Итоги 35 месяцев инвестиций. 3,83 млн рублей

Горящие глаза, «ген предпринимательства» и Борис Мальцев 

Студенты из акселератора «БизнесКуб» КубГУ, мечтая о собственных стартапах и предпринимательских прорывах, направились на встречу с успешными бизнесменами.

Горящие глаза, 
«ген предпринимательства» и 
Борис Мальцев 
1
Бесплатно с УСН

Как в 2024 году уменьшать налоги по УСН и ПСН на страховые взносы: таблица для ИП и ООО

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

Как в 2024 году уменьшать налоги по УСН и ПСН на страховые взносы: таблица для ИП и ООО

О чем говорят бухгалтеры — топ 5 обсуждаемых тем на этой неделе. 👂«Ночной бухгалтер» № 1694

Говорили не только о реформах, обычные рабочие проблемы никуда не делись. Кто-то в Китай не может перевести деньги, у кого-то налог на УСН — выпади глаза, а у кого-то вообще счета заблокировали. Но всегда есть коллеги-спасители, которые и словом утешат, и делом помогут.

Иллюстрация: Вера Ревина / Клерк.ру

Интересные материалы

Валюта

Стартовал сезон скупки долларов

Интерес к валюте вырос в преддверии сезона отпусков, на спрос также повлияло укрепление рубля.

3