ВЫБРАТЬ
ТоварыВРозницеОстаткиИОбороты.Склад КАК Контрагент,
СУММА(ТоварыВРозницеОстаткиИОбороты.КоличествоНачальныйОстаток) КАК КоличествоНачальныйОстаток,
СУММА(ТоварыВРозницеОстаткиИОбороты.КоличествоПриход) КАК КоличествоПриход,
*****
СУММА(ПродажиОбороты.КоличествоОборот) КАК ПродажиКолОборот,
СУММА(ПродажиОбороты.СтоимостьОборот) КАК ПродажиСтоимостьОборот
ИЗ
РегистрНакопления.ТоварыВРознице.ОстаткиИОбороты({(&НачалоПериода)}, {(&КонецПериода)}, , , ) КАК ТоварыВРозницеОстаткиИОбороты
ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.Продажи.Обороты({(&НачалоПериода)}, {(&КонецПериода)}, , ) КАК ПродажиОбороты
ПО ТоварыВРозницеОстаткиИОбороты.Номенклатура = ПродажиОбороты.Номенклатура
ГДЕ
ТоварыВРозницеОстаткиИОбороты.Склад.Наименование ПОДОБНО "[ТРЦ]%"
СГРУППИРОВАТЬ ПО
ТоварыВРозницеОстаткиИОбороты.Склад
ПоказатьВ данный момент правильно выдает по таблице ТоварыВРозницеОстаткиИОбороты. а ПродажиОбороты.КоличествоОборот и ПродажиОбороты.СтоимостьОборот - выдает не правильно.
Как сделать правильно?
Найденные решения
(8) с учетом этого, выкиньте на мороз все серии, хар-ки и т.д., а также регистр продаж.
Добавьте в вирт. таблицу периодичность по регистратору, а в поля выборки что-то типа
Кол-во аналогично.
Добавьте в вирт. таблицу периодичность по регистратору, а в поля выборки что-то типа
выбор когда регистр.Регистратор ссылка документ.ОтчетОРознПрод тогда
СуммаПродажная
Иначе
0
Конец КАК СуммаПрод
Кол-во аналогично.
ВЫБОР
КОГДА ПродажиОбороты.Регистратор ССЫЛКА Документ.ОтчетОРозничныхПродажах
ТОГДА ПродажиОбороты.Регистратор.Склад
КОГДА ПродажиОбороты.Регистратор ССЫЛКА Документ.ВозвратТоваровОтПокупателя
ТОГДА ПродажиОбороты.Регистратор.СкладОрдер
ИНАЧЕ ЛОЖЬ
КОНЕЦ КАК Склад
СУММА(ВЫБОР
КОГДА ПродажиОбороты.Регистратор ССЫЛКА Документ.ОтчетОРозничныхПродажах
ТОГДА ПродажиОбороты.КоличествоОборот
КОГДА ПродажиОбороты.Регистратор ССЫЛКА Документ.ВозвратТоваровОтПокупателя
ТОГДА ПродажиОбороты.КоличествоОборот
ИНАЧЕ 0
КОНЕЦ) КАК ПродажиКоличествоОборот,
ПоказатьСработало так, проанализоровала базу - кроме Возвратов и Очетов по розничной точке ничего не проходит.
Спасибо.
Остальные ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
(1) как минимум - добавить в условие связи Склад, что-то типа
(код выше только для примера).
Аналогично, если у вас используются серии / хар-ки / качества - то и связи по ним.
Кстати, ваше условие в ГДЕ лучше запихать в параметры вирт. табл. и задать как
И ТоварыВРозницеОстаткиИОбороты.Склад = ПродажиОбороты.ДокументПродажи.Склад
(код выше только для примера).
Аналогично, если у вас используются серии / хар-ки / качества - то и связи по ним.
Кстати, ваше условие в ГДЕ лучше запихать в параметры вирт. табл. и задать как
Склад В
(ВЫБРАТЬ
Склады.Ссылка
ИЗ
Справочник.Склады КАК Склады
ГДЕ
Склады.Наименование ПОДОБНО "\[ТРЦ\]%" СПЕЦСИМВОЛ "\")
(4)
вот если делать так.... то результат по таблице Продажи правильный и по кол-ву и по деньгам, а по таблице ТоварыВРозницеОстаткиИОбороты не верный (задваивает? затраивает, не важно)
как минимум - добавить в условие связи Склад, что-то типа
И ТоварыВРозницеОстаткиИОбороты.Склад = ПродажиОбороты.ДокументПродажи.Склад
И ТоварыВРозницеОстаткиИОбороты.Склад = ПродажиОбороты.ДокументПродажи.Склад
вот если делать так.... то результат по таблице Продажи правильный и по кол-ву и по деньгам, а по таблице ТоварыВРозницеОстаткиИОбороты не верный (задваивает? затраивает, не важно)
Правильно ли я делаю вывод - проблема в том, что измерения Склад нет в рег накоп Продажи.
ТоварыВРознице Измерения Склад Номенклатура Характеристика Серия Качество
Продажи Измерения Номенклатура Характеристика ЗаказПокупателя ДоговорКонтрагента ДокументПродажи Подразделение Организация Контрагент
ТоварыВРознице Измерения Склад Номенклатура Характеристика Серия Качество
Продажи Измерения Номенклатура Характеристика ЗаказПокупателя ДоговорКонтрагента ДокументПродажи Подразделение Организация Контрагент
Добрый день!
Данные по продажам поместите во временную таблицу.
И уже временную таблицу соединяйте с основной.
Должно быть, что-то вида (собрал на "коленке"):
Данные по продажам поместите во временную таблицу.
И уже временную таблицу соединяйте с основной.
Должно быть, что-то вида (собрал на "коленке"):
ВЫБРАТЬ
ПродажиОбороты.Номенклатура,
СУММА(ПродажиОбороты.КоличествоОборот) КАК ПродажиКолОборот,
СУММА(ПродажиОбороты.СтоимостьОборот) КАК ПродажиСтоимостьОборот
ПОМЕСТИТЬ ВТ_ДанныеПоПродажам
Из
РегистрНакопления.Продажи.Обороты({(&НачалоПериода)}, {(&КонецПериода)}, , ) КАК ПродажиОбороты
СГРУППИРОВАТЬ ПО
ПродажиОбороты.Номенклатура
;
//////////////////////////////////////////////////////////// ////
ВЫБРАТЬ
ТоварыВРозницеОстаткиИОбороты.Склад КАК Контрагент,
СУММА(ТоварыВРозницеОстаткиИОбороты.КоличествоНачальныйОстаток) КАК КоличествоНачальныйОстаток,
СУММА(ТоварыВРозницеОстаткиИОбороты.КоличествоПриход) КАК КоличествоПриход,
*****
ПродажиОбороты.КоличествоОборот КАК ПродажиКолОборот,
ПродажиОбороты.СтоимостьОборот КАК ПродажиСтоимостьОборот
ИЗ
РегистрНакопления.ТоварыВРознице.ОстаткиИОбороты({(&НачалоПериода)}, {(&КонецПериода)}, , , ) КАК ТоварыВРозницеОстаткиИОбороты
ЛЕВОЕ СОЕДИНЕНИЕ ВТ_ДанныеПоПродажам КАК ПродажиОбороты
ПО ТоварыВРозницеОстаткиИОбороты.Номенклатура = ПродажиОбороты.Номенклатура
ГДЕ
ТоварыВРозницеОстаткиИОбороты.Склад.Наименование ПОДОБНО "[ТРЦ]%"
СГРУППИРОВАТЬ ПО
ТоварыВРозницеОстаткиИОбороты.Склад,
*****
ПродажиОбороты.КоличествоОборот,
ПродажиОбороты.СтоимостьОборот
Показать
(8) с учетом этого, выкиньте на мороз все серии, хар-ки и т.д., а также регистр продаж.
Добавьте в вирт. таблицу периодичность по регистратору, а в поля выборки что-то типа
Кол-во аналогично.
Добавьте в вирт. таблицу периодичность по регистратору, а в поля выборки что-то типа
выбор когда регистр.Регистратор ссылка документ.ОтчетОРознПрод тогда
СуммаПродажная
Иначе
0
Конец КАК СуммаПрод
Кол-во аналогично.
Суть Вашей проблемы простая.
Есть первая таблица с определенным набором измерений.
Есть вторая таблица со своим набором измерений, с первой пересекается по одному измерению.
При левом (правом) соединении происходит умножение первой таблицы на вторую по условиям соединения.
Так как в Вашем примере по продажам получается одна номенклатура - один набор показателей [Количество, Сумма].
То эти данные "приклеиваются" к соответствующим строкам таблицы "ТоварыВРозницеОстаткиИОбороты".
Получается таблицы:
Таблица продаж:
Номенклатура ПродажиКолОборот ПродажиСтоимостьОборот
Ном. 1_______________1____________________10
Ном. 2_______________2____________________15
Итоговая таблица с соединением
Склад Номенклатура .... Нач. остаток Приход .... ПродажиКолОборот ПродажиСтоимостьОборот
скл.1 Ном. 1_______________________________________________1___________ _________10
скл.2 Ном. 1_______________________________________________1___________ _________10
скл.1 Ном. 2_______________________________________________2___________ _________15
скл.3 Ном. 2_______________________________________________2___________ _________15
скл.4 Ном. 2_______________________________________________2___________ _________15
Дальнейшее суммирование по данным продаж в итоговой таблице, естественно приведет к неверным данным.
Если нужны данные в разрезе складов, то запрос, возможно, нужен такой (группировка только по полю "Склад"):
Есть первая таблица с определенным набором измерений.
Есть вторая таблица со своим набором измерений, с первой пересекается по одному измерению.
При левом (правом) соединении происходит умножение первой таблицы на вторую по условиям соединения.
Так как в Вашем примере по продажам получается одна номенклатура - один набор показателей [Количество, Сумма].
То эти данные "приклеиваются" к соответствующим строкам таблицы "ТоварыВРозницеОстаткиИОбороты".
Получается таблицы:
Таблица продаж:
Номенклатура ПродажиКолОборот ПродажиСтоимостьОборот
Ном. 1_______________1____________________10
Ном. 2_______________2____________________15
Итоговая таблица с соединением
Склад Номенклатура .... Нач. остаток Приход .... ПродажиКолОборот ПродажиСтоимостьОборот
скл.1 Ном. 1_______________________________________________1___________
скл.2 Ном. 1_______________________________________________1___________
скл.1 Ном. 2_______________________________________________2___________
скл.3 Ном. 2_______________________________________________2___________
скл.4 Ном. 2_______________________________________________2___________
Дальнейшее суммирование по данным продаж в итоговой таблице, естественно приведет к неверным данным.
Если нужны данные в разрезе складов, то запрос, возможно, нужен такой (группировка только по полю "Склад"):
ВЫБРАТЬ
ПродажиОбороты.ДокументПродажи.Склад КАК Склад,
СУММА(ПродажиОбороты.КоличествоОборот) КАК ПродажиКолОборот,
СУММА(ПродажиОбороты.СтоимостьОборот) КАК ПродажиСтоимостьОборот
ПОМЕСТИТЬ ВТ_ДанныеПоПродажам
Из
РегистрНакопления.Продажи.Обороты({(&НачалоПериода)}, {(&КонецПериода)}, , ) КАК ПродажиОбороты
СГРУППИРОВАТЬ ПО
ПродажиОбороты.ДокументПродажи.Склад
//Для примера пойдет, но по-хорошему нужно стараться не использовать получение значения более чем через одну точку.
;
//////////////////////////////////////////////////////////// ////
ВЫБРАТЬ
ТоварыВРозницеОстаткиИОбороты.Склад КАК Контрагент,
СУММА(ТоварыВРозницеОстаткиИОбороты.КоличествоНачальныйОстаток) КАК КоличествоНачальныйОстаток,
СУММА(ТоварыВРозницеОстаткиИОбороты.КоличествоПриход) КАК КоличествоПриход,
*****
СУММА(ПродажиОбороты.КоличествоОборот) КАК ПродажиКолОборот,
СУММА(ПродажиОбороты.СтоимостьОборот) КАК ПродажиСтоимостьОборот
ИЗ
РегистрНакопления.ТоварыВРознице.ОстаткиИОбороты({(&НачалоПериода)}, {(&КонецПериода)}, , , ) КАК ТоварыВРозницеОстаткиИОбороты
ЛЕВОЕ СОЕДИНЕНИЕ ВТ_ДанныеПоПродажам КАК ПродажиОбороты
ПО ТоварыВРозницеОстаткиИОбороты.Склад = ПродажиОбороты.Склад
ГДЕ
ТоварыВРозницеОстаткиИОбороты.Склад.Наименование ПОДОБНО "[ТРЦ]%"
СГРУППИРОВАТЬ ПО
ТоварыВРозницеОстаткиИОбороты.Склад
ПоказатьВЫБОР
КОГДА ПродажиОбороты.Регистратор ССЫЛКА Документ.ОтчетОРозничныхПродажах
ТОГДА ПродажиОбороты.Регистратор.Склад
КОГДА ПродажиОбороты.Регистратор ССЫЛКА Документ.ВозвратТоваровОтПокупателя
ТОГДА ПродажиОбороты.Регистратор.СкладОрдер
ИНАЧЕ ЛОЖЬ
КОНЕЦ КАК Склад
СУММА(ВЫБОР
КОГДА ПродажиОбороты.Регистратор ССЫЛКА Документ.ОтчетОРозничныхПродажах
ТОГДА ПродажиОбороты.КоличествоОборот
КОГДА ПродажиОбороты.Регистратор ССЫЛКА Документ.ВозвратТоваровОтПокупателя
ТОГДА ПродажиОбороты.КоличествоОборот
ИНАЧЕ 0
КОНЕЦ) КАК ПродажиКоличествоОборот,
ПоказатьСработало так, проанализоровала базу - кроме Возвратов и Очетов по розничной точке ничего не проходит.
Спасибо.
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот