arefaste/1C_Forums huggingface dataset:
Приветствую всех😊 подскажите кто нибудь,как можно сделать выключение и отключение отбора через параметры?делается это для удобства пользователя,чтобы он четко понимал,включён отбор или нет
---
Необходимо создать параметр с типом булево "ПоВыпуску",добавить список значений "ИСТИНА","ЛОЖЬ" и представить их как "ДА","НЕТ". Затем в запросе необходимо написать условие.

```1c
    Выбор Когда &ПоВыпуску = ЗНАЧЕНИЕ(ИСТИНА) Тогда (Включить отбор) Иначе (Ничего не делать и запустить стандартный отчет:D)
```
---
Это на форме? Управляемая, обычная?
---
В скд это
---
Управляемая форма
---
Я так думаю,что нужно создать параметр с типом булево и через запрос написать Выбор Когда &ПоВыпуску = Истина Тогда .... затем я не знаю как синтаксически включить отбор
---
В скд это,в отчете
---
Так там достаточно галку поставить - выводить отбор и выводить параметры. И пользователь увидит в шапке....кажется так в самой настройке отчета, в СКД
---
Необходимо сделать,чтобы это выглядело отбор "По выпуску" с вариантами ответа "Да" "Нет" . Если ответ да,то должен выполняться отбор,если нет,то должно вывести стандартный отчет
---
Если грубо говоря то,чтобы галочка при отборе заменилась на варианты ответов "Да","Нет". Типо включен отбор или нет
---
Может, проще вариантами отчета обойтись?
---
Я человек подневольный:D приказ,есть приказ:D
---
Необходимо создать параметр с типом булево "ПоВыпуску",добавить список значений "ИСТИНА","ЛОЖЬ" и представить их как "ДА","НЕТ". Затем в запросе необходимо написать условие.

```1c
    Выбор Когда &ПоВыпуску = ЗНАЧЕНИЕ(ИСТИНА) Тогда (Включить отбор) Иначе (Ничего не делать и запустить стандартный отчет:D)
```
---
Вот так открыть СКД можно с отбором.

```1c
    ПараметрыОтбора = Новый Структура;
    ПараметрыОтбора.Вставить("Предмет", СсылкаНаДокумент); // параметр и его нзачение

    ПараметрыФормы = Новый Структура;
    ПараметрыФормы.Вставить("КлючВарианта", "Основной"); // Это имя варианта отчета в СКД
    ПараметрыФормы.Вставить("Отбор", ПараметрыОтбора);
    ПараметрыФормы.Вставить("СформироватьПриОткрытии", Истина);

    ОткрытьФорму("Отчет.ИмяОтчетаСКДВКонфе.Форма", ПараметрыФормы);
```
```1c
    Для Каждого Элемент Из МетаданныеДокумента.ТабличныеЧасти Цикл

    Для Каждого Реквизит1 Из Элемент.Реквизиты Цикл

    Сообщить(СсылкаНаДокумент[Элемент][Реквизит1]); //Нужно получить значение примерно так
    КонецЦикла;

    КонецЦикла;
```
---
```1c
    ДокументОбъект = СсылкаНаДокумент.ПолучитьОбъект();

    Для Каждого Элемент Из ДокументОбъект.Метаданные().ТабличныеЧасти ЦИкл

    Для Каждого СтрокаТабличнойЧасти Из ДокументОбъект[Элемент.Имя] Цикл
    Для Каждого Реквизит Из Элемент.Реквизиты Цикл
    Сообщить(СтрокаТабличнойЧасти[Реквизит.Имя]);
    КонецЦикла;
    КонецЦикла;

    КонецЦикла;
```
---
Получить значение из табличной части ссылки на документ
Не понятно откуда получить. Ссылка лежит в табличной части? Или значение из ячейки табличной части по ссылке на документ?

То есть у меня есть документ ПриходнаяНакладная №001 от 08.08.2019 (ссылка на документ) с кучей табличных частей и нужно сообщить значение каждой ячейки табличной части этого документа?
---
Да, значение каждой ячейки табличной части документа, ссылка на который имеется.
---
```1c
    ДокументОбъект = СсылкаНаДокумент.ПолучитьОбъект();

    Для Каждого Элемент Из ДокументОбъект.Метаданные().ТабличныеЧасти ЦИкл

    Для Каждого СтрокаТабличнойЧасти Из ДокументОбъект[Элемент.Имя] Цикл
    Для Каждого Реквизит Из Элемент.Реквизиты Цикл
    Сообщить(СтрокаТабличнойЧасти[Реквизит.Имя]);
    КонецЦикла;
    КонецЦикла;

    КонецЦикла;
```
---
Не проще это запросом сделать?
Подскажите, где формируются блоки чека (фискального) и происходит заполнение их нужными параметрами, чтобы мне дописать свой данные. Все перерыл. УТ.
---
В ДенежныеСредстваСервер:
СтрокаПозицииЧека = МенеджерОборудованияКлиентСервер.ПараметрыФискальнойСтрокиЧека();
СтрокаПозицииЧека.Наименование = "Твоя строка";
и далее по порядку...
---
какая именно ут ?
---
11.1.2.6
---
ОбщиеМодули.МенеджерОборудованияВызовСервера - ПолучитьXMLПакетДляФискализацияЧека тут копайся
---
Можно посмотреть обработку ПредпросмотрЧека, там формируется нефискальная часть чека, которая потом передается на фискалмизацию в (4)
---
можно, но там он только увидит результат своей работы, и создаст себе двойную работу))) а в Менеджере непосредственно выдаст данные в ККМ, я так с системами налогообложения колдовал и кассирами)))
---
О каком менеджере речь идет? И как воспользоваться?
---
Я же тебе написал в (4) находишь место которое тебя интерисует, шапка там, строки товаров и т.д. и вставляешь свой код.
---
В ДенежныеСредстваСервер:
СтрокаПозицииЧека = МенеджерОборудованияКлиентСервер.ПараметрыФискальнойСтрокиЧека();
СтрокаПозицииЧека.Наименование = "Твоя строка";
и далее по порядку...
---
В обработке ТО вроде
Здравствуйте! В печатную форму необходимо было вывести текущую должность сотрудника, для этого использовался регистр сведения Кадровая история сотрудников. Но в печатную форму все равно выводится первоначальная должность, т.е если сотрудника перевели на другую должность, то в печатную форму все равно выводится должность, на которую он был первоначально принят на работу. Подскажите ,как исправить
---
нет, использовала просто кадровая история сотрудников, а сейчас поменяла на срез последних, и все верно выводится
---
Укажите пожалуйста название и версию вашей конфигурации (кружочек с восклицательным знаком в правом верхнем углу окна программы).
---
Сообщение было скрыто модератором.
---
Сообщение было скрыто модератором.
---
Глупый конечно вопрос, но все же - используете срез последних?
---
нет, использовала просто кадровая история сотрудников, а сейчас поменяла на срез последних, и все верно выводится
---
назовите вашу конфигурацию.
---
зачем? вопрос у ТС решился...:)
Всем добрый день!
Подскажите пожалуйста где и как в правилах обмена прописать о том, что если в базе-приемнике найден выгружаемый объект справочника и у него проставлен определенный реквизит = Истина, то этот объект перегружать не нужно
---
В Правилах Конвертации Объекта (ПКО), указать в обработчики "При загрузке" значение переменной НеЗамещатьОбъект.

```1c
    Если Не ОбъектНайден Тогда

    //Загружаем объект

    ИначеЕсли Объект["ПроВеряемыйРеквизт"] = ТребуемоеЗначение Тогда

    //Пропускаем загрузку объекта
    НеЗамещатьОбъект = Истина;

    КонецЕсли;
```

Из документации по КД:

Событие выполняется после попытки идентификации. В случае успешной синхронизации доступен найденный объект. В противном случае его значение Неопределено. Можно произвести произвольную инициализацию, заполняемого данными объекта.

ОбъектНайден - Булево. Если значение параметра равно Ложь, то объект не идентифицирован, то есть не найден в информационной базе

