В запросе написал так, чтобы в одной строке выводились все единицы измерения, которые указаны в карточке номенклатуры, но показывает только одно значение,например в карточке номенклатуры 3 единицы измерения: шт, мест,служебный. Из этих трех показывает только шт.
Наименование единиц измерения скопировал из справочника Единицы измерения. % тоже добавлял, но все равно остальные не показывает.
Что делаю не так?
ВЫБОР
КОГДА ЕдиницыИзмерения.Наименование ПОДОБНО "шт"
ТОГДА "шт, "
ИНАЧЕ ""
КОНЕЦ + ВЫБОР
КОГДА ЕдиницыИзмерения.Наименование ПОДОБНО "мест"
ТОГДА "мест, "
ИНАЧЕ ""
КОНЕЦ + ВЫБОР
КОГДА ЕдиницыИзмерения.Наименование ПОДОБНО "Служебный_Элемент_Ед"
ТОГДА "Служебный_Элемент_Ед, "
ИНАЧЕ ""
КОНЕЦ + ВЫБОР
КОГДА ЕдиницыИзмерения.Наименование ПОДОБНО "кг"
ТОГДА "кг, "
ИНАЧЕ ""
КОНЕЦ + ВЫБОР
КОГДА ЕдиницыИзмерения.Наименование ПОДОБНО "блок"
ТОГДА "блок, "
ИНАЧЕ ""
КОНЕЦ + ВЫБОР
КОГДА ЕдиницыИзмерения.Наименование ПОДОБНО "пачка"
ТОГДА "пачка, "
ИНАЧЕ ""
КОНЕЦ + ВЫБОР
КОГДА ЕдиницыИзмерения.Наименование ПОДОБНО "кор"
ТОГДА "кор,"
ИНАЧЕ ""
КОНЕЦ + ВЫБОР
КОГДА ЕдиницыИзмерения.Наименование ПОДОБНО "кор."
ТОГДА "кор.,"
ИНАЧЕ ""
КОНЕЦ + ВЫБОР
КОГДА ЕдиницыИзмерения.Наименование ПОДОБНО "ящ."
ТОГДА "ящ."
ИНАЧЕ ""
КОНЕЦ + ВЫБОР
КОГДА ЕдиницыИзмерения.Наименование ПОДОБНО "Nestle_Упаковка"
ТОГДА "Nestle_Упаковка,"
ИНАЧЕ ""
КОНЕЦ + ВЫБОР
КОГДА ЕдиницыИзмерения.Наименование ПОДОБНО "Nestle_Короб"
ТОГДА "Nestle_Короб,"
ИНАЧЕ ""
КОНЕЦ + ВЫБОР
КОГДА ЕдиницыИзмерения.Наименование ПОДОБНО "Nestle_Вес_Штуки"
ТОГДА "Nestle_Вес_Штуки,"
ИНАЧЕ ""
КОНЕЦ + ВЫБОР
КОГДА ЕдиницыИзмерения.Наименование ПОДОБНО "банка"
ТОГДА "банка,"
ИНАЧЕ ""
КОНЕЦ + ВЫБОР
КОГДА ЕдиницыИзмерения.Наименование ПОДОБНО "ящ"
ТОГДА "ящ,"
ИНАЧЕ ""
ВЫБРАТЬ
Номенклатура.Ссылка КАК Номенклатура,
ЕдиницыИзмерения.Наименование КАК ЕдиницыИзмерения
ИЗ
Справочник.НоменклатураКАК Номенклатура
ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ЕдиницыИзмеренияКАК ЕдиницыИзмерения
ПО Номенклатура.Ссылка = ЕдиницыИзмерения.Владелец
на закладке Ресурсы в СКД СоединитьСтроки(ЕдиницыИзмерения,", ")
ну и в настройках выводим номенклатур в группировках, в выбранных полях единицу измерения
(1) согласен с (2), у вас выбралась одна запись, она не может попасть одновременно в несколько условий.
единственный вариант - делать соединение (вложенным запросом или через ВТ) таким образом, чтобы в одной записи были все единицы в разных полях, например, Запись.ЕИ1, Запись.ЕИ2, Запись.ЕИ3, тогда в рамках одной записи можно сделать ваш вариант с конкатенацией.
ВЫБОР
КОГДА ТорговыеТочки.ГрафикДоставки ПОДОБНО "%1%"
ТОГДА "Понедельник "
ИНАЧЕ ""
КОНЕЦ + ВЫБОР
КОГДА ТорговыеТочки.ГрафикДоставки ПОДОБНО "%2%"
ТОГДА "Вторник "
ИНАЧЕ ""
КОНЕЦ + ВЫБОР
КОГДА ТорговыеТочки.ГрафикДоставки ПОДОБНО "%3%"
ТОГДА "Среда "
ИНАЧЕ ""
(9) сложно, но как вариант можно и так сделать. вообще когда-то попадался алгоритм, когда через ВТ и хитрые соединения можно было сделать конкатенацию нескольких значений. попробую найти или вспомнить.
(11) пока универсально не могу вспомнить. но придумал как через динамически создаваемый запрос сделать.
собирать текст запроса или использовать объектную модель - на ваш вкус.
суть такая:
1. считаем максимальное количество единиц у номенклатуры (максимум от номера строки в ТЧ)
2. составляем пакет из полей Номенклатура.Ссылка (или что у вас будет ключем для ЕИ), ЕИ1.Наименование, ЕИ2.Наименование, ..., ЕИ(N).Наименование, где N соответственно максимум из 1 пункта.
3. составляем второй пакет, где перебираем поля предыдущего пакета для конкатенации по примеру
ВЫБОР КОГДА ВсеЕИ.ЕИ1 <> "" ТОГДА ВсеЕИ.ЕИ1 + ", " ИНАЧЕ "" КОНЕЦ
+ ВЫБОР КОГДА ВсеЕИ.ЕИ(N) <> "" ТОГДА ВсеЕИ.ЕИ(N) ИНАЧЕ "" КОНЕЦ
а дальше уже с полученной строкой делайте что вам надо)
еще надо помнить, что для некоторых номенклатур могут быть меньше единиц указано, там нужно на NULL проверять
ВЫБРАТЬ
МАКСИМУМ(НоменклатураЕдиницыИзмерения.НомерСтроки) КАК НомерСтроки
ИЗ
Справочник.Номенклатура.ЕдиницыИзмерения КАК НоменклатураЕдиницыИзмерения
дальше в цикле собираем запрос
ТЗ = "ВЫБРАТЬ ";
Для Индекс = 1 По МаксимумЕИ Цикл
ТЗ = ТЗ + "ВЫБОР КОГДА НомЕИ.НомерСтроки = " + Индекс + " ТОГДА НомЕИ.ЕдиницаИзмерения ИНАЧЕ NULL КОНЕЦ КАК ЕИ" + Индекс + ", ";
КонецЦикла;
ТЗ = ТЗ + "НомЕИ.Ссылка КАК Ссылка
|ПОМЕСТИТЬ ПредЕИ
|ИЗ Справочник.Номенклатура.ЕдиницыИзмерений КАК НомЕИ;
|ВЫБРАТЬ ";
Для Индекс = 1 По МаксимумЕИ Цикл
ТЗ = ТЗ + "МАКСИМУМ(ПредЕИ.ЕИ" + Индекс + ") КАК ЕИ" + Индекс + ", ";
КонецЦикла;
ТЗ = ТЗ + "ПредЕИ.Ссылка
|ПОМЕСТИТЬ ВсеЕИ
|ИЗ ПредЕИ КАК ПредЕИ
|СГРУППИРОВАТЬ ПО ПредЕИ.Ссылка;
|ВЫБРАТЬ ";
Для Индекс = 1 По МаксимумЕИ Цикл
ТЗ = ТЗ + "ВЫБОР КОГДА ВсеЕИ.ЕИ" + Индекс + " ЕСТЬ НЕ NULL ТОГДА ВсеЕИ.ЕИ" + Индекс + " ИНАЧЕ """" КОНЕЦ " + ?(Индекс < МаксимумЕИ, "+", "");
КонецЦикла;
ТЗ = ТЗ + " КАК СтрокаЕИ,
|ВсеЕИ.Ссылка КАК Номенклатура
|ИЗ ВсеЕИ КАК ВсеЕИ";
Показать
если надо, то последний пакет можно тоже в ВТ положить и дальше соединять со своим результирующим пакетом
PS: писал от руки. мог ошибиться)
(16) для СКД нефиг делать поменять запрос) особенно если ты в него заранее заглушку поставишь) да и вообще, можно добавить набор данных типа Объект, и описать в нем 2 поля: Номенклатура и СтрокаЕИ. а в СКД сделать объединение. ну или как-то так.
(17)было бы хорошо,если получилось бы сделать одним набором данных.Одним набором данных будет потом легче, когда такие задачи тоже будет,а я думаю, что такие задачи еще много раз будут
(18) тут тогда такой вариант, как это делают сейчас часто в типовых конфах. в СКД пишешь запрос заглушку, чтобы были итоговые поля с нужными типами. придется попотеть и проделать много ручной работы. потом по этой структуре настроить ресурсы, макеты, структуру, варианты и т.д. а потом просто подменять запрос. структура не изменится, а запрос ты соберешь перед компоновкой уже программно.
(19) зачем мне макеты, структуры, варианты и т.д. настраивать,если СКД сам норм справляется с этими задачами? Сможете привести пример, как сделать так, как вы предлагали в (3)?
(20) вы меня не правильно поняли) я имел в виду, что в СКД в наборе данных нужно добавить простой фиктивный запрос с пустыми полями, только чтобы у них были заданы конечные имена. то есть имитировать наличие запроса. дальше как обычно в конструкторе вы можете сделать все настройки какие надо. если не надо, то не настраивайте. по факту у вас получится готовая схема, которая ничего не выведет, либо выведет одно пустое значение. а вот дальше, уже перед компоновкой данных вам нужно будет подменить фиктивный запрос с пустыми полями на собранный программно запрос, сама схема от этого не изменится, так как в фиктивном и созданном программно запросах в итоговом пакете должны быть одинаковые (по именам и типам) поля. таким образом сделаны большинство отчетов, например, в ЗУП 3.1. если интересно, то посмотрите для примера, как это там реализовано.
тут либо использовать
1) программное формирование текста запроса (нам надо знать сколько максимум единиц измерения бывает у номенклатуры в вашей выборке)
2) использовать скд,
3) пост обработку результат
ВЫБРАТЬ
Номенклатура.Ссылка КАК Номенклатура,
ЕдиницыИзмерения.Наименование КАК ЕдиницыИзмерения
ИЗ
Справочник.НоменклатураКАК Номенклатура
ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ЕдиницыИзмеренияКАК ЕдиницыИзмерения
ПО Номенклатура.Ссылка = ЕдиницыИзмерения.Владелец
на закладке Ресурсы в СКД СоединитьСтроки(ЕдиницыИзмерения,", ")
ну и в настройках выводим номенклатур в группировках, в выбранных полях единицу измерения
(24)насколько я понял, вы так имели ввиду:https://1s83.info/programmirovanie/konkatenatsiya-strok-v-itogah-skd-1s.html Сделал все так, как там было описано, но выводит только одно значение." Рассчитывать по" оставлял пустым и ставил номенклатуру, все равно выводит только одно значение
У меня обычные формы.Это работает для обычных форм?
ВЫБРАТЬ
ТорговыеТочки.Код КАК КодКонтрагента,
ВЫРАЗИТЬ(Контрагенты.НаименованиеПолное КАК СТРОКА(200)) КАК ПолноеНаименованиеКонтрагента,
Контрагенты.ИНН,
Контрагенты.ОсновнойДоговорКонтрагента,
Контрагенты.ОсновнойДоговорКонтрагента.ВидДоговора КАК ТипДоговора,
Контрагенты.ОсновнойДоговорКонтрагента.Номер КАК НомерДоговора,
Контрагенты.ОсновнойДоговорКонтрагента.СрокДействия КАК СрокДействияДоговора,
Контрагенты.Территория,
ТорговыеТочки.Код КАК КодТорговойТочки,
ТорговыеТочки.Территория КАК ТерриторияКонтрагента,
ВЫБОР
КОГДА ТорговыеТочки.ГрафикДоставки ПОДОБНО "%1%"
ТОГДА "Понедельник "
ИНАЧЕ ""
КОНЕЦ + ВЫБОР
КОГДА ТорговыеТочки.ГрафикДоставки ПОДОБНО "%2%"
ТОГДА "Вторник "
ИНАЧЕ ""
КОНЕЦ + ВЫБОР
КОГДА ТорговыеТочки.ГрафикДоставки ПОДОБНО "%3%"
ТОГДА "Среда "
ИНАЧЕ ""
КОНЕЦ + ВЫБОР
КОГДА ТорговыеТочки.ГрафикДоставки ПОДОБНО "%4%"
ТОГДА "Четверг "
ИНАЧЕ ""
КОНЕЦ + ВЫБОР
КОГДА ТорговыеТочки.ГрафикДоставки ПОДОБНО "%5%"
ТОГДА "Пятница "
ИНАЧЕ ""
КОНЕЦ + ВЫБОР
КОГДА ТорговыеТочки.ГрафикДоставки ПОДОБНО "%6%"
ТОГДА "Суббота "
ИНАЧЕ ""
КОНЕЦ + ВЫБОР
КОГДА ТорговыеТочки.ГрафикДоставки ПОДОБНО "%7%"
ТОГДА "Воскресенье"
ИНАЧЕ ""
КОНЕЦ КАК ДниДоставки,
ТорговыеТочки.CRM_Nestle,
ТорговыеТочки.ГеографическаяШирота,
ТорговыеТочки.ГеографическаяДолгота,
ТорговыеТочки.Вывеска,
ТорговыеТочки.Площадь,
ТорговыеТочки.Подсегмент,
ВЫРАЗИТЬ(Тел.Телефон КАК СТРОКА(30)) КАК Телефон,
ВЫРАЗИТЬ(ЮрАдрес.ЮридическийАдрес КАК СТРОКА(150)) КАК ЮридическийАдресКонтрагента,
ВЫРАЗИТЬ(АдресТорговойТочки.Адрес КАК СТРОКА(150)) КАК АдресТороговойТочки,
ТорговыеТочки.Ссылка КАК ТорговаяТочка,
Контрагенты.Ссылка КАК Контрагент,
БанковскиеСчета.НомерСчета КАК РасчетныйСчет
ИЗ
Справочник.Контрагенты КАК Контрагенты
ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ТорговыеТочки КАК ТорговыеТочки
ЛЕВОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ
КонтактнаяИнформация.Представление КАК Адрес,
КонтактнаяИнформация.Объект КАК Объект,
ТорговыеТочки.Ссылка КАК ТорговаяТочка
ИЗ
Справочник.ТорговыеТочки КАК ТорговыеТочки
ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.КонтактнаяИнформация КАК КонтактнаяИнформация
ПО (КонтактнаяИнформация.Объект = ТорговыеТочки.Ссылка)
ГДЕ
КонтактнаяИнформация.Вид = &АдресТорговойТочки) КАК АдресТорговойТочки
ПО ТорговыеТочки.Ссылка = АдресТорговойТочки.Объект
ПО Контрагенты.Ссылка = ТорговыеТочки.Владелец
ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.КонтактнаяИнформация КАК КонтактнаяИнформация
ПО Контрагенты.Ссылка = КонтактнаяИнформация.Объект
ЛЕВОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ
КонтактнаяИнформация.Представление КАК Телефон,
КонтактнаяИнформация.Объект КАК Объект
ИЗ
Справочник.Контрагенты КАК Контрагенты
ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.КонтактнаяИнформация КАК КонтактнаяИнформация
ПО (КонтактнаяИнформация.Объект = Контрагенты.Ссылка)
ГДЕ
КонтактнаяИнформация.Вид = &Телефон) КАК Тел
ПО Контрагенты.Ссылка = Тел.Объект
ЛЕВОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ
КонтактнаяИнформация.Объект КАК Объект,
КонтактнаяИнформация.Представление КАК ЮридическийАдрес,
Контрагенты.Ссылка КАК Контрагент
ИЗ
Справочник.Контрагенты КАК Контрагенты
ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.КонтактнаяИнформация КАК КонтактнаяИнформация
ПО (КонтактнаяИнформация.Объект = Контрагенты.Ссылка)
ГДЕ
КонтактнаяИнформация.Вид = &ЮридическийАдрес) КАК ЮрАдрес
ПО Контрагенты.Ссылка = ЮрАдрес.Объект
ЛЕВОЕ СОЕДИНЕНИЕ Справочник.БанковскиеСчета КАК БанковскиеСчета
ПО Контрагенты.Ссылка = БанковскиеСчета.Владелец
СГРУППИРОВАТЬ ПО
Контрагенты.Ссылка,
ТорговыеТочки.Ссылка,
Контрагенты.ИНН,
Контрагенты.ОсновнойДоговорКонтрагента,
Контрагенты.ОсновнойДоговорКонтрагента.ВидДоговора,
Контрагенты.ОсновнойДоговорКонтрагента.Номер,
Контрагенты.ОсновнойДоговорКонтрагента.СрокДействия,
Контрагенты.Территория,
ТорговыеТочки.Территория,
ТорговыеТочки.CRM_Nestle,
ТорговыеТочки.ГеографическаяШирота,
ТорговыеТочки.ГеографическаяДолгота,
ТорговыеТочки.Вывеска,
ТорговыеТочки.Площадь,
ТорговыеТочки.Подсегмент,
ВЫРАЗИТЬ(Контрагенты.НаименованиеПолное КАК СТРОКА(200)),
ВЫРАЗИТЬ(Тел.Телефон КАК СТРОКА(30)),
ВЫРАЗИТЬ(ЮрАдрес.ЮридическийАдрес КАК СТРОКА(150)),
ВЫРАЗИТЬ(АдресТорговойТочки.Адрес КАК СТРОКА(150)),
БанковскиеСчета.НомерСчета,
ТорговыеТочки.Код,
ВЫБОР
КОГДА ТорговыеТочки.ГрафикДоставки ПОДОБНО "%1%"
ТОГДА "Понедельник "
ИНАЧЕ ""
КОНЕЦ + ВЫБОР
КОГДА ТорговыеТочки.ГрафикДоставки ПОДОБНО "%2%"
ТОГДА "Вторник "
ИНАЧЕ ""
КОНЕЦ + ВЫБОР
КОГДА ТорговыеТочки.ГрафикДоставки ПОДОБНО "%3%"
ТОГДА "Среда "
ИНАЧЕ ""
КОНЕЦ + ВЫБОР
КОГДА ТорговыеТочки.ГрафикДоставки ПОДОБНО "%4%"
ТОГДА "Четверг "
ИНАЧЕ ""
КОНЕЦ + ВЫБОР
КОГДА ТорговыеТочки.ГрафикДоставки ПОДОБНО "%5%"
ТОГДА "Пятница "
ИНАЧЕ ""
КОНЕЦ + ВЫБОР
КОГДА ТорговыеТочки.ГрафикДоставки ПОДОБНО "%6%"
ТОГДА "Суббота "
ИНАЧЕ ""
КОНЕЦ + ВЫБОР
КОГДА ТорговыеТочки.ГрафикДоставки ПОДОБНО "%7%"
ТОГДА "Воскресенье"
ИНАЧЕ ""
КОНЕЦ,
ТорговыеТочки.Код
ВЫБРАТЬ
Номенклатура.Код,
Номенклатура.Артикул,
Номенклатура.Ссылка КАК Номенклатура,
Номенклатура.НаименованиеПолное,
Номенклатура.Паллетизация,
Номенклатура.БазоваяЕдиницаИзмерения.Ссылка,
Номенклатура.ЕдиницаДляОтчетов.Ссылка,
Номенклатура.ЕдиницаДляОтчетов.Вес,
Номенклатура.ЕдиницаДляОтчетов.ВесНетто,
ВесБлока.Вес КАК БруттоВесБлока,
Номенклатура.ЕдиницаИзмеренияМест.Вес КАК БруттоВесМеста,
Номенклатура.Родитель,
ВЫБОР
КОГДА ЕдиницыИзмерения.Наименование ПОДОБНО "%шт"
ТОГДА "шт, "
ИНАЧЕ ""
КОНЕЦ + ВЫБОР
КОГДА ЕдиницыИзмерения.Наименование ПОДОБНО "%мест%"
ТОГДА "мест, "
ИНАЧЕ ""
КОНЕЦ + ВЫБОР
КОГДА ЕдиницыИзмерения.Наименование ПОДОБНО "%Служебный_Элемент_Ед%"
ТОГДА "Служебный_Элемент_Ед, "
ИНАЧЕ ""
КОНЕЦ + ВЫБОР
КОГДА ЕдиницыИзмерения.Наименование ПОДОБНО "%кг%"
ТОГДА "кг, "
ИНАЧЕ ""
КОНЕЦ + ВЫБОР
КОГДА ЕдиницыИзмерения.Наименование ПОДОБНО "%блок%"
ТОГДА "блок, "
ИНАЧЕ ""
КОНЕЦ + ВЫБОР
КОГДА ЕдиницыИзмерения.Наименование ПОДОБНО "пачка"
ТОГДА "пачка, "
ИНАЧЕ ""
КОНЕЦ + ВЫБОР
КОГДА ЕдиницыИзмерения.Наименование ПОДОБНО "кор"
ТОГДА "кор,"
ИНАЧЕ ""
КОНЕЦ + ВЫБОР
КОГДА ЕдиницыИзмерения.Наименование ПОДОБНО "кор."
ТОГДА "кор.,"
ИНАЧЕ ""
КОНЕЦ + ВЫБОР
КОГДА ЕдиницыИзмерения.Наименование ПОДОБНО "ящ."
ТОГДА "ящ."
ИНАЧЕ ""
КОНЕЦ + ВЫБОР
КОГДА ЕдиницыИзмерения.Наименование ПОДОБНО "Nestle_Упаковка"
ТОГДА "Nestle_Упаковка,"
ИНАЧЕ ""
КОНЕЦ + ВЫБОР
КОГДА ЕдиницыИзмерения.Наименование ПОДОБНО "Nestle_Короб"
ТОГДА "Nestle_Короб,"
ИНАЧЕ ""
КОНЕЦ + ВЫБОР
КОГДА ЕдиницыИзмерения.Наименование ПОДОБНО "Nestle_Вес_Штуки"
ТОГДА "Nestle_Вес_Штуки,"
ИНАЧЕ ""
КОНЕЦ + ВЫБОР
КОГДА ЕдиницыИзмерения.Наименование ПОДОБНО "банка"
ТОГДА "банка,"
ИНАЧЕ ""
КОНЕЦ + ВЫБОР
КОГДА ЕдиницыИзмерения.Наименование ПОДОБНО "ящ"
ТОГДА "ящ,"
ИНАЧЕ ""
КОНЕЦ + ВЫБОР
КОГДА ЕдиницыИзмерения.Наименование ПОДОБНО "г"
ТОГДА "г,"
ИНАЧЕ ""
КОНЕЦ + ВЫБОР
КОГДА ЕдиницыИзмерения.Наименование ПОДОБНО "Вес_Штуки"
ТОГДА "Вес_Штуки,"
ИНАЧЕ ""
КОНЕЦ + ВЫБОР
КОГДА ЕдиницыИзмерения.Наименование ПОДОБНО "ящ."
ТОГДА "ящ.,"
ИНАЧЕ ""
КОНЕЦ + ВЫБОР
КОГДА ЕдиницыИзмерения.Наименование ПОДОБНО "мл"
ТОГДА "мл,"
ИНАЧЕ ""
КОНЕЦ + ВЫБОР
КОГДА ЕдиницыИзмерения.Наименование ПОДОБНО "т"
ТОГДА "т,"
ИНАЧЕ ""
КОНЕЦ + ВЫБОР
КОГДА ЕдиницыИзмерения.Наименование ПОДОБНО "ж/б/кв"
ТОГДА "ж/б/кв,"
ИНАЧЕ ""
КОНЕЦ + ВЫБОР
КОГДА ЕдиницыИзмерения.Наименование ПОДОБНО "ящ."
ТОГДА "ящ.,"
ИНАЧЕ ""
КОНЕЦ КАК ЕдиницыИзмерения,
Номенклатура.ЕдиницаИзмеренияМест.Коэффициент КАК Фасовка,
ЕдиницыИзмерения.Наименование КАК НаименованиеЕдиницыИзмерения
ИЗ
Справочник.Номенклатура КАК Номенклатура
ЛЕВОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ
ЕдиницыИзмерения.Вес КАК Вес,
Номенклатура.Ссылка КАК Ссылка1
ИЗ
Справочник.ЕдиницыИзмерения КАК ЕдиницыИзмерения
ЛЕВОЕ СОЕДИНЕНИЕ Справочник.Номенклатура КАК Номенклатура
ПО ЕдиницыИзмерения.Владелец = Номенклатура.Ссылка
ГДЕ
ЕдиницыИзмерения.Наименование ПОДОБНО "%блок%") КАК ВесБлока
ПО Номенклатура.Ссылка = ВесБлока.Ссылка1
ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ЕдиницыИзмерения КАК ЕдиницыИзмерения
ПО Номенклатура.ЕдиницаДляОтчетов = ЕдиницыИзмерения.Ссылка
И Номенклатура.ЕдиницаИзмеренияМест = ЕдиницыИзмерения.Ссылка
И Номенклатура.ЕдиницаХраненияОстатков = ЕдиницыИзмерения.Ссылка
(35)убрал это условие и теперь не во всех номенклатурах выводит, ну и до этого не во всех выводил. И выводит что-то типа этого:
мест.мест.мест.мест.мест.мест.мест
ВЫБРАТЬ
Номенклатура.Код,
Номенклатура.Артикул,
Номенклатура.Ссылка КАК Номенклатура,
Номенклатура.НаименованиеПолное,
Номенклатура.Паллетизация,
Номенклатура.БазоваяЕдиницаИзмерения.Ссылка,
Номенклатура.ЕдиницаДляОтчетов.Ссылка,
Номенклатура.ЕдиницаДляОтчетов.Вес,
Номенклатура.ЕдиницаДляОтчетов.ВесНетто,
ВесБлока.Вес КАК БруттоВесБлока,
Номенклатура.ЕдиницаИзмеренияМест.Вес КАК БруттоВесМеста,
Номенклатура.Родитель,
ВЫБОР
КОГДА ЕдиницыИзмерения.Наименование ПОДОБНО "%шт"
ТОГДА "шт, "
ИНАЧЕ ""
КОНЕЦ + ВЫБОР
КОГДА ЕдиницыИзмерения.Наименование ПОДОБНО "%мест%"
ТОГДА "мест, "
ИНАЧЕ ""
КОНЕЦ + ВЫБОР
КОГДА ЕдиницыИзмерения.Наименование ПОДОБНО "%Служебный_Элемент_Ед%"
ТОГДА "Служебный_Элемент_Ед, "
ИНАЧЕ ""
КОНЕЦ + ВЫБОР
КОГДА ЕдиницыИзмерения.Наименование ПОДОБНО "%кг%"
ТОГДА "кг, "
ИНАЧЕ ""
КОНЕЦ + ВЫБОР
КОГДА ЕдиницыИзмерения.Наименование ПОДОБНО "%блок%"
ТОГДА "блок, "
ИНАЧЕ ""
КОНЕЦ + ВЫБОР
КОГДА ЕдиницыИзмерения.Наименование ПОДОБНО "пачка"
ТОГДА "пачка, "
ИНАЧЕ ""
КОНЕЦ + ВЫБОР
КОГДА ЕдиницыИзмерения.Наименование ПОДОБНО "кор"
ТОГДА "кор,"
ИНАЧЕ ""
КОНЕЦ + ВЫБОР
КОГДА ЕдиницыИзмерения.Наименование ПОДОБНО "кор."
ТОГДА "кор.,"
ИНАЧЕ ""
КОНЕЦ + ВЫБОР
КОГДА ЕдиницыИзмерения.Наименование ПОДОБНО "ящ."
ТОГДА "ящ."
ИНАЧЕ ""
КОНЕЦ + ВЫБОР
КОГДА ЕдиницыИзмерения.Наименование ПОДОБНО "Nestle_Упаковка"
ТОГДА "Nestle_Упаковка,"
ИНАЧЕ ""
КОНЕЦ + ВЫБОР
КОГДА ЕдиницыИзмерения.Наименование ПОДОБНО "Nestle_Короб"
ТОГДА "Nestle_Короб,"
ИНАЧЕ ""
КОНЕЦ + ВЫБОР
КОГДА ЕдиницыИзмерения.Наименование ПОДОБНО "Nestle_Вес_Штуки"
ТОГДА "Nestle_Вес_Штуки,"
ИНАЧЕ ""
КОНЕЦ + ВЫБОР
КОГДА ЕдиницыИзмерения.Наименование ПОДОБНО "банка"
ТОГДА "банка,"
ИНАЧЕ ""
КОНЕЦ + ВЫБОР
КОГДА ЕдиницыИзмерения.Наименование ПОДОБНО "ящ"
ТОГДА "ящ,"
ИНАЧЕ ""
КОНЕЦ + ВЫБОР
КОГДА ЕдиницыИзмерения.Наименование ПОДОБНО "г"
ТОГДА "г,"
ИНАЧЕ ""
КОНЕЦ + ВЫБОР
КОГДА ЕдиницыИзмерения.Наименование ПОДОБНО "Вес_Штуки"
ТОГДА "Вес_Штуки,"
ИНАЧЕ ""
КОНЕЦ + ВЫБОР
КОГДА ЕдиницыИзмерения.Наименование ПОДОБНО "ящ."
ТОГДА "ящ.,"
ИНАЧЕ ""
КОНЕЦ + ВЫБОР
КОГДА ЕдиницыИзмерения.Наименование ПОДОБНО "мл"
ТОГДА "мл,"
ИНАЧЕ ""
КОНЕЦ + ВЫБОР
КОГДА ЕдиницыИзмерения.Наименование ПОДОБНО "т"
ТОГДА "т,"
ИНАЧЕ ""
КОНЕЦ + ВЫБОР
КОГДА ЕдиницыИзмерения.Наименование ПОДОБНО "ж/б/кв"
ТОГДА "ж/б/кв,"
ИНАЧЕ ""
КОНЕЦ + ВЫБОР
КОГДА ЕдиницыИзмерения.Наименование ПОДОБНО "ящ."
ТОГДА "ящ.,"
ИНАЧЕ ""
КОНЕЦ КАК ЕдиницыИзмерения,
Номенклатура.ЕдиницаИзмеренияМест.Коэффициент КАК Фасовка,
ЕдиницыИзмерения.Наименование КАК НаименованиеЕдиницыИзмерения
ИЗ
Справочник.Номенклатура КАК Номенклатура
ЛЕВОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ
ЕдиницыИзмерения.Вес КАК Вес,
Номенклатура.Ссылка КАК Ссылка1
ИЗ
Справочник.ЕдиницыИзмерения КАК ЕдиницыИзмерения
ЛЕВОЕ СОЕДИНЕНИЕ Справочник.Номенклатура КАК Номенклатура
ПО ЕдиницыИзмерения.Владелец = Номенклатура.Ссылка
ГДЕ
ЕдиницыИзмерения.Наименование ПОДОБНО "%блок%") КАК ВесБлока
ПО Номенклатура.Ссылка = ВесБлока.Ссылка1
ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ЕдиницыИзмерения КАК ЕдиницыИзмерения
ПО Номенклатура.ЕдиницаДляОтчетов = ЕдиницыИзмерения.Ссылка
И Номенклатура.ЕдиницаИзмеренияМест = ЕдиницыИзмерения.Ссылка
И Номенклатура.ЕдиницаХраненияОстатков = ЕдиницыИзмерения.Ссылка
ПО Номенклатура.ЕдиницаДляОтчетов = ЕдиницыИзмерения.Ссылка
И Номенклатура.ЕдиницаИзмеренияМест = ЕдиницыИзмерения.Ссылка
И Номенклатура.ЕдиницаХраненияОстатков = ЕдиницыИзмерения.Ссылка
проверьте. Вам же не только надо единицу для отчетов, но все
ВЫБРАТЬ
Номенклатура.Код,
Номенклатура.Артикул,
Номенклатура.Ссылка КАК Номенклатура,
Номенклатура.НаименованиеПолное,
Номенклатура.Паллетизация,
Номенклатура.БазоваяЕдиницаИзмерения.Ссылка,
Номенклатура.ЕдиницаДляОтчетов.Ссылка,
Номенклатура.ЕдиницаДляОтчетов.Вес,
Номенклатура.ЕдиницаДляОтчетов.ВесНетто,
ВесБлока.Вес КАК БруттоВесБлока,
Номенклатура.ЕдиницаИзмеренияМест.Вес КАК БруттоВесМеста,
Номенклатура.Родитель,
Номенклатура.ЕдиницаИзмеренияМест.Коэффициент КАК Фасовка,
ЕдиницыИзмерения.Наименование КАК НаименованиеЕдиницыИзмерения
ИЗ
Справочник.Номенклатура КАК Номенклатура
ЛЕВОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ
ЕдиницыИзмерения.Вес КАК Вес,
Номенклатура.Ссылка КАК Ссылка1
ИЗ
Справочник.ЕдиницыИзмерения КАК ЕдиницыИзмерения
ЛЕВОЕ СОЕДИНЕНИЕ Справочник.Номенклатура КАК Номенклатура
ПО ЕдиницыИзмерения.Владелец = Номенклатура.Ссылка) КАК ВесБлока
ПО Номенклатура.Ссылка = ВесБлока.Ссылка1
ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ЕдиницыИзмерения КАК ЕдиницыИзмерения
ПО Номенклатура.ЕдиницаДляОтчетов = ЕдиницыИзмерения.Ссылка
И Номенклатура.ЕдиницаИзмеренияМест = ЕдиницыИзмерения.Ссылка
И Номенклатура.ЕдиницаХраненияОстатков = ЕдиницыИзмерения.Ссылка
ПО Номенклатура.ЕдиницаДляОтчетов = ЕдиницыИзмерения.Ссылка
И Номенклатура.ЕдиницаИзмеренияМест = ЕдиницыИзмерения.Ссылка
И Номенклатура.ЕдиницаХраненияОстатков = ЕдиницыИзмерения.Ссылка
и сделайте
ПО Номенклатура.Ссылка = ЕдиницыИзмерения.Владелец
ВЫБРАТЬ
Номенклатура.Код,
Номенклатура.Артикул,
Номенклатура.Ссылка КАК Номенклатура,
Номенклатура.НаименованиеПолное,
Номенклатура.Паллетизация,
Номенклатура.БазоваяЕдиницаИзмерения.Ссылка,
Номенклатура.ЕдиницаДляОтчетов.Ссылка,
Номенклатура.ЕдиницаДляОтчетов.Вес,
Номенклатура.ЕдиницаДляОтчетов.ВесНетто,
ВесБлока.Вес КАК БруттоВесБлока,
Номенклатура.ЕдиницаИзмеренияМест.Вес КАК БруттоВесМеста,
Номенклатура.Родитель,
Номенклатура.ЕдиницаИзмеренияМест.Коэффициент КАК Фасовка,
ЕдиницыИзмерения.Наименование КАК НаименованиеЕдиницыИзмерения
ИЗ
Справочник.Номенклатура КАК Номенклатура
ЛЕВОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ
ЕдиницыИзмерения.Вес КАК Вес,
Номенклатура.Ссылка КАК Ссылка1
ИЗ
Справочник.ЕдиницыИзмерения КАК ЕдиницыИзмерения
ЛЕВОЕ СОЕДИНЕНИЕ Справочник.Номенклатура КАК Номенклатура
ПО ЕдиницыИзмерения.Владелец = Номенклатура.Ссылка) КАК ВесБлока
ПО Номенклатура.Ссылка = ВесБлока.Ссылка1
ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ЕдиницыИзмерения КАК ЕдиницыИзмерения
ПО Номенклатура.Ссылка = ЕдиницыИзмерения.Владелец
(42) я рекомендую вам из простого отчета, который получился, сделать ваш рабочий. Вы в текущем накрутили всякого и уже всего не помните, что добавляли.
(43)убрал соединение с вложенным запросом и дубли убрались, но мне нужен вложенный запрос.Не знаете как можно сделать?Вложенный запрос использую для того, чтобы получить единицу измерения "блок"
(43)получилось сделать без дублей.Просто сначала сделал левое соединение по спр. номенклатура и единицы измерения(ссылка=владелец), а потом но номенклатуре и вложенному запросу
ВЫБОР
КОГДА ЕдиницыИзмерения.Наименование ПОДОБНО "%шт"
ТОГДА "шт, "
ИНАЧЕ ""
КОНЕЦ + ВЫБОР
КОГДА ЕдиницыИзмерения.Наименование ПОДОБНО "%мест%"
ТОГДА "мест, "
ИНАЧЕ ""
КОНЕЦ + ВЫБОР
КОГДА ЕдиницыИзмерения.Наименование ПОДОБНО "%Служебный_Элемент_Ед%"
ТОГДА "Служебный_Элемент_Ед, "
ИНАЧЕ ""
КОНЕЦ + ВЫБОР
КОГДА ЕдиницыИзмерения.Наименование ПОДОБНО "%кг%"
ТОГДА "кг, "
ИНАЧЕ ""
КОНЕЦ + ВЫБОР
КОГДА ЕдиницыИзмерения.Наименование ПОДОБНО "%блок%"
ТОГДА "блок, "
ИНАЧЕ ""
КОНЕЦ + ВЫБОР
КОГДА ЕдиницыИзмерения.Наименование ПОДОБНО "пачка"
ТОГДА "пачка, "
ИНАЧЕ ""
КОНЕЦ + ВЫБОР
КОГДА ЕдиницыИзмерения.Наименование ПОДОБНО "кор"
ТОГДА "кор,"
ИНАЧЕ ""
КОНЕЦ + ВЫБОР
КОГДА ЕдиницыИзмерения.Наименование ПОДОБНО "кор."
ТОГДА "кор.,"
ИНАЧЕ ""
КОНЕЦ + ВЫБОР
КОГДА ЕдиницыИзмерения.Наименование ПОДОБНО "ящ."
ТОГДА "ящ."
ИНАЧЕ ""
Показать
я так просто поставил максимум, потому что , пока что все равно не использую