Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
22 ноя 2024, 12:30

Прошу помочь найти ошибку в запросе.

Автор mila1231, 09 ноя 2018, 09:29

0 Пользователей и 1 гость просматривают эту тему.

mila1231

Не могу понять почему в запросе не всегда выбирается последнее поступление.Собственно задача стоит такая взять номенклатуру и реализации с её ценой и сравнить с номенклатурой из поступления(а именно последнего поступления). Т.е запрос отрабатывается, но почему-то на одной номенклатуре ну не в какую не хочет. Подскажите что не так. Скидываю весь запрос, но ошибка во втором запросе, который сохраняется во временную таблицу Поступление.
ВЫБРАТЬ
РеализацияТоваровУслугТовары.Ссылка КАК Ссылка,
РеализацияТоваровУслугТовары.Ссылка.Дата КАК Дата,
РеализацияТоваровУслугТовары.Ссылка.Контрагент КАК Контрагент,
РеализацияТоваровУслугТовары.Ссылка.СуммаДокумента КАК СуммаДокумента,
РеализацияТоваровУслугТовары.Номенклатура КАК Номенклатура,
РеализацияТоваровУслугТовары.Количество КАК Количество,
РеализацияТоваровУслугТовары.Цена КАК Цена,
РеализацияТоваровУслугТовары.Сумма КАК Сумма
ПОМЕСТИТЬ реализацитя
ИЗ
Документ.РеализацияТоваровУслуг.Товары КАК РеализацияТоваровУслугТовары
ГДЕ
РеализацияТоваровУслугТовары.Ссылка.Контрагент = &контрагент
И РеализацияТоваровУслугТовары.Ссылка.Дата МЕЖДУ &ДатаОт И &ДатаДо
;

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

СГРУППИРОВАТЬ ПО
ПоступлениеТоваровУслугТовары.Номенклатура) КАК ВложенныйЗапрос
ПО ПоступлениеТоваровУслугТовары.Номенклатура = ВложенныйЗапрос.Номенклатура
И ПоступлениеТоваровУслугТовары.Ссылка.Дата = ВложенныйЗапрос.Дата
ГДЕ
ПоступлениеТоваровУслугТовары.Ссылка.Дата <= &ДатаДо

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

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
реализацитя.Ссылка КАК Ссылка,
реализацитя.Дата КАК Дата,
реализацитя.Контрагент КАК Контрагент,
реализацитя.СуммаДокумента КАК СуммаДокумента,
реализацитя.Номенклатура КАК Номенклатура,
реализацитя.Количество КАК Количество,
реализацитя.Цена КАК Цена,
реализацитя.Сумма КАК Сумма,
поступление.Ссылка КАК Ссылка1,
поступление.Номенклатура КАК Номенклатура1,
поступление.Количество КАК Количество1,
поступление.Цена КАК Цена1,
поступление.Сумма КАК Сумма1,
поступление.Дата КАК Дата1,
реализацитя.Количество * реализацитя.Цена - реализацитя.Количество * поступление.Цена КАК Разница
ИЗ
реализацитя КАК реализацитя
ВНУТРЕННЕЕ СОЕДИНЕНИЕ Поступление КАК поступление
ПО реализацитя.Номенклатура = поступление.Номенклатура

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

Заранее спасибо.

mila1231

в итоге разобралась спасибо.
ВЫБРАТЬ
РеализацияТоваровУслугТовары.Ссылка КАК Ссылка,
РеализацияТоваровУслугТовары.Ссылка.Дата КАК Дата,
РеализацияТоваровУслугТовары.Ссылка.Контрагент КАК Контрагент,
РеализацияТоваровУслугТовары.Ссылка.СуммаДокумента КАК СуммаДокумента,
РеализацияТоваровУслугТовары.Номенклатура КАК Номенклатура,
РеализацияТоваровУслугТовары.Количество КАК Количество,
РеализацияТоваровУслугТовары.Цена КАК Цена,
РеализацияТоваровУслугТовары.Сумма КАК Сумма
ПОМЕСТИТЬ реализацитя
ИЗ
Документ.РеализацияТоваровУслуг.Товары КАК РеализацияТоваровУслугТовары
ГДЕ
РеализацияТоваровУслугТовары.Ссылка.Контрагент = &контрагент
И РеализацияТоваровУслугТовары.Ссылка.Дата МЕЖДУ &ДатаОт И &ДатаДо
;

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

СГРУППИРОВАТЬ ПО
ПоступлениеТоваровУслугТовары.Номенклатура) КАК ВложенныйЗапрос
ПО ПоступлениеТоваровУслугТовары.Номенклатура = ВложенныйЗапрос.Номенклатура
И ПоступлениеТоваровУслугТовары.Ссылка.Дата = ВложенныйЗапрос.Дата
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
реализацитя.Ссылка КАК Ссылка,
реализацитя.Дата КАК Дата,
реализацитя.Контрагент КАК Контрагент,
реализацитя.СуммаДокумента КАК СуммаДокумента,
реализацитя.Номенклатура КАК Номенклатура,
реализацитя.Количество КАК Количество,
реализацитя.Цена КАК Цена,
реализацитя.Сумма КАК Сумма,
поступление.Ссылка КАК Ссылка1,
поступление.Номенклатура КАК Номенклатура1,
поступление.Количество КАК Количество1,
поступление.Цена КАК Цена1,
поступление.Сумма КАК Сумма1,
поступление.Дата КАК Дата1,
реализацитя.Количество * реализацитя.Цена - реализацитя.Количество * поступление.Цена КАК Разница
ИЗ
реализацитя КАК реализацитя
ЛЕВОЕ СОЕДИНЕНИЕ Поступление КАК поступление
ПО реализацитя.Номенклатура = поступление.Номенклатура

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

LexaK

вообще такие отчеты Анализ продаж, строятся на данных регистров накопления (знаете что это такое и для чего?)
1.а в том что вы строите, элементарная ошибка мультиплицирования может быть, Поступления вы собираете на максимальную дату и при этом группируете по Цене/Сумме, допустим в один день вы купили один товар по нескольким разным ценам, вас будет 2,3, записи Товар - разная цена.
2.Реализации вы берете все за какойто период а цену покупи только последнюю
т.е. вы что-то продали 10 числа а цену/себестоимость подставляете того того что купили 30 числа последнего месяца (как пример)
если помогло нажмите: Спасибо!

mila1231

Цитата: LexaK от 09 ноя 2018, 10:09
вообще такие отчеты Анализ продаж, строятся на данных регистров накопления (знаете что это такое и для чего?)
1.а в том что вы строите, элементарная ошибка мультиплицирования может быть, Поступления вы собираете на максимальную дату и при этом группируете по Цене/Сумме, допустим в один день вы купили один товар по нескольким разным ценам, вас будет 2,3, записи Товар - разная цена.
2.Реализации вы берете все за какойто период а цену покупи только последнюю
т.е. вы что-то продали 10 числа а цену/себестоимость подставляете того того что купили 30 числа последнего месяца (как пример)
Я думала на основе Регистров бухгалтерии,т.к мне же не только продажи нужны, но и покупки но там если честно , то я с субконто запуталась, но буду разбираться. Тут на основе документов я поправила с датами, в итоге более ли менее результат я получаю.
Дальше буду думать с регистрами, но если вам не сложно подсказать на основании каких вы бы эту задачу решали?

LexaK

э-э-э, какая у вас база и какие у вас регистры я же не знаю :dfbsdfbsdf:
если помогло нажмите: Спасибо!

mila1231

Цитата: LexaK от 09 ноя 2018, 11:00
э-э-э, какая у вас база и какие у вас регистры я же не знаю :dfbsdfbsdf:
Бухгалтерия 3,0, без каких -либо изменений.

LexaK

так там отчетов, и по продажам и по закупкам и с себестоимостью и др. полным полно!
если помогло нажмите: Спасибо!

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск