Имя: Пароль:
1C
1С v8
Отбор по текущему документу
↓ (Волшебник 18.07.2023 17:36)
0 yabashu
 
18.07.23
17:12
Добрый день, эксперты. Подскажите, как сделать отбор подразделений по текущему документу в модуле объекта.

Функция ПроверкаПодразделений(Отказ)
    
    Запрос = Новый Запрос;
    
    Запрос.Текст =
    "ВЫБРАТЬ
    |    ЗаказПоставщикуТовары.РШ_ИдентификаторЗакупки.Подразделение КАК РШ_ИдентификаторЗакупкиПодразделение
    |ИЗ
    |    Документ.ЗаказПоставщику.Товары КАК ЗаказПоставщикуТовары
    |        ЛЕВОЕ СОЕДИНЕНИЕ Документ.ЗаказПоставщику КАК ЗаказПоставщику
    |        ПО ЗаказПоставщикуТовары.Ссылка = ЗаказПоставщику.Ссылка
    |
    |СГРУППИРОВАТЬ ПО
    |    ЗаказПоставщикуТовары.РШ_ИдентификаторЗакупки.Подразделение";
    
    ТЗ = Запрос.Выполнить().Выгрузить();
    
    Если ТЗ.ВыгрузитьКолонку("РШ_ИдентификаторЗакупкиПодразделение").Количество() <> 1 Тогда
        ЭтотОбъект.Подразделение = ОбщегоНазначения.ПредопределенныйЭлемент("Справочник.Настройки.ДепартаментЗакупок");
        ОбщегоНазначения.СообщитьПользователю("Подразделение документа не соответствует Подразделению в Заявках на закупку. Необходимо исправить!", ЭтотОбъект.Подразделение, , "Объект",Истина);
        Возврат Ложь;
    Иначе
        ЭтотОбъект.Подразделение = ТЗ[0].РШ_ИдентификаторЗакупкиПодразделение;
        Возврат Истина;
    КонецЕсли;
    
КонецФункции
1 Волшебник
 
18.07.23
17:36
Плохое название функции
2 Kesim
 
18.07.23
17:49
(0) если документ уже заполнен то  "ЗаказПоставщику.Ссылка = Ссылка"
3 yabashu
 
18.07.23
18:12
(2) Это в условие запроса нужно прописывать, правильно?
4 Kesim
 
18.07.23
18:16
(3) не дословно, но да в запрос
5 yabashu
 
18.07.23
18:26
(4) Благодарю. (1) Спасибо за замечание, исправил на более интуитивный.
Основная теорема систематики: Новые системы плодят новые проблемы.