8.3 БП. Как программно вытащить основной договор контрагента?
Перестала работать обработка. Полез разбираться. В справочнике Контрагенты реквизит ОсновнойДоговор переименован в УдалитьОсновнойДоговор.
В справочнике ДоговорыКонтрагентов также нет соответствующего поля.
В конфигурации теперь можно отметить «Использовать как основной» произвольное количество договоров.
Не понятно и неудобно.
Поясните, пожалуйста, в чем логика и как теперь жить).
Как отметить договор программно «Основным», как выбрать основной договор?
1С:Предприятие 8.3 (8.3.7.1790)
Бухгалтерия предприятия, редакция 3.0 (3.0.43.29)
(2) Xershi, Контрагент=Справочники.Контрагенты.НайтиПоКоду(Код);
НайденныеСтроки = НовыйДокумент.Контрагент
.
НоваяСтрока = НовыйДокумент.РасшифровкаПлатежа.Добавить();
//НоваяСтрока.ДоговорКонтрагента = Контрагент.ОсновнойДоговорКонтрагента;
НоваяСтрока.ДоговорКонтрагента= РегистрыСведений.ОсновныеДоговорыКонтрагента.ПолучитьПервое(. а тут не соображу(((((;
(1) JLaikova, а так не сработает?
(13) config,
НоваяСтрока = НовыйДокумент.РасшифровкаПлатежа.Добавить();
ВидДоговора = Новый СписокЗначений;
ВидДоговора.Добавить(Перечисления.ВидыДоговоровКонтрагентов.СПокупателем);
ЗаполнениеДокументов.ПриИзмененииЗначенияКонтрагента(НовыйДокумент,ВидДоговора);
ДОговорКонтрагента = ВидДоговора;
//НоваяСтрока.ДоговорКонтрагента = Контрагент.ОсновнойДоговорКонтрагента;
НоваяСтрока.ДоговорКонтрагента = ВидДоговора;
(16) JLaikova, ну там типовая функция есть, которая заполняет именно в ТЧ Расшифровка платежа
МассивВидовДоговоров = Новый Массив;
МассивВидовДоговоров.Добавить(ДоговорКонтрагента);
НайденДОговор = Ложь;
РаботаСДоговорамиКонтрагентовБП.УстановитьДоговорКонтрагента(НовыйДокумент.ДоговорКонтрагента, НовыйДокумент.Контрагент, НовыйДокумент.Организация, МассивВидовДоговоров);
Если НовыйДокумент.ДоговорКонтрагента <> Справочники.ДоговорыКонтрагентов.ПустаяСсылка() Тогда
НайденДоговор = Истина;
КонецЕсли;
//НоваяСтрока.ДоговорКонтрагента = Контрагент.ОсновнойДоговорКонтрагента;
Если НайденДоговор=Истина Тогда
НоваяСтрока.ДоговорКонтрагента=НовыйДокумент.ДоговорКонтрагента;
//Иначе
// НоваяСтрока.ДоговорКонтрагента= НовДок.ДоговорКонтрагента.ВидДоговора.Пустая();
КонецЕсли;
Вот может кому пригодится. Решение нашлось! Всем спасибо за участие.