Объект - Произвольный. Загружаемый, модифицируемый объект, созданный по ссылке или найденный в информационной базе. Если способ идентификации объекта в файле не указан (т.е. отсутствует узел "Ссылка"), то параметр содержит значение Неопределено. В этом случае в обработчике возможна произвольная инициализация загружаемого объекта, в противном случае, объект будет создан автоматически.

НеЗамещатьОбъект - Булево - Если установить значение Истина, то существующий объект информационной базы не будет изменен.
---
Я бы в ПКО перед загрузкой проверил реквизит, и если то Отказ = Истина
---
Это понятно, но как мне для начала проверить найден ли этот ПКО?
И как обратиться к этому реквизиту? Просто по имени?
---
В Правилах Конвертации Объекта (ПКО), указать в обработчики "При загрузке" значение переменной НеЗамещатьОбъект.

```1c
    Если Не ОбъектНайден Тогда

    //Загружаем объект

    ИначеЕсли Объект["ПроВеряемыйРеквизт"] = ТребуемоеЗначение Тогда

    //Пропускаем загрузку объекта
    НеЗамещатьОбъект = Истина;

    КонецЕсли;
```

Из документации по КД:

Событие выполняется после попытки идентификации. В случае успешной синхронизации доступен найденный объект. В противном случае его значение Неопределено. Можно произвести произвольную инициализацию, заполняемого данными объекта.

ОбъектНайден - Булево. Если значение параметра равно Ложь, то объект не идентифицирован, то есть не найден в информационной базе

Объект - Произвольный. Загружаемый, модифицируемый объект, созданный по ссылке или найденный в информационной базе. Если способ идентификации объекта в файле не указан (т.е. отсутствует узел "Ссылка"), то параметр содержит значение Неопределено. В этом случае в обработчике возможна произвольная инициализация загружаемого объекта, в противном случае, объект будет создан автоматически.

НеЗамещатьОбъект - Булево - Если установить значение Истина, то существующий объект информационной базы не будет изменен.
---
Спасибо. Это то что нужно!
Здравствуйте, 1С 8.3, дорабатываю обработку по подгрузке накладных. пробую загрузить штрих код из табличного документа. третья стока не помогает. Загружает с пробелами штрих код. Нужно без них. Помогите пожалуйста.

                                        Строка1=Справочники.ШтрихКоды.СоздатьЭлемент();
     Строка1.Владелец= Строка.Номенклатура;
     Строка1.Наименование=Формат(Строка1.Наименование,"ЧГ=0");
     Строка1.Наименование= Число(ПараметрыФормы[ИндексСтрока][5]);

     Строка1.Единица = Строка.Номенклатура.БазоваяЕдиница;
        Строка1.Записать();
---
https://forum.infostart.ru/forum9/topic6233/ нашел тему посмотрите здесь, вдруг что поможет
---
В конце концов в сделал вот так

Строка1=Справочники.ШтрихКоды.СоздатьЭлемент();
Строка1.Владелец= Строка.Номенклатура;
Строка2= Число(ПараметрыФормы[ИндексСтрока][5]);
Строка2=СтрЗаменить(СтрЗаменить(Строка2,Символы.НПП,"")," ","");
Строка1.Наименование= Строка(Строка2);
Строка1.Единица = Строка.Номенклатура.БазоваяЕдиница;
Строка1.Записать();
---
поменять третью и четвертую строки, сначала загружаем данные, а потом форматируем строку
---
а зачем вы в четвертой строке перетираете?
У вас наименование 2 раза подряд заполняется
---
Если ее убрать то вообще пустой штрих код загружает
---
СокрЛП не помогает?
---
почему то не помогает
---
а пробелы где между цифрами или где?
---
Да 4 605 572 007 851
---
СтрЗаменить(ВашаСтрока, " ", "") Пробуйте так
---
" " - это ваш пробел, а "" заменит на нет пробела
---
В моем случае так написать??:

Строка1=Справочники.ШтрихКоды.СоздатьЭлемент();
Строка1.Владелец= Строка.Номенклатура;
Строка1.Наименование=СтрЗаменить(Строка1.Наименование, " ", "");
Строка1.Наименование= Число(ПараметрыФормы[ИндексСтрока][5]);

Строка1.Единица = Строка.Номенклатура.БазоваяЕдиница;
Строка1.Записать();
---
ЧГ=0
Я бы так попробовал для начала
Строка1.Наименование=СтрЗаменить(Строка1.Наименование," ", "");
---
Все равно с пробелами.
---
А у вас один пробел? Может там 2 к примеру
---
В 7
---
https://forum.infostart.ru/forum9/topic6233/ нашел тему посмотрите здесь, вдруг что поможет
---
или местами меняйте как написали (8)
---
Выше прислал где пробелы
---
В конце концов в сделал вот так

Строка1=Справочники.ШтрихКоды.СоздатьЭлемент();
Строка1.Владелец= Строка.Номенклатура;
Строка2= Число(ПараметрыФормы[ИндексСтрока][5]);
Строка2=СтрЗаменить(СтрЗаменить(Строка2,Символы.НПП,"")," ","");
Строка1.Наименование= Строка(Строка2);
Строка1.Единица = Строка.Номенклатура.БазоваяЕдиница;
Строка1.Записать();
---
вышло я так понимаю? Ссылка помогла ?
Приветствую, Форумчане!
1с8.3.12, БСП, самопис, УФ

Имеется табличная часть документа. В ТЧ есть поле с данными по документам "Заказы"
Необходимо в ТЧ по нажатию кнопки отфильтровавать строки и вывести только те, где заполнены значения Заказов (есть и пустые значения)

Элементы.Товары.ОтборСтрок = Новый ФиксированнаяСтруктура("Заказ", Документы.Заказы.ХХХХХХХХХХХ);

Как отфильтровать по заполненным заказам типа ЗначениеЗаполнено в этом коде?

Ну и потом как отменить действие этого отбора?
---
С помощью свойства "ОтборСтрок" таблицы формы нет возможность фильтровать данные, проверяя заполненность значений. В Вашем случае потребуется добавить новое скрытое поле, например булево типа, и представляющее собой признак заполненности нужной колонки. Соответственно и отбор строк устанавливать по новому полю.

Отменить отбор можно присваиванием неопределенного значения, либо пустой фиксированной структуры:

```1c
    Элементы.Товары.ОтборСтрок = Неопределено;
```
---
С помощью свойства "ОтборСтрок" таблицы формы нет возможность фильтровать данные, проверяя заполненность значений. В Вашем случае потребуется добавить новое скрытое поле, например булево типа, и представляющее собой признак заполненности нужной колонки. Соответственно и отбор строк устанавливать по новому полю.

Отменить отбор можно присваиванием неопределенного значения, либо пустой фиксированной структуры:

```1c
    Элементы.Товары.ОтборСтрок = Неопределено;
```
Подскажите пожалуйста, есть СписокЗначений в реквизите объекта (внешняя обработка)
Необходимо разместить на форме РеквизитСписокЗначений с возможностью выбора из списка (СписокЗначений заполняется программно) и установленным значением при открытии формы.
Как сделать?
---
На форме создаете реквизит.
пример: "Список" тип строка неограниченной длины рис список 1
вытаскивает его не форму и настраиваете либо через рис список 2 ( устанавливаете галочку и заполняете список)
или как на рис список 3 Кнопка выпадающего списка = Истина

далее при создании объекта заполняете список
пример:

НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)

 Запрос = Новый Запрос;
 Запрос.Текст =
  "ВЫБРАТЬ
  | Валюты.Ссылка
  |ИЗ
  | Справочник.Валюты КАК Валюты";

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

 ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();
    иденкс = 0 ;
 Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
     элементы.Список.СписокВыбора.Вставить(иденкс,ВыборкаДетальныеЗаписи.ссылка,ВыборкаДетальныеЗаписи.ссылка);
          иденкс = иденкс+1;

 КонецЦикла;

КонецПроцедуры

теперь при открытии у меня выбирается валюта, вы можете заполнить произвольными данными. при необходимости установите еще КнопкаОчистки = Истина
---
разместить на форме таблицу формы где источником данных будет ваш СЗ
установить видимость колонок и границ колонок: флаг, представление значения(только просмотр = истина)
написать обработчики выбора и модификации списка

вроде все
---
На форме создаете реквизит.
пример: "Список" тип строка неограниченной длины рис список 1
вытаскивает его не форму и настраиваете либо через рис список 2 ( устанавливаете галочку и заполняете список)
или как на рис список 3 Кнопка выпадающего списка = Истина

далее при создании объекта заполняете список
пример:

НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)

 Запрос = Новый Запрос;
 Запрос.Текст =
  "ВЫБРАТЬ
  | Валюты.Ссылка
  |ИЗ
  | Справочник.Валюты КАК Валюты";

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

 ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();
    иденкс = 0 ;
 Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
     элементы.Список.СписокВыбора.Вставить(иденкс,ВыборкаДетальныеЗаписи.ссылка,ВыборкаДетальныеЗаписи.ссылка);
          иденкс = иденкс+1;

 КонецЦикла;

КонецПроцедуры

теперь при открытии у меня выбирается валюта, вы можете заполнить произвольными данными. при необходимости установите еще КнопкаОчистки = Истина
Доброго дня ребят!вот вопрос касаемо создание документа на основании!у меня есть самописный документ "Производственные циклы",я делаю его на вводе на основании Отчета производства за смену!в конструкторе ввода на основании,соединяю нужные мне поля тч!но мне нужно что бы он еще вытаскивал,такие поля как "Склад" и "Подразделение"! как бы они там есть в выборе,ставя их,и нажимая кнопку ок,в модуле он их выкидывает!подскажите пожалуйста,как соединить эти поля?
---
Напишите руками, что нужно. Конструктором ввода на основании можно пользоваться на начальном этапе обучения
---
Без помощника, руками впишите и будет вам счастье
---
Напишите руками, что нужно. Конструктором ввода на основании можно пользоваться на начальном этапе обучения
---
Без помощника, руками впишите и будет вам счастье
---
:) одновременно ответили
---
Спасибо помогло!
---
Помогло,но почему прошло время он скинул все рукаписное!снова вот такая процедура получилась...что за фантастика!в чем может быть дело?
---
Снова конструктор значит запустил, он все сбросил. Читай предупреждения программы прежде чем кнопки нажимать.
---
скорее всего..спасибо
Доброе утро! нужна ваша помощь)

Пытаюсь избавиться от "0" в отчете, но скд не хочет меня понимать ) подскажите пожалуйста :
Ниже выражение ресурса:

```1c
    ВЫБОР КОГДА НЕ ПроцентСуммы = 0 ТОГДА
    ВЫБОР КОГДА ПроцентСуммы > 100 ТОГДА "100 %"
    КОГДА ПроцентСуммы < -100 ТОГДА "-100%"
    ИНАЧЕ ВЫБОР КОГДА Окр(ПроцентСуммы) > 0 И Окр(ПроцентСуммы) < 1 ТОГДА
    "1%"
    КОГДА Окр(ПроцентСуммы) < 0 И Окр(ПроцентСуммы) > -1ТОГДА
    "-1%"
    ИНАЧЕ Строка(Окр(ПроцентСуммы)) + "%" КОНЕЦ
    КОНЕЦ
    КОНЕЦ
```
---
Очевидно нужно заменить условие вида:

```1c
    Окр(ПроцентСуммы) > 0 И Окр(ПроцентСуммы) < 1
```
на

```1c
    ПроцентСуммы > 0 И ПроцентСуммы < 1
```
---
Уточните, пожалуйста, от какого "0" Вы пытаетесь избавиться?

И выражение ресурса выглядит довольно подозрительно, т.к. отсутствует какая-либо агрегатная функция.
---
пытаюсь избавиться от нулей в результатах отчета, вычисляемое поле считает правильно, но получается результат в виде (12,43434215). Округляю его до 12, все нормально, но если 0,34 например , то после округления 0
---
Очевидно нужно заменить условие вида:

```1c
    Окр(ПроцентСуммы) > 0 И Окр(ПроцентСуммы) < 1
```
на

```1c
    ПроцентСуммы > 0 И ПроцентСуммы < 1
```
---
или через условное оформление отформатировать
После перехода на бп 3.0 потребовалось В документе Поступления (акты,накладные) добавить возможность оприходования на несколько складов,подскажите как это лучше реализовать.
---
Сделал расширением.
---
Если мне не изменяет пямять, там должна быть настройка "Использовать несколько складов". Надо завести еще один склад и проверить настройки.
---
Изменяет, в БП 3.0 нет такой настройки
---
Тогда вариантов 2 - либо через расширение, либо через обработку с указанием склада по каждой позиции с кнопокой, которая запросом соберет все данные с итогом по складам и создаст типовым механизмом документы по количеству складов.
---
Ага, а как потом объясниться с тем что пришел 1 док, а мы создали 4?) Ну или банально сумму по накладной сложно найти будет.
Собственно вы натолкнули на мысль обработки, которая создает перемещения, можно сразу к документу поступления воткнуть, а там раскидывать, но лисапед такой лисапед...
---
Добавить склад в ТЧ Товары, поменять несколько процедур в модуле менеджера и объекта, потом подпилить напильником что не встало
---
А еще лучше ничего не трогать, обновлять потом кому-то будет сложно, лучше взять УТ и там вести все эти дела
---
Сделал расширением.
---
а ты хорош, как сделал?
Как отключить расшифровку в СКД, необходимо убрать такую возможность.. На Результате в Форме делаю &НаКлиенте
Процедура РезультатОбработкаРасшифровки(Элемент, Расшифровка, СтандартнаяОбработка, ДополнительныеПараметры)
 // Вставить содержимое обработчика.
  СтандарнаяОбработку = Ложь;
КонецПроцедуры
Все равно не срабатывает.. Как убрать?
---
У меня работает СтандартнаяОбработка = Ложь.

В топике СтандартнаяОбработку = Ложь. Это только здесь так или в коде тоже?
---
Отчет внешний? Кэш чистили?
---
Уверены что форма, которую редактировали открывается?
---
А если ссылки заменить на представление или наименование?!
---
это может поломать логику выражений в выч. полях, ресурсах, настройках и пр.
---
в макетах СКД в расшифровку "втулить" че нить пустое.
---
КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных;

```1c
    МакетКомпоновки = КомпоновщикМакета.Выполнить(СхемаКомпоновкиДанных, КомпоновщикНастроек.Настройки, ДанныеРасшифровки);
```

Метод Выполнить() мне не доступен я так понимаю.. Где очищать?
---
У меня работает СтандартнаяОбработка = Ложь.

В топике СтандартнаяОбработку = Ложь. Это только здесь так или в коде тоже?
---
в каком месте установили?
---
В РезультатОбработкаРасшифровки.
---
На форме в поле Результат ставлю в Событии ОбработкаРасшифровки -

```1c
    &НаКлиенте
    Процедура РезультатОбработкаРасшифровки(Элемент, Расшифровка, СтандартнаяОбработка, ДополнительныеПараметры)
    // Вставить содержимое обработчика.
    СтандартнаяОбработка = Ложь;
    КонецПроцедуры
```

результата нет.
---
Отчет внешний? Кэш чистили?
---
нет
---
Уверены что форма, которую редактировали открывается?
---
(10) точно в этом было, Спасибо всем Кэш...
При загрузке в бп, выдает ошибку
 Направление: Получение.
ПОД: Справочник_Контрагенты_Получение.
ПКО: Справочник_Контрагенты_Получение.
Объект: Справочник.Контрагенты.

{ОбщийМодуль.ОбменДаннымиXDTOСервер.Модуль(6078)}:
Событие: Получение.
Обработчик: ПриКонвертацииДанныхXDTO.
Объект: Справочник объект: Контрагенты, ООО "Квадр" ().

Ошибка выполнения обработчика.
{ОбщийМодуль.МенеджерОбменаЧерезУниверсальныйФормат13.Модуль(29827)}: Вид контактной информации Фактический адрес полученного объекта указан несколько раз. Загрузка не возможна.
       ВызватьИсключение ТекстИсключения;.
  ВызватьИсключение ТекстОшибки;

как исправить подскажите пожалуйста?
---
Открываете карточку контрагента ООО "Квадр" и удаляете лишний адрес
---
Открываете карточку контрагента ООО "Квадр" и удаляете лишний адрес
---
Если не отображается на форме то удалить можно с помощью этой обработки.
Добрый вечер.

Для того чтоб вытащить данные табличной части пришлось сделать вложенный запрос, теперь не работает группировка. Подскажите как выйти из ситуации?

```1c
    ВЫБРАТЬ
    ТорговыеТочки.Владелец.Код КАК ВладелецКод,
    ТорговыеТочки.Владелец КАК Владелец,
    ВложенныйЗапрос.КонтрактныеТипыЦен.(
    ВЫБОР
    КОГДА ВложенныйЗапрос.КонтрактныеТипыЦен.Основной = ИСТИНА
    ТОГДА ВложенныйЗапрос.КонтрактныеТипыЦен.КонтрактныйТипЦен
    ИНАЧЕ Маршруты.ТипЦен
    КОНЕЦ КАК ТипЦен
    )
    ИЗ
    РегистрСведений.Маршруты КАК Маршруты
    ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ТорговыеТочки КАК ТорговыеТочки
    ЛЕВОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ
    Контрагенты.Ссылка КАК Ссылка,
    Контрагенты.КонтрактныеТипыЦен.(
    Основной КАК Основной,
    КонтрактныйТипЦен КАК КонтрактныйТипЦен
    ) КАК КонтрактныеТипыЦен
    ИЗ
    Справочник.Контрагенты КАК Контрагенты) КАК ВложенныйЗапрос
    ПО ТорговыеТочки.Владелец.Ссылка = ВложенныйЗапрос.Ссылка
    ПО Маршруты.ТорговаяТочка = ТорговыеТочки.Ссылка
    ГДЕ
    Маршруты.ТипЦен В(&ТипЦен)
    ИТОГИ ПО
    ВладелецКод,
    Владелец
```
---
к таблице обратитесь по другому
вы обращаетесь как на скрине № 1
а надо как на 2,3
---
без вложеного запроса могли обойтись это лишнее и тем более к таб части
---
Без вложенного запроса ситуация такая же, не дает группировать ни по одному полю

```1c
    ВЫБРАТЬ
    ТорговыеТочки.Владелец.Код КАК ВладелецКод,
    ТорговыеТочки.Владелец КАК Владелец,
    Контрагенты.КонтрактныеТипыЦен.(
    Основной,
    КонтрактныйТипЦен
    )
    ИЗ
    РегистрСведений.Маршруты КАК Маршруты
    ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ТорговыеТочки КАК ТорговыеТочки
    ЛЕВОЕ СОЕДИНЕНИЕ Справочник.Контрагенты КАК Контрагенты
    ПО ТорговыеТочки.Владелец = Контрагенты.Ссылка
    И ТорговыеТочки.Владелец.Ссылка = Контрагенты.Ссылка
    ПО Маршруты.ТорговаяТочка = ТорговыеТочки.Ссылка
    ГДЕ
    Маршруты.ТипЦен В(&ТипЦен)
```
---
делай по-человечески, тогда будет понятно, что это за запрос

```1c
    ВЫБРАТЬ
    ТорговыеТочки.Владелец.Код КАК ВладелецКод,
    ТорговыеТочки.Владелец КАК Владелец,
    ЕстьNull(ТипыЦен.Основной, "Не задано") КАК ТипЦены,
    ЕстьNull(ТипыЦен.КонтрактныйТипЦен, "Не задано") КАК КонтрактныйТипЦены
    ИЗ
    РегистрСведений.Маршруты КАК Маршруты
    Левое соединение Контрагенты.КонтрактныеТипыЦен КАК ТипыЦен
    По блаблабла
```

потом уже всякие группировки
---
Как по-человечески то? Как только появляется таблица в выбранных полях группировка перестает работать.
---
к таблице обратитесь по другому
вы обращаетесь как на скрине № 1
а надо как на 2,3
---
Блин, а че так можно)) Спасибо, то что нужно