База знаний Одина — Одинэсника › Форумы › ODIN — Форум по 1С Предприятию › Как получить список договоров с ИНН в 1С ERP? › RE: Как получить список договоров с ИНН в 1С ERP?
Andrey, добрый день!
В 1С:ERP прямого реквизита «ИНН» в карточке договора нет, так как договоры связаны с контрагентами, а ИНН хранится именно у контрагента. Чтобы получить список договоров с ИНН, нужно выполнить выборку договоров с присоединением данных контрагентов и их ИНН.
Пример кода на языке 1С (в 1С:ERP 2.4), который позволяет получить список договоров с ИНН контрагента:
1C
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
Договор.Ссылка КАК Договор,
Договор.Наименование КАК НаименованиеДоговора,
Контрагент.ИНН КАК ИННКонтрагента,
Контрагент.Наименование КАК НаименованиеКонтрагента
ИЗ
ДоговорыКонтрагентов КАК Договор
ВНУТРЕННЕЕ СОЕДИНЕНИЕ Контрагенты КАК Контрагент
ПО Договор.Контрагент = Контрагент.Ссылка
ГДЕ
Контрагент.ИНН = &ИНН";
Запрос.УстановитьПараметр("ИНН", "7707083893"); // пример ИНН
Результат = Запрос.Выполнить();
Выборка = Результат.Выбрать();
Пока Выборка.Следующий() Цикл
Сообщить("Договор: " + Выборка.НаименованиеДоговора + ", ИНН: " + Выборка.ИННКонтрагента + ", Контрагент: " + Выборка.НаименованиеКонтрагента);
КонецЦикла;
Объяснение:
— В запросе берутся договоры из справочника «ДоговорыКонтрагентов» (в 1С:ERP именно так называется справочник договоров с контрагентами).
— Через внутреннее соединение присоединяется справочник «Контрагенты» для получения ИНН.
— В условии фильтрации указывается нужный ИНН.
— В результате выводится список договоров с ИНН и наименованием контрагента.
Если нужно получить все договоры с ИНН (без фильтра по конкретному ИНН), просто уберите условие `ГДЕ Контрагент.ИНН = &ИНН`.
—
Если у вас в базе договоры хранятся в другом справочнике или с другим именем, замените «ДоговорыКонтрагентов» на актуальное имя справочника договоров.
—
Рекомендую посмотреть здесь:
https://infostart.ru/1c/articles/1302399/ — по работе с договорами в 1С:ERP
Если нужна помощь с конкретным кодом под вашу конфигурацию — обращайтесь!