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

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

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

В качестве примера рассмотрим алгоритм формирования проводок документом "Списание материалов", создание которого приводится в книге "Введение в конфигурирование 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");
	Операция.Кредит.Материалы=Материалы;
	Операция.Кредит.МестаХранения=МестаХранения;
	Операция.Количество=Количество;
	Операция.Сумма=Сумма;
Иначе
	Сообщить("Искомый элемент не найден!");
КонецЕсли;

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

С 1 мая в России переводы между своими счетами в разных банках станут бесплатными

Сейчас на переводы себе и другим людям действует общий лимит СБП — 100 тысяч рублей в месяц.

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

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

«Тинькофф Инвестиции»: 3 мая завершается прием заявок на обмен заблокированных иностранных активов

«Тинькофф Инвестиции» опубликовали инструкцию по обмену заблокированных иностранных активов для своих клиентов в Telegram-канале.

С 29 апреля — новая форма уведомления в налоговую о невозможности подачи документов в срок

ФНС утвердила новые форму и формат уведомления в налоговую о невозможности представления в установленные сроки документов и информации в электронной форме.

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

🔨 Ударные скидки на «Клерке»! Курсы по учету на маркетплейсах, ВЭД, зарплате, финмоделированию, УСН и бухгалтерии с нуля за 3 690 рублей!

На горизонте сразу 4 праздничных дня, потом пара рабочих и снова 2 свободных! Используйте это время с умом — за череду праздников вы сможете пройти весь месячный курс «Клерка» и стать специалистом на еще одном участке, повысить квалификацию в своей сфере или освоить профессию бухгалтера с нуля! До 2 мая популярные онлайн-курсы за 3 690 рублей!

🔨 Ударные скидки на «Клерке»! Курсы по учету на маркетплейсах, ВЭД, зарплате, финмоделированию, УСН и бухгалтерии с нуля за 3 690 рублей!
5
Бухгалтеры

💪 Ударные скидки на «Клерке»! Курсы по учету на маркетплейсах, ВЭД, зарплате, финмоделированию, УСН и бухгалтерии с нуля за 3 690 рублей!

Проведите выходные с пользой! За череду праздников вы сможете пройти весь месячный курс «Клерка» и стать специалистом на еще одном участке, повысить квалификацию в своей сфере или освоить профессию бухгалтера с нуля! До 2 мая популярные онлайн-курсы за 3 690 рублей!

Нет тела — нет дела! Или нет документа — нет уголовного дела!

Мнение адвоката о защите по экономическим преступлениям и спорам.

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

Туристы получили больше гарантий

С 1 мая 2024 года существенно выросла сумма финансового обеспечения ответственности туроператоров перед туристами.

Общество

Словари русского языка включат в единый цифровой ресурс

Внесли изменения в федеральный закон «О государственном языке Российской Федерации».

Инвестиции

Шашлыки лучше IPO МТС Банка, укрепление рубля, отпуск у индекса, море дивидендов, новые бонды и другие новости. Воскресный инвестдайджест

Можно бесконечно смотреть на огонь, воду и как укрепляется рубль. А ещё вдыхать аромат шашлыка на майских праздниках. Как раз к первомаю рубль укрепился, индекс уже собрал чемоданы и умотал на отдых, халвинг не помог биткоину. Дивидендами просто заваливают, прошло IPO МТС Банка, вышло много новых выпусков облигаций.

Шашлыки лучше IPO МТС Банка, укрепление рубля, отпуск у индекса, море дивидендов, новые бонды и другие новости. Воскресный инвестдайджест

Фейковых приложений банков стало на 25% больше: причина и как обезопаситься

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

Общество

Расширят ответственность за участие в деятельности нежелательных организаций

За участие в деятельности любых нежелательных организаций Госдума хочет ввести административную и уголовную ответственность.

Законопроекты

Тех, кто игнорирует федеральные законы, хотят отстранять от должности

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

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

Ура! Выходные! Главное в майские не забудьте про уплату налогов. Праздничный выпуск 🎈«Ночной бухгалтер» № 1674

За дачными и диванными выходными легко пропустить очередной срок уплаты. Кто уже заплатил все налоги — тот молодец, остальным — наши напоминалки и подсказки в помощь (мы новые разъяснения сделали по фиксвзносам за 2023 год, которые заплачены только сейчас). Ну и без предвыходных позитивов не обошлось.

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

Банкам будет проще получить разрешение на вывоз валюты

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

Онлайн-кассы

Как в 2024 году будут идти проверки ККТ

В 2024 году в рамках проверок ККТ налоговики будут проводить профилактические и внеплановые контрольные мероприятия.

Трудовое право

Предложено разрешить больше работать сверхурочно, чем сейчас разрешает ТК

В настоящее время Трудовой кодекс разрешает переработки по 4 часа в течение двух дней подряд, то есть работать по 12 часов в день.

Обзоры новостей

⚡️ Итоги дня: в Питере открылся сезон фонтанов, в Америке поймали аллигатора голыми руками, а врач объяснил, кому нельзя есть шашлык

Подготовили обзор главных событий дня — 27 апреля 2024 года. Все самое интересное, что писали и обсуждали в сети, в одной подборке.

НДФЛ

2 мая заканчивается налоговая декларационная кампания

До этого момента физлицам, ИП, нотариусам, адвокатам и частнопрактикующим специалистам нужно подать в ФНС декларации о доходах по форме 3-НДФЛ за 2023 год.

Бухгалтеры

Обзор сервиса «Клерк.Консультации»: как задать вопрос и на какие темы отвечают эксперты

Есть вопросы? Задайте их экспертам «Клерка»! Вы можете задать 1, 10 или 30 вопросов про налоги, учет, 1С, кадры, работу на маркетплейсах или праву, и уже через несколько часов получите развернутый ответ от наших специалистов. Мы поможем вам быстро решить проблему любой сложности.

Иллюстрация: создано с помощью ИИ OpenAI © Вера Ревина/Клерк.ру

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

ВЭД

Половина платежей из России в Китай проходит через посредников

Банки КНР опасаются работать с российскими предпринимателями из-за рисков попасть под вторичные санкции США. В итоге бизнес отправляет платежи через посредников, которые просят несколько тысяч долларов.