Имя: Пароль:
1C
1С v8
Свернуть товар в запросе
0 pups777
 
19.02.19
15:44
Добрый день подскажите такую штуку.

ВЫБРАТЬ
СпрНоменклатура.Ссылка КАК Товар,
СпрНоменклатура.Артикул КАК Артикул,
ТоварыНаСкладахОстатки.Номенклатура КАК Номенклатура,
ТоварыНаСкладахОстатки.ХарактеристикаНоменклатуры КАК ХарактеристикаНоменклатуры,
ЦеныНоменклатурыСрезПоследних.Цена КАК Розничная,
    ВЫБОР
            КОГДА ТоварыНаСкладахОстатки.ХарактеристикаНоменклатуры.Наименование="Да"
             ТОГДА ТоварыНаСкладахОстатки.КоличествоОстаток
    КОНЕЦ Как Импорт,
    ВЫБОР
            КОГДА ТоварыНаСкладахОстатки.ХарактеристикаНоменклатуры=Значение(Справочник.ХарактеристикиНоменклатуры.ПустаяСсылка)
             ТОГДА ТоварыНаСкладахОстатки.КоличествоОстаток
    КОНЕЦ Как НеИмпорт,
СУММА(ЕСТЬNULL(ТоварыНаСкладахОстатки.КоличествоОстаток, 0)) КАК Остаток
ИЗ
Справочник.Номенклатура КАК СпрНоменклатура

ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ТоварыНаСкладах.Остатки(, ) КАК ТоварыНаСкладахОстатки
ПО (ТоварыНаСкладахОстатки.Номенклатура = СпрНоменклатура.Ссылка)
ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЦеныНоменклатуры.СрезПоследних(, ТипЦен = &ТипЦен) КАК ЦеныНоменклатурыСрезПоследних
ПО (ЦеныНоменклатурыСрезПоследних.Номенклатура = СпрНоменклатура.Ссылка)

СГРУППИРОВАТЬ ПО
СпрНоменклатура.Ссылка,
ТоварыНаСкладахОстатки.Номенклатура,
ТоварыНаСкладахОстатки.ХарактеристикаНоменклатуры,
ЦеныНоменклатурыСрезПоследних.Цена,
ТоварыНаСкладахОстатки.КоличествоОстаток


без этого:

    ВЫБОР
            КОГДА ТоварыНаСкладахОстатки.ХарактеристикаНоменклатуры.Наименование="Да"
             ТОГДА ТоварыНаСкладахОстатки.КоличествоОстаток
    КОНЕЦ Как Импорт,
    ВЫБОР
            КОГДА ТоварыНаСкладахОстатки.ХарактеристикаНоменклатуры=Значение(Справочник.ХарактеристикиНоменклатуры.ПустаяСсылка)
             ТОГДА ТоварыНаСкладахОстатки.КоличествоОстаток
    КОНЕЦ Как НеИмпорт,


в отчет выводит свернутую Номенклатуру.а с выбором бьет по строкам.то-есть 2 строки в одной импорт стоит количество а ниже тот же товар но без характеристик.
ВОПРОС.как одной строкой вывести?Спасибо
1 pups777
 
19.02.19
15:45
Например из
Товар 1234      Импорт 2
Товар 1234      НеИмпорт-25

Получить
Товар 1234 Импорт 2  НеИмпорт 25   Остаток 27
2 Aleksandr N
 
19.02.19
15:46
Агрегатной функцией.
3 RomanYS
 
19.02.19
15:46
сумма(ВЫБОР
            КОГДА ТоварыНаСкладахОстатки.ХарактеристикаНоменклатуры.Наименование="Да"
             ТОГДА ТоварыНаСкладахОстатки.КоличествоОстаток
    КОНЕЦ) Как Импорт,
4 pups777
 
19.02.19
15:48
(2)можно пример
5 pups777
 
19.02.19
15:48
(3)все равно 2 строки
6 RomanYS
 
19.02.19
15:50
(5) ТоварыНаСкладахОстатки.КоличествоОстаток из сгруппировать убери
7 pups777
 
19.02.19
15:53
ругается что поле не входит в группу
8 pups777
 
19.02.19
15:54
ТоварыНаСкладахОстатки.КоличествоОстаток
9 RomanYS
 
19.02.19
15:54
(7) так в твоем запросе нет такого поля. Если есть - делай сумма()
10 lubitelxml
 
19.02.19
15:55
(7) ты его (кол-во) в СУММА оберни, остальные поля в СГРУППИРОВАТЬ ПО
11 zladenuw
 
19.02.19
15:55
сделай 2 запроса через объединение. где в 1 импорт. во втором нет 2.
все это во временную таблицу и группируй уже ее.
12 pups777
 
19.02.19
20:43
хотелось бы поднять тему.Делаю объединение .Все это в СКД.ошибок нет но отсутствует ПОЛЕ НеИмпорт в Наборе данных

ВЫБРАТЬ
СпрНоменклатура.Ссылка КАК Товар,
СпрНоменклатура.Артикул КАК Артикул,
ТоварыНаСкладахОстатки.Номенклатура КАК Номенклатура,
ТоварыНаСкладахОстатки.ХарактеристикаНоменклатуры КАК ХарактеристикаНоменклатуры,
ЦеныНоменклатурыСрезПоследних.Цена КАК Розничная,
    Сумма(ВЫБОР
            КОГДА ТоварыНаСкладахОстатки.ХарактеристикаНоменклатуры.Наименование="Да"
             ТОГДА ТоварыНаСкладахОстатки.КоличествоОстаток
    КОНЕЦ) Как Импорт
ИЗ
Справочник.Номенклатура КАК СпрНоменклатура

ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ТоварыНаСкладах.Остатки(, ) КАК ТоварыНаСкладахОстатки
ПО (ТоварыНаСкладахОстатки.Номенклатура = СпрНоменклатура.Ссылка)
ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЦеныНоменклатуры.СрезПоследних(, ТипЦен = &ТипЦен) КАК ЦеныНоменклатурыСрезПоследних
ПО (ЦеныНоменклатурыСрезПоследних.Номенклатура = СпрНоменклатура.Ссылка)

СГРУППИРОВАТЬ ПО
СпрНоменклатура.Ссылка,
ТоварыНаСкладахОстатки.Номенклатура,
ТоварыНаСкладахОстатки.ХарактеристикаНоменклатуры,
ЦеныНоменклатурыСрезПоследних.Цена

ОБЪЕДИНИТЬ

ВЫБРАТЬ
СпрНоменклатура.Ссылка КАК Товар,
СпрНоменклатура.Артикул КАК Артикул,
ТоварыНаСкладахОстатки.Номенклатура КАК Номенклатура,
ТоварыНаСкладахОстатки.ХарактеристикаНоменклатуры КАК ХарактеристикаНоменклатуры,
ЦеныНоменклатурыСрезПоследних.Цена КАК Розничная,
Сумма(ВЫБОР
    КОГДА ТоварыНаСкладахОстатки.ХарактеристикаНоменклатуры=Значение(Справочник.ХарактеристикиНоменклатуры.ПустаяСсылка)
     ТОГДА ТоварыНаСкладахОстатки.КоличествоОстаток
КОНЕЦ) Как НеИмпорт
ИЗ
Справочник.Номенклатура КАК СпрНоменклатура

ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ТоварыНаСкладах.Остатки(, ) КАК ТоварыНаСкладахОстатки
ПО (ТоварыНаСкладахОстатки.Номенклатура = СпрНоменклатура.Ссылка)
ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЦеныНоменклатуры.СрезПоследних(, ТипЦен = &ТипЦен) КАК ЦеныНоменклатурыСрезПоследних
ПО (ЦеныНоменклатурыСрезПоследних.Номенклатура = СпрНоменклатура.Ссылка)

СГРУППИРОВАТЬ ПО
СпрНоменклатура.Ссылка,
ТоварыНаСкладахОстатки.Номенклатура,
ТоварыНаСкладахОстатки.ХарактеристикаНоменклатуры,
ЦеныНоменклатурыСрезПоследних.Цена
13 pups777
 
19.02.19
20:43
есть только поле импорт
14 pups777
 
19.02.19
20:49
(10)Огромное вам спасибо!
Кaк может человек ожидaть, что его мольбaм о снисхождении ответит тот, кто превыше, когдa сaм он откaзывaет в милосердии тем, кто ниже его? Петр Трубецкой