Запрос по приходным и расходным накладным #445384


#0 by ShS2
Есть документы ПриходнаяНакладная и РасходнаяНакладная с реквизитами Контрагент и СуммаДокумента Необходимо создать запрос, который давал бы следующий результат: ------------+----------+----------+ Контрагент  | Приход   | Расход   | ------------+----------+----------+ Контрагент1 |   100    |     80   |     ------------+----------+----------+ Контрагент2 |    60    |     40   | ------------+----------+----------+ пишу такой, но не получается ВЫБРАТЬ РАЗЛИЧНЫЕ Помогите как правильно составить запрос ?
#1 by NcSteel
Для этого созданы регистры накопления !!! и виртуальная таблица обороты
#2 by ShS2
В конфигурации нет регистров накопления, нужно сформировать запрос взяв данные ТОЛЬКО из документов ПриходнаяНакладная и РасходнаяНакладная
#3 by Лефмихалыч
Покажи скриншот дерева конфигурации, тогда поверю
#4 by Афигенная Тапка
хоть конфа какая?
#5 by Лефмихалыч
рискну предположить - "1С:Автоматизированный геморрой"...
#6 by ShS2
3,4,5 Я новичок в 8-ке, сейчас изучаю 1С v8.1, конфигурацию пишу с нуля с целью изучения. Добавил два документа Приходная и Расходная накладные и пытаюсь написать запрос. Знаю что можно потом можно будет сделать через регистры накопления, но сейчас интересует получение данного отчета используя только эти два документа.
#7 by Лефмихалыч
добавь регистр накопления и движения в документах по нему, а запрос пиши к регистру. ЗЫ по какой книжке учишься?
#8 by Лефмихалыч
богамать! Стаж: 4 г. 4 мес. о_0 0_о о_О О_о О_0 0_О О_О
#9 by NcSteel
Добавь 2 регистра . Первый ОстаткиТоваров, Продажи. Формируй движения и запрос.
#10 by NcSteel
Он только начинает, вот посмотрим какой будет стаж когда станет спецом )
#11 by Лефмихалыч
если 4 года работы с семеркой не принесли понимания смысла и необходимости регистров, то я даже не знаю, когда может закончится такое обучение...
#12 by Афигенная Тапка
не смеши народ учиться можно на другом форуме
#13 by NcSteel
Ути пути , там тоже надо представлять что пишешь.
#14 by Афигенная Тапка
пусть лучше здесь спрашивает? ;)))
#15 by ShS2
8) Я 4 года назад занимался 1С 7.7 и последние 3 года вообще не занимался 1С,вот и вспоминаю Написал такой запрос, покритикуйте ВЫБРАТЬ    Документ.ПриходнаяНакладная КАК ПриходнаяНакладная1 ГДЕ ИЗ    Документ.РасходнаяНакладная КАК РасходнаяНакладная1 ГДЕ
#16 by NcSteel
вместо NULL надо 0 ставить
#17 by NcSteel
+ Если по документам то пойдет. )
#18 by Лефмихалыч
регистр добавляй. Такой код и вообще такая парадигма тебе научиться не поможет. В лучшем случае ни кому не будет нужен такой кодер, в худшем - наваляют канделябром по сусалам
#19 by NcSteel
Масса работодателей будет довольна, так как работает и зп у него будет нашей с тобой )))
#20 by NcSteel
больше*
#21 by Лефмихалыч
зато, когда придется звать нас с тобой и платить вдвое больше, чтобы всё починить и заставить работать, наступит "худший" случай из ...
#22 by ShS2
Да mista за 4 года ничего не поменялась, все также любите постебаться над новичками. Другие варианты запроса есть, более элегантные. Через регистры не предлагать, знаю что через регистры ПРАВИЛЬНО, но задание у меня такое, сделать через документы.
#23 by ShS2
Из всех 18 Ваших постов одна вода и никаких вариантов ВАШИХ запросов.
#24 by Лефмихалыч
надо было сразу в написать, что "знаю что через регистры ПРАВИЛЬНО" и, что , было бы гораздо более другое дело
#25 by ShS2
24) да я написал пока Вы стебались надо мной
#26 by NcSteel
Можно еще соединение таблиц сделать , но твой вариант сойдет.
#27 by ShS2
26) Попробовал такой запрос: Запрос меньше, но в случае нескольких документов показывает неверный результат. (больше в 2, 4... раза в зависимости от количества документов) Как еще можно сделать через соединение таблиц ? Я так понимаю ни ЛЕВОЕ ни ПРАВОЕ ВНЕШНЕЕ СОЕДИНЕНИЕ в этом случае не подойдут ?
#28 by NcSteel
Нет только полное .
#29 by NcSteel
Надо так кажись ))) Сумма(ЕстьNull(ПриходнаяНакладная1.СуммаДокумента, 0))
#30 by Лефмихалыч
вариант не устраивает по религиозным соображениям?
#31 by ShS2
29) Изменил на запрос ВЫБРАТЬ РАЗЛИЧНЫЕ    ПриходнаяНакладная1.Контрагент КАК КонтрагентЗапрос, показывает синтаксическую ошибку на ЕСТЬ 30) нет вариант устраивает, написал потому что может быть другой более простой вариант решения. И может с методологической точки зрения мой вариант не оптимальный ? Если в моем случае нужно писать именно такой запрос, то больше у меня вопросов к Вам нет.
#32 by Лефмихалыч
вариант с полным соединением - туфта, в данном случае правильнее и быстрее
#33 by NcSteel
+ 1 пробел убери и поставь ЕстьNull
#34 by Лефмихалыч
+ не спасет - весь расход по контрагентам, по которым не было прихода, будет сплющен в одну строчку, где контрагент будет NULL
#35 by ShS2
33) Изменил на запрос ВЫБРАТЬ РАЗЛИЧНЫЕ все равно результат не верный (больше в 2, 4... раза в зависимости от количества документов)
#36 by Лефмихалыч
потому, что это туфта
#37 by ShS2
32, 33) NcSteel, Лёвыч спасибо за помощь. Если мой вариант правильнее, то он меня устроит. Интересовался только потому что думал, что могут быть другие более элегантные варианты.
#38 by NcSteel
Не всегда "меньше строк" = элегантнее
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям

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