Как отрезать ненужное наименование в поле запроса

1. Dmitry888 41 24.06.22 14:52 Сейчас в теме
Есть некий запрос, где выбираем полное наименование товара, например "Туфли, 22 размера, красные, для мужчин". и как в запросе отрезать наименование до 3 запятой, при этом количеств символом может меняться постоянно?
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. RustamZz 24.06.22 15:04 Сейчас в теме
(1) Выбирать представление. А уже его ОбработкойПолученияПредставления формировать как надо.
3. Dmitry888 41 24.06.22 15:11 Сейчас в теме
(2)получается , что это сделать в запросе не реально. А что это за обработка? не нашел ее в конфигураторе БП
4. Sashares 34 24.06.22 15:18 Сейчас в теме
(3)Пост обработкой результата запроса сделайте.
5. RustamZz 24.06.22 15:20 Сейчас в теме
(3)
Прикрепленные файлы:
6. AndKovalchuk 192 24.06.22 15:22 Сейчас в теме
(1)а для чего делать это именно в запросе, а не на этапе выборки из запроса?
8. FatPanzer 24.06.22 16:12 Сейчас в теме
(6) Может сгруппировать хочет, бывает...
7. Vitaly1C8 24.06.22 15:42 Сейчас в теме
(1) лучше по-человечески пост-обработкой результата запроса;
иначе будет выглядеть ужасающе, как то типа:

// Мы можем выделить наименование до запятой следующим образом:
ВЫБОР
Когда ПОДСТРОКА(Наименование, 1, 1) = ПОДСТРОКА(Наименование, 1, 1) + "," Тогда
ПОДСТРОКА(Наименование, 1, 1)
Когда ПОДСТРОКА(Наименование, 1, 2) = ПОДСТРОКА(Наименование, 1, 2) + "," Тогда
ПОДСТРОКА(Наименование, 1, 2)
// ...
Когда ПОДСТРОКА(Наименование, 1, 99) = ПОДСТРОКА(Наименование, 1, 99) + "," Тогда
ПОДСТРОКА(Наименование, 1, 99)
// ----------------------------------------------------------------------------------------------------------------------------
// Поместим результат в ВТ1, (наименование до первой запятой)
// Для ВТ1 снова выделим результат поместим в ВТ2 (наименование до второй запятой)
// Для ВТ2 снова выделим результат поместим в ВТ3 (наименование до третьей запятой)
// ----------------------------------------------------------------------------------------------------------------------------
// В итоге у нас ВТ1, ВТ2, ВТ3 содержащие части наименования
// соединим их левым соединением по коду Номенклатуры с исходным запросом
// ----------------------------------------------------------------------------------------------------------------------------
Показать
namazi74; +1 Ответить
9. SlavaKron 24.06.22 16:14 Сейчас в теме
Запрос = Новый Запрос;
Запрос.Текст = "...";

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

Пока Выборка.Следующий() Цикл
	
	ПозицияТретьейЗапятой = СтрНайти(Выборка.Наименование, ",", , 3);
	
	Если ПозицияТретьейЗапятой > 0 Тогда
		Наименование = Лев(Выборка.Наименование, ПозицияТретьейЗапятой - 1)
	Иначе
		Наименование = Выборка.Наименование;
	КонецЕсли;
	
КонецЦикла;
Показать
10. Dmitry888 41 29.06.22 09:20 Сейчас в теме
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот