Имя: Пароль:
1C
1С v8
Вычислить долю продаж номенклатуры в разрезе контрагентов
0 Lekh72
 
28.04.13
22:00
Как передать "Кол SKU в марке" во вторую таблицу?

                                       
Товарная марка            Кол SKU в марке                                        
BJ-GDB&S            48                                        
BJ–decor            338                                        
                                                   
                BJ-GDB&S         BJ–decor    
       Кол_SKU    Доля    Кол_SKU    Доля
Организация1    24    100,00    98    100,00
Организация2    7    100,00    12    100,00
Организация3    10    100,00    9    100,00

Запрос1

ВЫБРАТЬ
   взСвойстваТоварнаяМарка.Объект КАК Номенклатура,
   взСвойстваТоварнаяМарка.Значение КАК ТоварнаяМарка
ПОМЕСТИТЬ втТоварнаяМаркаНоменклатура
ИЗ
   (ВЫБРАТЬ
       ЗначенияСвойствОбъектов.Объект КАК Объект,
       ЗначенияСвойствОбъектов.Значение КАК Значение
   ИЗ
       РегистрСведений.ЗначенияСвойствОбъектов КАК ЗначенияСвойствОбъектов
   ГДЕ
       ЗначенияСвойствОбъектов.Свойство = ЗНАЧЕНИЕ(ПланВидовХарактеристик.СвойстваОбъектов.ТоварнаяМарка)) КАК взСвойстваТоварнаяМарка
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
   СпрНоменклатура.Ссылка КАК Номенклатура,
   втТоварнаяМаркаНоменклатура.ТоварнаяМарка КАК ТоварнаяМарка,
   КОЛИЧЕСТВО(РАЗЛИЧНЫЕ СпрНоменклатура.Ссылка) КАК КолСКЮпоТоварнаяМарка
ИЗ
   Справочник.Номенклатура КАК СпрНоменклатура
       ВНУТРЕННЕЕ СОЕДИНЕНИЕ втТоварнаяМаркаНоменклатура КАК втТоварнаяМаркаНоменклатура
       ПО СпрНоменклатура.Ссылка = втТоварнаяМаркаНоменклатура.Номенклатура

СГРУППИРОВАТЬ ПО
   СпрНоменклатура.Ссылка,
   втТоварнаяМаркаНоменклатура.ТоварнаяМарка

Запрос2

ВЫБРАТЬ
   ПродажиОбороты.Организация,
   ПродажиОбороты.Контрагент,
   ПродажиОбороты.Номенклатура,
   ПродажиОбороты.ХарактеристикаНоменклатуры,
   ПродажиОбороты.ДокументПродажи,
   ПродажиОбороты.ДокументПродажи.Ответственный КАК Ответственный,
   ВложенныйЗапрос.Команда,
   ПродажиОбороты.ДокументПродажи.Грузополучатель,
   КОЛИЧЕСТВО(РАЗЛИЧНЫЕ ПродажиОбороты.Номенклатура) КАК SKU
ИЗ
   РегистрНакопления.Продажи.Обороты(&НачалоПериода, &КонецПериода, Авто, ) КАК ПродажиОбороты
       ЛЕВОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ
           СоставКоманд.Команда КАК Команда,
           СоставКоманд.Ответственный КАК Ответственный,
           СоставКоманд.Организация КАК Организация,
           СоставКоманд.ВКоманде КАК ВКоманде
       ИЗ
           РегистрСведений.СоставКоманд КАК СоставКоманд
       ГДЕ
           СоставКоманд.ВКоманде = ИСТИНА) КАК ВложенныйЗапрос
       ПО ПродажиОбороты.Организация = ВложенныйЗапрос.Организация
           И ПродажиОбороты.ДокументПродажи.Ответственный = ВложенныйЗапрос.Ответственный

СГРУППИРОВАТЬ ПО
   ПродажиОбороты.Организация,
   ПродажиОбороты.Контрагент,
   ПродажиОбороты.Номенклатура,
   ПродажиОбороты.ХарактеристикаНоменклатуры,
   ПродажиОбороты.ДокументПродажи,
   ПродажиОбороты.ДокументПродажи.Ответственный,
   ВложенныйЗапрос.Команда,
   ПродажиОбороты.ДокументПродажи.Грузополучатель
{ХАРАКТЕРИСТИКИ
   ТИП(Справочник)
   ВИДЫХАРАКТЕРИСТИК ПланВидовХарактеристик.СвойстваОбъектов
   ПОЛЕКЛЮЧА Ссылка
   ПОЛЕИМЕНИ Наименование
   ПОЛЕТИПАЗНАЧЕНИЯ ТипЗначения
   ЗНАЧЕНИЯХАРАКТЕРИСТИК РегистрСведений.ЗначенияСвойствОбъектов
   ПОЛЕОБЪЕКТА Объект
   ПОЛЕВИДА Свойство
   ПОЛЕЗНАЧЕНИЯ Значение }
{ХАРАКТЕРИСТИКИ
   ТИП(Справочник)
   ВИДЫХАРАКТЕРИСТИК Справочник.КатегорииОбъектов
   ПОЛЕКЛЮЧА Ссылка
   ПОЛЕИМЕНИ Наименование
   ПОЛЕТИПАЗНАЧЕНИЯ НазначениеКатегории
   ЗНАЧЕНИЯХАРАКТЕРИСТИК РегистрСведений.КатегорииОбъектов
   ПОЛЕОБЪЕКТА Объект
   ПОЛЕВИДА Категория }
1 Aprobator
 
28.04.13
22:09
Воскресный ребус.
2 Lekh72
 
28.04.13
22:17
)) не знал как сформулировать. Суть вот в чем. В первом запросе собираю количество номенклатуры входящее в товарные марки. Это выводится в первой таблице. Во второй я высчитываю сколько СКЮ из торговой марки было продано клиенту. Не могу понять как мне вытянуть данные из первой таблицы, т.е. сколько всего СКЮ входит в товарную марку.
3 Lekh72
 
28.04.13
22:21
т.е. мне надо получить КолСКЮпоТоварнаяМарка на уровне группировки именно по товарной марке, а во второй таблице запрос рассчитывает этот ресурс уже в разрезе клиент/товарная марка, т.е. он получается равен полю SKU
4 Aprobator
 
28.04.13
22:34
Насколько я понял -тут СКД. Посему второй набор данных и вычисляемое поле.
5 Lekh72
 
28.04.13
22:39
Да делал я вычисляемое поле, но стандартными функциями "запрос рассчитывает этот ресурс уже в разрезе клиент/товарная марка, т.е. он получается равен полю SKU"
6 Lekh72
 
28.04.13
22:42
Поэтому у меня вопрос, как можно в СКД получить ресурс группировки определенного уровня. Пробовал и ВЫЧИСЛИТЬВЫРАЖЕНИЕ(), но толи что-то не так задаю, все равно получаю значение равное SKU.
7 Нуф-Нуф
 
28.04.13
22:48
Покури анализ данных. Там много интересного
8 КапЛей
 
28.04.13
22:51
(7) уточню. АВС-анализ тут чистой воды.
9 Lekh72
 
28.04.13
22:53
А где курить?
10 Lekh72
 
28.04.13
23:01
Я 8-ке еще только учусь. Но мне кажется что тут должно быть какое-то тривиальное решение. Может я просто не умею пользоваться ВычислитьВыражение() или ВычислитьВыражениеСГруппировкойМассив(). На мой взгляд это что-то из этой серии.
11 Lekh72
 
29.04.13
09:40
Ап
12 Lekh72
 
29.04.13
12:44
Вроде уже и не воскресенье... )