Как подставить основной договор контрагента в документе РеализацияТоваровУслуг

1. sidalexsandr 3 03.03.22 16:47 Сейчас в теме
Переношу документ РеализацияТоваровУслуг из комплексной автоматизации 2.4 в Бухгалтерию предприятия 3. Так вот в комплексной автоматизации 2.4 не у всех документов заполнено поле договор (вместо договора дописка сделана по соглашениям).

Вопрос: как сделать если в комплексной нет договора в документе то конвертация данных присваивала основной договор этого контрагента, а если договор указан оставить как есть, то есть чтобы просто в бухгалтерию подстанавливался договор из . комплексной автоматизации 2.4?
По теме из базы знаний
Найденные решения
4. wladimirpav 04.03.22 08:15 Сейчас в теме
(1) Можно так - в ПКО после загрузки:
////Заполнение договора
Запрос = Новый Запрос;
Запрос.Текст = 
	"ВЫБРАТЬ
	|	ДоговорыКонтрагентов.Ссылка КАК Договор
	|ИЗ
	|	Справочник.ДоговорыКонтрагентов КАК ДоговорыКонтрагентов
	|ГДЕ
	|	ДоговорыКонтрагентов.Организация = &Организация
	|	И ДоговорыКонтрагентов.Владелец = &Контрагент
	|	И ДоговорыКонтрагентов.ВидДоговора = ЗНАЧЕНИЕ(Перечисление.ВидыДоговоровКонтрагентов.СПоставщиком)";

Запрос.УстановитьПараметр("Контрагент", Объект.Контрагент);
Запрос.УстановитьПараметр("Организация", Объект.Организация);

Результат = Запрос.Выполнить();

ВыборкаДетальныеЗаписи = Результат.Выбрать();

Если ВыборкаДетальныеЗаписи.Следующий() Тогда
	Объект.ДоговорКонтрагента = ВыборкаДетальныеЗаписи.Договор;
КонецЕсли;
Показать

Это написано для УПП, для Бухгалтерии 3.0 тоже что-то подобное,я думаю. Кстати, зачем Вам переносить договор из КА, проще подставлять всегда основной договор контрагента
Остальные ответы
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
2. sidalexsandr 3 03.03.22 17:26 Сейчас в теме
Написал Если НЕ ЗначениеЗаполнено(Приемник.Контрагент.ОсновнойДоговор) тогда
Объект.ДоговорКонтрагента = Объект.Контрагент.ОсновнойДоговорКонтрагента;
КонецЕсли;

По образцу найденому на другом сайте. Только у справочника контрагентов нет реквизита ОсновнойДоговор?
Задача не много усложняется.
вот Вопрос: как сделать елси в бухгалтерии есть основной договор, то подставлялся он иначе первый из договоров какие есть у контрагента?
3. RustamZz 03.03.22 19:39 Сейчас в теме
(2) Может это выглядит нелогично, но работа с договорами реализована в общем модуле РаботаСДоговорамиКонтрагентовБП:
// Устанавливает договор контрагента по умолчанию с учетом условий отбора. 
// Возвращается основной договор или единственный или пустая ссылка
//
// Параметры
//  ВладелецДоговора	–	<СправочникСсылка.Контрагенты> 
//							Контрагент, договор которого нужно получить
//  ОрганизацияДоговора	–	<СправочникСсылка.Организации> 
//							Организация, договор которой нужно получить
//  СписокВидовДоговора	–	<Массив> или <СписокЗначений>, состоящий из значений типа <ПеречислениеСсылка.ВидыДоговоровКонтрагентов> 
//							Нужные виды договора
//  СтруктураПараметров	–	<Структура>
//							Структура дополнительных параметров отбора договоров по реквизитам.
//							Элементы структуры СтруктураПараметров:
//							Ключ - имя реквизита договора, Значение - еще одна структура
//							
//							Элементы структуры, которая находится в Значение:
//							Ключ - "ЗначениеОтбора", Значение - значение реквизита договора для отбора. Обязательный элемент.
//							Ключ - "ВидСравненияОтбора", Значение - <ВидСравнения>. Необязательный элемент, по умолчанию ВидСравнения.Равно
//
// Возвращаемое значение:
//   <СправочникСсылка.ДоговорыКонтрагентов> – найденный договор или пустая ссылка
//
УстановитьДоговорКонтрагента(ДоговорКонтрагента, ВладелецДоговора, ОрганизацияДоговора, СписокВидовДоговора = Неопределено, ДополнительныеПараметры = Неопределено)
Показать
4. wladimirpav 04.03.22 08:15 Сейчас в теме
(1) Можно так - в ПКО после загрузки:
////Заполнение договора
Запрос = Новый Запрос;
Запрос.Текст = 
	"ВЫБРАТЬ
	|	ДоговорыКонтрагентов.Ссылка КАК Договор
	|ИЗ
	|	Справочник.ДоговорыКонтрагентов КАК ДоговорыКонтрагентов
	|ГДЕ
	|	ДоговорыКонтрагентов.Организация = &Организация
	|	И ДоговорыКонтрагентов.Владелец = &Контрагент
	|	И ДоговорыКонтрагентов.ВидДоговора = ЗНАЧЕНИЕ(Перечисление.ВидыДоговоровКонтрагентов.СПоставщиком)";

Запрос.УстановитьПараметр("Контрагент", Объект.Контрагент);
Запрос.УстановитьПараметр("Организация", Объект.Организация);

Результат = Запрос.Выполнить();

ВыборкаДетальныеЗаписи = Результат.Выбрать();

Если ВыборкаДетальныеЗаписи.Следующий() Тогда
	Объект.ДоговорКонтрагента = ВыборкаДетальныеЗаписи.Договор;
КонецЕсли;
Показать

Это написано для УПП, для Бухгалтерии 3.0 тоже что-то подобное,я думаю. Кстати, зачем Вам переносить договор из КА, проще подставлять всегда основной договор контрагента
5. sidalexsandr 3 04.03.22 12:04 Сейчас в теме
6. sidalexsandr 3 04.03.22 13:03 Сейчас в теме
(3) Функция Функция УстановитьДоговорКонтрагента(ДоговорКонтрагента, ВладелецДоговора, ОрганизацияДоговора, СписокВидовДоговора = Неопределено, ДополнительныеПараметры = Неопределено) Экспорт

Вопрос: ДоговорКонтрагента это откуда брать?
8. RustamZz 04.03.22 14:24 Сейчас в теме
(6) Это реквизит куда надо заполнить договор
7. sidalexsandr 3 04.03.22 13:30 Сейчас в теме
(6) Не актуально. Сработало в (4)
Оставьте свое сообщение
Вакансии
1С-Программист (интегратор Битрикс24)
Санкт-Петербург
зарплата от 150 000 руб. до 250 000 руб.
Полный день

Разработчик 1С
Москва
зарплата от 100 000 руб.
Временный (на проект)

Разработчик 1С
Москва
зарплата от 150 000 руб.
Полный день

Программист
Санкт-Петербург
зарплата от 180 000 руб. до 240 000 руб.
Полный день

Разработчик 1С
Москва
зарплата от 150 000 руб. до 250 000 руб.
Полный день