Вход | Регистрация


СКД-Отчет. Дублирование сумм

СКД-Отчет. Дублирование сумм
Я
   apprentice
 
02.10.17 - 14:20
Добрый день!
Делаю отчет в СКД, вот запрос
ВЫБРАТЬ
    ПродажаТоваровТовары.Номенклатура,
    ПродажаТоваровТовары.Количество,
    ПродажаТоваровТовары.Сумма,
    ОстаткиНоменклатурыОбороты.СуммаПриход КАК Приход,
ИЗ
    Документ.ПродажаТоваров.Товары КАК ПродажаТоваровТовары
        ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ОстаткиНоменклатуры.Обороты(&Дата1, &Дата2, , ) КАК ОстаткиНоменклатурыОбороты
        ПО ПродажаТоваровТовары.Номенклатура = ОстаткиНоменклатурыОбороты.Номенклатура
ГДЕ
    ПродажаТоваровТовары.Ссылка.Дата МЕЖДУ &Дата1 И &Дата2
    И ПродажаТоваровТовары.Ссылка.Проведен
В настройке делаю группировку по номенклатуре, все остальные поля перемещаю в ресурсы.
В итоге получается отчет, где выводится номенклатура, количество и сумма по продажам за определенный период(со сверткой по номенклатуре). В колонке приход должны быть затраты, т.е. сумма закупок товара.
То есть если за этот период по докам прихода(они пишут в регистр) закупили на 1000р, то там должно быть 1000. А выходит 1000*к, где к - количество документов продажи. То есть система считает для каждого документа продажи оборот приход 1000, а потом их суммирует. Как этого избежать?
 
 
   DrShad
 
1 - 02.10.17 - 14:22
писать запросы для наборов данных нормально
   apprentice
 
2 - 02.10.17 - 14:24
Спасиб, подскажи как научится?
   apprentice
 
3 - 02.10.17 - 14:24
Мануал бы
   DrShad
 
4 - 02.10.17 - 14:24
курсы Гилева смотри
   apprentice
 
5 - 02.10.17 - 14:46
А адекватный ответ может кто-то дать?
   DrShad
 
6 - 02.10.17 - 14:48
начнем с того что запросы к документам это зло
   apprentice
 
7 - 02.10.17 - 14:49
Увы, условие задания
   DrShad
 
8 - 02.10.17 - 14:51
задание в студию
   apprentice
 
9 - 02.10.17 - 14:54
Вообще должно быть не сильно сложно. Задача из методички введение в конфигурирование.решение оперативных задач.
Практикум №12       
К данному отчету необходимо добавить колонки с вычислением «Прибыли» (разница суммы продажи и списанной себестоимости) по каждому периоду. Для этого Вам придется в Запрос1 и Запрос2 получить по имеющимся там товарам еще поля со списанной себестоимостью (расход) из таблицы оборотов по регистру «ОстаткиНомеклатуры» (или из таблицы «ОстатковИОборотов»). Подсказка: лучше это делать посредством левого внешнего соединения.
   apprentice
 
10 - 02.10.17 - 14:54
Запрос к отчету, из методички
"ВЫБРАТЬ
 
|ИЗ
 
ПродажиТек.Номенклатура КАК Номенклатура, ПродажиТек.Номенклатура. Представление, СУММА(ПролажиТек.Количество) КАК КолТек, СУММА(ПродажиТек.Сумма) КАК СумТек, СУММА(О) КАК КолПред, СУММА(О) КАК СумПред, СУММА(О) КАК Ост
Документ.Расходная.Товары КАК ПродажиТек
 
|ГДЕ
|    ПродажиТек.Ссылка.Дата МЕЖДУ &ДатаН1 И&ДатаК1 И
|    ПродажиТек.Ссылка.Проведен = &Проведен
[СГРУППИРОВАТЬ ПО
|    ПродажиТек. Номенклатура
ОБЪЕДИНИТЬ ВСЕ
|
|ВЫБРАТЬ
|    Продажи Пред. Номенклатура,
]    ПродажиПред.Номенклатура.Представление,
|    СУММА(О),
|    СУММА(О),
|    СУММА(ПродажиПред.Количество),
|    СУММА(ПродажиПред.Сумма),
|    СУММА(О)
|ИЗ
Документ. Расходная. Товары КАК ПродажиПред
|ГДЕ
|    ПродажиПред.Ссылка.Дата МЕЖДУ &ДатаН2 И &ДатаК2 И
|    ПродажиПред.Ссылка.Проведен = &Проведен
|
СГРУППИРОВАТЬ ПО
|    ПродажиПред.Номенклатура
 
 
Решение задач анализа показателей движения. Использование реквизитов
регистра остатков и оборотных регистров
|ОБЪЕДИНИТЬ ВСЕ
|
|ВЫБРАТЬ
|    ОстаткиНоменклатурыОстатки. Номенклатура,
|    ОстаткиНоменклатурыОстатки.Номенклатура.Представление,
|    СУММА(О),
|    СУММА(О),
|    СУММА(О),
СУММА(О),
СУММА(ОстаткиНоменклатурыОстатки.КоличествоОстаток) |ИЗ
|    РегистрНакопления.ОстаткиНоменклатуры.Остатки&ДатаК],      )      КАК
ОстаткиНоменклатурыОстатки
|СГРУППИРОВАТЬ ПО
|    ОстаткиНоменклатурыОстатки.Номенклатура
(ИТОГИ ПО
|    ОБЩИЕ,
|          Номенклатура
 
 Рекламное место пустует
   DrShad
 
11 - 02.10.17 - 14:58
и в примере у тебя объединение, а ты делаешь соединение?
   apprentice
 
12 - 02.10.17 - 15:04
Ну во-первых так в подсказке к условию
Во вторых, в примере несколько запросов собраны в один, но даже если взять первый(Не объединять), ничего не меняется
   apprentice
 
13 - 02.10.17 - 15:05
Там выше неправильно вставилось, вот образец запроса

ВЫБРАТЬ
 
ПродажиТоваровТовары.Номенклатура КАК Номенклатура, ПродажиТоваровТовары.Количество КАК КолТек, ПродажиТоваровТовары.Сумма КАК СумТек, 
О КАК КолПред,
0 КАК СумПред,
О КАК ОстТек
 
ИЗ Документ.ПродажиТоваров.Товары КАК ПродажиТоваровТовары
 
|ГДЕ
|    ПродажиТоваровТовары.Ссылка.Дата МЕЖДУ &Дата1 И&Дата1 И
|    ПродажиТек.Ссылка.Проведен
   DrShad
 
14 - 02.10.17 - 15:06
что не меняется? у тебя принципиально разные выборки получаются
   apprentice
 
15 - 02.10.17 - 15:09
Так в том и проблема
Вот из табличной части документа выборка делается, и к ней надо прикрутить "поля со списанной себестоимостью (расход) из таблицы оборотов по регистру «ОстаткиНомеклатуры»".
   SerF_2011
 
16 - 02.10.17 - 15:11
(0) Попробуй пакетным запросом. Сначала выбери номенклатуру из доков, сгруппируй по номенклатуре и помести во временную таблицу. Вторым запросом в пакете временную таблицу соединяй с регистром.
   apprentice
 
17 - 02.10.17 - 15:28
Спасибо огромное  SerF_2011

Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.
Рекламное место пустует