Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
19 мая 2024, 04:15

Правило обмена Розница - Торговля

Автор AB, 24 апр 2017, 10:49

0 Пользователей и 1 гость просматривают эту тему.

AB

Добрый день!

"Управление торговлей", редакция 10.3 (10.3.37.3)
Розница, редакция 2.2 (2.2.4.33)

Есть документ "Поступление товара" и который создается в рознице, а потом передаться в торговлю.
В самом обмене надо сделать так, что бы при попадании документа в торговлю выставлялся договор(по которому идет поступление).

Этот договор определяется по контрагенту, то есть, В договоре есть графа контрагент и в самом документе поступления есть графа контрагент. Так если они совпадают, то должен выставляться именно этот договор, который совпадает по контрагенту.

Точно не знаю как бы это сделать, пробовал через много условий, но что-то не работало
ПРобовал так, как тест, но вообще ничего не изменилось.

Если ЗначениеЗаполнено(этотобъект.ДоговорКонтрагента) Тогда
этотобъект.ДоговорКонтрагента = Справочники.ДоговорыКонтрагентов;
КонецЕсли;


И пробовал так

Если НЕ ЗначениеЗаполнено(Объект.ДоговорКонтрагента) Тогда
Если Справочники.ДоговорыКонтрагентов = Объект.Контрагент Тогда
Если Справочники.ДоговорыКонтрагентов.ВестиПоДокументамРасчетовСКонтрагентом = ИСТИНА     Тогда
Объект.ДоговорКонтрагента = Справочники.ДоговорыКонтрагентов;
КонецЕсли;
КонецЕсли;
КонецЕсли;


Что-то совсем не так делаю?

Dethmontt

Цитата: AB от 24 апр 2017, 10:49Что-то совсем не так делаю?
да.

Сначала попытайся "Понять" что это такое:
Цитата: AB от 24 апр 2017, 10:49Справочники.ДоговорыКонтрагентов

Если долго всматриваться в учебник...то в голову может прийти мысль его открыть!

AB

Цитата: Dethmontt от 24 апр 2017, 11:38Сначала попытайся "Понять" что это такое:

По сути я понимаю, что нельзя так обратиться(это получается именно к справочнику обращаюсь), а не к его элементам(записям) и он мне ничего не выставит(так как нечего). Но в тоже время я не знаю как обращаться именно к элементу через Если(что-то совпадает, то выставляется он)

alex0402

Цитата: AB от 24 апр 2017, 10:49Справочники.ДоговорыКонтрагентов;
есть такие замечательные вещи как Справочники.ДоговорыКонтрагентов.Найти<Выбери свой вариант>
ну или запрос
ВЫБРАТЬ ПЕРВЫЕ 1
    ССылка
ИЗ Справочники.ДоговорыКонтрагентов
ГДЕ Владелец = &Контрагент


или свой вариант запроса.
Спасибо за Сказать спасибо

AB

Можно ли сделать как-то так?


Если НЕ ЗначениеЗаполнено(Объект.ДоговорКонтрагента) Тогда
    ВЫБРАТЬ * ИЗ Справочники.ДоговорКонтрагента ГДЕ (Этотобъект.Контрагент = Справчоники.ДоговорКонтрагента.Контрагент)
    // и как мне это вставить в ту строку(выбраное поле), если я вообще правильно выбрал, но терзают меня сомнения, что так в запросике нельзя сделать(про часть ГДЕ)
КонецЕсли

alex0402


Если НЕ ЗначениеЗаполнено(Объект.ДоговорКонтрагента) Тогда
    Запрос = Новый Запрос("ВЫБРАТЬ Первые 1 Ссылка
                               | ИЗ Справочники.ДоговорКонтрагента
                               |ГДЕ (Владелец = &Контрагент)");
    Запрос.УстановитьПараметр("Контрагент",Объект.Контрагент);
    Выборка = Запрос.Выполнить().Выбрать();
    Если Выборка.Следующий() Тогда
        Объект.Договор =  Выборка.Ссылка
    КонецЕсли;   
КонецЕсли
Спасибо за Сказать спасибо

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск