Помогите с доработкой запроса (БП 3.0) #765690


#0 by BBDragon
Хочу сделать небольшой отчет на СКД, где отбором по номенклатуре выводится дата поступления товара, склад, контрагент, цена, количество, сумма и все дальнейшие перемещения товара по складам. Первую часть я выполнил с помощью запроса по документам поступления ВЫБРАТЬ ПоступлениеТоваровУслуг.Склад, ПоступлениеТоваровУслуг.Контрагент, ПоступлениеТоваровУслуг.Товары.( Номенклатура, Цена, Количество, Сумма ), ПоступлениеТоваровУслуг.Дата ИЗ Документ.ПоступлениеТоваровУслуг КАК ПоступлениеТоваровУслуг Здесь путем отбора по номенклатуре я получаю дату ее поступления, склад, имя контрагента, количество и общую сумму. Далее мне необходимо отыскать все перемещения данного товара. Второй запрос по перемещениям товаров: ПеремещениеТоваров.СкладОтправитель, ПеремещениеТоваров.СкладПолучатель, ПеремещениеТоваров.Товары.Номенклатура, ПеремещениеТоваров.Товары.Количество, ПеремещениеТоваров.Дата ИЗ Документ.ПеремещениеТоваров КАК ПеремещениеТоваров Вот здесь необходимо использовать полученные уже ранее (из первого запроса) наименование и цену номенклатуры, дабы имея количество, можно было вычислять сумму. Подскажите, пожалуйста, как теперь правильно передать полученные данные из первого запроса во второй и после всего вывести уже все данные в итоговой таблице.
#1 by BBDragon
Перепробовал разные варианты, пробовал через связь наборов данных, так ничего путного и не получается. Запросы самое сложное место пока для меня, туго идет дело. Подскажите, пожалуйста, как же все-таки правильно связать эти запросы
#2 by Одинесю
Не знаю, как организовано в БП3, обычно анализируются регистры, а не документы.
#3 by BBDragon
В регистрах смотрел, как Хозрасчетный, так и Хозрасчетный.ОборотыДтКт - то же самое, из одного регистра все не вытянуть, проще из документов. Объем данных там мизерный, на производительности не скажется
#4 by hhhh
используйте запросы к табличной части. ВЫБРАТЬ ПоступлениеТоваровУслугТовары.Ссылка.Склад, ПоступлениеТоваровУслугТовары.Ссылка.Контрагент, ПоступлениеТоваровУслугТовары.Номенклатура, ПоступлениеТоваровУслугТовары.Цена, ПоступлениеТоваровУслугТовары.Количество, ПоступлениеТоваровУслугТовары.Сумма ПоступлениеТоваровУслуг.Ссылка.Дата КАК Дата ИЗ Документ.ПоступлениеТоваровУслуг.Товары КАК ПоступлениеТоваровУслугТовары
#5 by BBDragon
Так не работает: Поле не найдено "ПоступлениеТоваровУслуг.Ссылка.Склад" Ссылку может только на сам документ
#6 by hhhh
ПоступлениеТоваровУслугТовары
#7 by hhhh
"Ссылку может только на сам документ" - бред не пишите
#8 by BBDragon
Пардон, проглядел. Но опять ошибка: Поле не найдено "ПоступлениеТоваровУслугТовары.Ссылка.Склад" <<?>>ПоступлениеТоваровУслугТовары.Ссылка.Склад КАК Склад,
#9 by BBDragon
И без КАК Склад то же самое
#10 by Одинесю
Воспользуйся конструктором запросов, выбирай табличную часть и нужные поля из нее.
#11 by hhhh
давайте целиком сюда, чего вы написали. Копипастить похоже не умеете.
#12 by BBDragon
Я так и делал, но не работало правильно Хех, сейчас скопировал ваш запрос,теперь новая ошибка: Ошибка в запросе набора данных по причине: {(8, 1)}: Неправильный псевдоним "ПоступлениеТоваровУслуг.Ссылка.Дата" <<?>>ПоступлениеТоваровУслуг.Ссылка.Дата КАК ДатаПоступления ВЫБРАТЬ ПоступлениеТоваровУслугТовары.Ссылка.Склад, ПоступлениеТоваровУслугТовары.Ссылка.Контрагент, ПоступлениеТоваровУслугТовары.Номенклатура, ПоступлениеТоваровУслугТовары.Цена, ПоступлениеТоваровУслугТовары.Количество, ПоступлениеТоваровУслугТовары.Сумма ПоступлениеТоваровУслуг.Ссылка.Дата КАК Дата ИЗ Документ.ПоступлениеТоваровУслуг.Товары КАК ПоступлениеТоваровУслугТовары
#13 by Одинесю
ПоступлениеТоваровУслугТовары.Ссылка.Дата КАК ДатаПоступления
#14 by vip03
ПоступлениеТоваровУслугТОВАРЫ.Ссылка.Дата КАК Дата ты точно конструктором пользуешься?
#15 by BBDragon
Так тоже пробовал, все равно ошибка Нет, тут я уже просто скопировал запрос из
#16 by Одинесю
Давай опять полный запрос сюда, который получился и ошибку.
#17 by BBDragon
Пост
#18 by BBDragon
Вообще мне надо передать данные по номенклатуре из первого запроса во второй, вот не получается грамотно их связать
#19 by vip03
еще бы понять что ты вообще хочешь... ну вот так например:
#20 by BBDragon
Спасибо, вроде бы все движения товара захватывает, сейчас буду настраивать вывод данных в итоговой табличке. Получить хочу отчетик по движениям товара (поступление и перемещения), нечто вроде этого:
#21 by BBDragon
В отчете надо выводить даты перемещений, склад-получатель, склад-отправитель и т.д. Пытаюсь делать через ПеремещениеТоваровТовары.ДокументОприходования.Дата КАК ДатаПеремещения,     ПеремещениеТоваровТовары.ДокументОприходования.СкладОтправитель КАК Отправитель,     ПеремещениеТоваровТовары.ДокументОприходования.СкладПолучатель КАК Получатель Но в итоге в отчете выводятся пустые поля. Как их все-таки выдернуть то?
#22 by vip03
что такое ДокументОприходования? реквизит ТЧ? может ПеремещениеТоваровТовары.ССЫЛКА.ДокументОприходования.Дата КАК ДатаПеремещения ?
#23 by BBDragon
Да, данные из ТЧ документа перемещения. Увы, указанный вариант не срабатывает, "Поле ПеремещениеТоваровТовары.ССЫЛКА.ДокументОприходования.Дата не найдено"
#24 by salvator
Реквизит "ДокументОприходования" заполнен в перемещении?
#25 by BBDragon
Нет, такого ничего нет. Есть просто документ "Перемещение товаров" и там заполнены поля Номер, Дата, Организация, Отправитель,Получатель и в ТЧ Номенклатура, Количество, Счет отправителя, Счет получателя.
#26 by salvator
Ты сам ответил на свой вопрос.
#27 by BBDragon
Я понимаю, но мне то посоветовали сделать запрос в . Теперь его надо доработать
#28 by BBDragon
Все, доработал я запрос! Практически все данные теперь есть, осталось только правильно вывести их)     ПоступлениеТоваровУслугТовары.Сумма КАК СуммаПоступления,     ПоступлениеТоваровУслугТовары.Ссылка.Контрагент как Поставщик,     ПоступлениеТоваровУслугТовары.Ссылка.Склад КАК СкладПоступления,     ПеремещениеТоваровТовары.Количество КАК КоличествоПеремещения, Необходимо в отчете первой строкой вывести ДатаПоступления, СкладПоступления, КонтрАгент, КоличествоПоступления, СуммаПоступления. Во второй (и всех последующих строках) надо выводить ДатаПеремещения, Получатель, Отправитель, КоличествоПеремещения и СуммаПеремещения. При этом СуммаПеремещения должна вычисляться по формуле: СуммаПеремещения=КоличествоПеремещения*ЦенаПеремещения. Заголовок у колонок пусть будет везде одинаковый, т.е. Дата, Получатель, Отправитель, Количество и Сумма. Вопрос - как оформить вывод этих данных в СКД? Однородный набор данных я умею выводить списком, но тут первая строка должна отличаться по набору данных, ибо содержит сведения о поступлении.
#29 by BBDragon
Грубо говоря мне нужно вывести отчет в 2 строки: Первая строка: дата поступления, количество, сумма Вторая (и все последующие строки): дата перемещения, количество сумма. Бьюсь уже 2 часа с настройками вывода, никак не удается вывести правильно. Как все-таки это сделать?
#30 by ВРедная
Твой запрос выдаст в итоге тебе таблицу, в которой будут только строки перемещения с дополнительной информацией о поступлении товара. В ней не будет отдельных строк по поступлению и отдельных строк по перемещению. Вот так она у тебя будет выглядеть: Товар 1; реквизиты поступления 1; реквизиты перемещения 1; Товар 1; реквизиты поступления 1; реквизиты перемещения 2; Товар 1; реквизиты поступления 1; реквизиты перемещения 3; Первый вопрос: Если бы ты был СКД, то имея такую таблицу на руках, как бы ты из нее сделал четыре строки? Второй вопрос: Что будет, если у тебя не одно, а два поступления?
#31 by zak555
на 10/41 счёте есть аналитика партия начни отсюда
#32 by zak555
не связывайся с запросами к документа
#33 by BBDragon
Все верно, в консоли запросов так и выводит. Вот я и спрашиваю, как вывести итоги правильно. Поступление будет всегда одно, тут проблем нет. Спасибо большое, но уже замучался с этим отчетом, сделать бы так хотя бы. Объем данных мизерный, быстродействие страдать не будет.
#34 by ВРедная
Дело не в итогах, а в запросе. Тебе нужно добавить к твоим данным еще одну строку - чисто с поступлением
#35 by BBDragon
Подскажите, пожалуйста, как это сделать?
#36 by BBDragon
Переработанный запрос (режим объединения) ВЫБРАТЬ ПоступлениеТоваровУслугТовары.Номенклатура, ПоступлениеТоваровУслугТовары.Цена КАК ЦенаПоступления, ПоступлениеТоваровУслугТовары.Ссылка.Дата КАК Дата, ПоступлениеТоваровУслугТовары.Количество КАК Количество, ПоступлениеТоваровУслугТовары.Ссылка.Контрагент КАК Отправитель, ПоступлениеТоваровУслугТовары.Ссылка.Склад КАК Получатель ИЗ Документ.ПоступлениеТоваровУслуг.Товары КАК ПоступлениеТоваровУслугТовары ОБЪЕДИНИТЬ ВЫБРАТЬ ПеремещениеТоваровТовары.Номенклатура, ПеремещениеТоваровТовары.Цена, ПеремещениеТоваровТовары.Ссылка.Дата, ПеремещениеТоваровТовары.Количество, ПеремещениеТоваровТовары.Ссылка.СкладОтправитель, ПеремещениеТоваровТовары.Ссылка.СкладПолучатель ИЗ Документ.ПеремещениеТоваров.Товары КАК ПеремещениеТоваровТовары Все ничего, вот только Сумма выводится только в первой строке (там где поступление), а по перемещениям сумма не выводится. Само поле Сумма - вычисляемое, формула: Сумма = ЦенаПоступления*Количество. Как все-таки вывести сумму во всех строках отчета?
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С