![]() |
![]() |
![]() |
|
Вопрос по СКД | ☑ | ||
---|---|---|---|---|
0
ParinovS
27.09.12
✎
09:45
|
Доброго времени суток, возник непонятный момент. Есть 2 приходника (25, 26 число) и один расходник (27). Хочу на СКД сформировать отчет по продажам и посчитать себестоимость. Реализован примитивный партионный учет. Запрос такой:
ВЫБРАТЬ Продажи.Номенклатура, Продажи.КоличествоОборот КАК Количество, Продажи.СуммаОборот КАК Продажи, ВЫБОР КОГДА НЕ Себестоимость.КоличествоОборот ЕСТЬ NULL И НЕ Себестоимость.СуммаОборот ЕСТЬ NULL И НЕ Себестоимость.КоличествоОборот = 0 И НЕ Себестоимость.СуммаОборот = 0 ТОГДА Себестоимость.СуммаОборот / Себестоимость.КоличествоОборот * Продажи.КоличествоОборот ИНАЧЕ 0 КОНЕЦ КАК СебестоимостьПродажи ИЗ (ВЫБРАТЬ ОстаткиНоменклатурыОбороты.Номенклатура КАК Номенклатура, ОстаткиНоменклатурыОбороты.Партия КАК Партия, -ОстаткиНоменклатурыОбороты.КоличествоОборот КАК КоличествоОборот, -ОстаткиНоменклатурыОбороты.СуммаОборот КАК СуммаОборот ИЗ РегистрНакопления.ОстаткиНоменклатуры.Обороты(&НачалоПериода, &КонецПериода, Регистратор, ) КАК ОстаткиНоменклатурыОбороты ГДЕ ОстаткиНоменклатурыОбороты.Регистратор ССЫЛКА Документ.РасходнаяНакладная) КАК Продажи ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ОстаткиНоменклатуры.Обороты(, , Регистратор, ) КАК Себестоимость ПО Продажи.Партия = Себестоимость.Регистратор И Продажи.Номенклатура = Себестоимость.Номенклатура Т.е. задача стоит узнать по какой себестоимости был продан тот или иной товар. Я задаю в консоле запросов период с 27.09.12 по 27.09.12. У меня все отлично выводится, но если я в отчете на СКД установлю такой же период, то у меня выйдет нулевая себестоимость, такое ощущение, что я установил ограничение по периоду еще и для виртуальной таблицы "Себестоимость". Непонятно.... |
|||
1
MatrosoV AleXXXand_R
27.09.12
✎
09:47
|
Вот так попробуй
ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ОстаткиНоменклатуры.Обороты({&ПустаяДата}, {&ПустаяДата}, |
|||
2
pessok
27.09.12
✎
09:48
|
СКД в это вопросе дура. Она АВТОМАТОМ ставит параметры виртуальной таблицы по периоду. Задай параметры для оборотов твоих на какой-нить 1993 - 3147 года
|
|||
3
ParinovS
27.09.12
✎
09:51
|
(1) и (2) попробовал - НЕТ (((
|
|||
4
ParinovS
27.09.12
✎
09:57
|
никто не знает? ((
|
|||
5
ParinovS
27.09.12
✎
09:59
|
Печально... буду сам рыть! Найду - отпишусь :)
|
|||
6
Фрэнки
27.09.12
✎
10:00
|
я бы попробовал отделить подзапрос от основного запроса. чтоб их было явно два штуки
|
|||
7
ParinovS
27.09.12
✎
11:28
|
ответ найден, я не правильно понял совет (2). Моя ошибка была в том, что я по привычке задал имена переменных ограничивающих период (для вложенного запроса "Продажи"), так же, как и имена стандартных параметров в СКД - "НачалоПериода" и "КонецПериода". Для виртуальной таблицы "Себестоимость" было необходимо, чтобы ограничения по периоду не было. НО! 1С-ка автоматом подставляет стандартные реквизиты "НачалоПериода" и "КонецПериода" во все виртуальные таблицы, у которых эти значения не заданы. Поэтому у меня при установке ограничений по периоду, эти же ограничения и попадали в виртуальную таблицу "Себестоимость". Как всегда помогло повторение и изучение "матчасти" :)
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |