1С 8.3 Создать основной договор
Данные > Примеры кода 1С > 1С 8.3 Типовые (БП3, ЗУП, УТ)
Перейти в раздел примеры кода 1С 8.3:
Данная функция создает и заполняет договор у конкретного контрагента. Делает его основным и добавляет необходимую запись в регистр сведений ОсновныеДоговорыКонтрагента.
Программное создание основного договора в Бухгалтерии Предприятия 1С 8.3:
Функция СоздатьОснДоговорБП(Организация, Контрагент, ВидДоговора, СделатьОсновным=Ложь) Экспорт
Дог = Справочники.ДоговорыКонтрагентов.СоздатьЭлемент();
Дог.Организация = Организация;
Дог.Владелец = Контрагент;
Дог.ВидДоговора = ВидДоговора;
Дог.ВалютаВзаиморасчетов = Константы.ВалютаРегламентированногоУчета.Получить();
Дог.Наименование = ВидДоговора;
Попытка
Дог.Записать();
Исключение
ТекстОшибки = СтрШаблон("Не удалось сохранить новый договор для контрагента %1
|по виду договора %2 для организации %3", Контрагент, ВидДоговора, Организация);
ОбщегоНазначенияКлиентСервер.СообщитьПользователю(ТекстОшибки);
Возврат Справочники.ДоговорыКонтрагентов.ПустаяСсылка();
КонецПопытки;
Если СделатьОсновным Тогда
Параметры = ОбщегоНазначения.ЗначенияРеквизитовОбъекта(Дог.Ссылка, "Организация, ВидДоговора, Владелец");
ЗаписьРС = РегистрыСведений.ОсновныеДоговорыКонтрагента.СоздатьМенеджерЗаписи();
ЗаписьРС.Организация = Параметры.Организация;
ЗаписьРС.Контрагент = Параметры.Владелец;
ЗаписьРС.ВидДоговора = Параметры.ВидДоговора;
ЗаписьРС.Договор = Дог;
Попытка
ЗаписьРС.Записать(Истина);
Исключение
ТекстОшибки = СтрШаблон("Не удалось указать договор %1 основным для контрагента %2", Дог, Контрагент);
ОбщегоНазначенияКлиентСервер.СообщитьПользователю(ТекстОшибки);
КонецПопытки;
КонецЕсли;
Возврат Дог.Ссылка;
КонецФункции
Дог = Справочники.ДоговорыКонтрагентов.СоздатьЭлемент();
Дог.Организация = Организация;
Дог.Владелец = Контрагент;
Дог.ВидДоговора = ВидДоговора;
Дог.ВалютаВзаиморасчетов = Константы.ВалютаРегламентированногоУчета.Получить();
Дог.Наименование = ВидДоговора;
Попытка
Дог.Записать();
Исключение
ТекстОшибки = СтрШаблон("Не удалось сохранить новый договор для контрагента %1
|по виду договора %2 для организации %3", Контрагент, ВидДоговора, Организация);
ОбщегоНазначенияКлиентСервер.СообщитьПользователю(ТекстОшибки);
Возврат Справочники.ДоговорыКонтрагентов.ПустаяСсылка();
КонецПопытки;
Если СделатьОсновным Тогда
Параметры = ОбщегоНазначения.ЗначенияРеквизитовОбъекта(Дог.Ссылка, "Организация, ВидДоговора, Владелец");
ЗаписьРС = РегистрыСведений.ОсновныеДоговорыКонтрагента.СоздатьМенеджерЗаписи();
ЗаписьРС.Организация = Параметры.Организация;
ЗаписьРС.Контрагент = Параметры.Владелец;
ЗаписьРС.ВидДоговора = Параметры.ВидДоговора;
ЗаписьРС.Договор = Дог;
Попытка
ЗаписьРС.Записать(Истина);
Исключение
ТекстОшибки = СтрШаблон("Не удалось указать договор %1 основным для контрагента %2", Дог, Контрагент);
ОбщегоНазначенияКлиентСервер.СообщитьПользователю(ТекстОшибки);
КонецПопытки;
КонецЕсли;
Возврат Дог.Ссылка;
КонецФункции
0
комментарии
____________________
Перепечатка текста и фотографий разрешена при наличии прямой ссылки на источник