Имя: Пароль:
1C
1С v8
Передать параметр(Список значений) во временную таблицу
0 AugustBlack
 
01.03.13
07:20
Доброе утро.
Есть список значений который содержит список месяцев, тип дата 01.01.2012, 01.02.2012 и т.д
как передать в запрос, мне необходимо поместить список во временную таблицу.

ВЫБРАТЬ
   СписокМесяцев .Значение КАК МесяцСписка
ПОМЕСТИТЬ ВТ_СписокМесяцев
ИЗ
   &СписокМесяцев КАК СписокМесяцев
;

------------------------------------------------
выдает ошибку:
{(5, 2)}: Неверные параметры "ТаблицаМесяцев"
<<?>>&ТаблицаМесяцев КАК ТаблицаМесяцев
1 AugustBlack
 
01.03.13
07:21
(1) поправка {(5, 2)}: Неверные параметры "СписокМесяцев "

<<?>>&СписокМесяцев КАК СписокМесяцев
2 Cube
 
01.03.13
07:24
Что за обрезок? Давай весь код.
3 Wobland
 
01.03.13
07:31
попробуй ТЗ туда отдать
4 AugustBlack
 
01.03.13
07:31
(2) дело в том что мне необходимо в отчет выводить обороты по месяцам, даже если в этом месяце не было оборотов. Т.е я делаю ВТ - ТаблицаМесяцев и левым соединением к оборотам

ВЫБРАТЬ
   ТаблицаМесяцев.Месяц КАК МесяцСписка
ПОМЕСТИТЬ ВТ_ТаблицаМесяцев
ИЗ
   &ТаблицаМесяцев КАК ТаблицаМесяцев
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
   ПоступлениеТоваровУслугУслуги.Ссылка КАК Документ,
   ПоступлениеТоваровУслугУслуги.Номенклатура КАК Услуга,
   ЕСТЬNULL(ПоступлениеТоваровУслугУслуги.Цена, 0) КАК Цена,
   ЕСТЬNULL(ПоступлениеТоваровУслугУслуги.Количество, 0) КАК Количество,
   СУММА(ЕСТЬNULL(ПоступлениеТоваровУслугУслуги.Сумма, 0)) КАК Сумма,
   СУММА(ЕСТЬNULL(ПоступлениеТоваровУслугУслуги.СуммаНДС, 0)) КАК СуммаНДС
ПОМЕСТИТЬ ТабличнаяЧастьПоступление
ИЗ
   Документ.ПоступлениеТоваровУслуг.Услуги КАК ПоступлениеТоваровУслугУслуги
ГДЕ
   ПоступлениеТоваровУслугУслуги.Номенклатура В(&СписокВсехТиповЭнергии)
   И НЕ ПоступлениеТоваровУслугУслуги.Ссылка.ПометкаУдаления
   И ПоступлениеТоваровУслугУслуги.Ссылка.Проведен

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

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
   ТабличнаяЧастьПоступление.Услуга КАК Услуга,
   ХозрасчетныйОборотыДтКт.СубконтоКт1 КАК Контрагент,
   НАЧАЛОПЕРИОДА(ХозрасчетныйОборотыДтКт.Период, МЕСЯЦ) КАК Месяц,
   СУММА(ТабличнаяЧастьПоступление.Количество) КАК Количество,
   СУММА(ТабличнаяЧастьПоступление.Цена) КАК Цена,
   СУММА(ТабличнаяЧастьПоступление.Сумма) КАК СуммаВсего,
   ТабличнаяЧастьПоступление.Документ
ПОМЕСТИТЬ ОборотыПоСчету6001
ИЗ
   ТабличнаяЧастьПоступление КАК ТабличнаяЧастьПоступление
       ЛЕВОЕ СОЕДИНЕНИЕ РегистрБухгалтерии.Хозрасчетный.ОборотыДтКт(&НачалоПериода, &КонецПериода, Регистратор, , , СчетКт = &СчетКт, , ) КАК ХозрасчетныйОборотыДтКт
       ПО ТабличнаяЧастьПоступление.Документ = ХозрасчетныйОборотыДтКт.Регистратор

СГРУППИРОВАТЬ ПО
   ТабличнаяЧастьПоступление.Услуга,
   ХозрасчетныйОборотыДтКт.СубконтоКт1,
   ТабличнаяЧастьПоступление.Документ,
   НАЧАЛОПЕРИОДА(ХозрасчетныйОборотыДтКт.Период, МЕСЯЦ)
;

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

СГРУППИРОВАТЬ ПО
   ВТ_ТаблицаМесяцев.МесяцСписка,
   ОборотыПоСчету6001.Документ,
   ОборотыПоСчету6001.Услуга,
   ОборотыПоСчету6001.Контрагент
5 AugustBlack
 
01.03.13
07:33
(3) да в текущем запросе через ТЗ сделал, но сейчас запихиваю запрос в консоль компоновки данных для отладки СКД, не дает  в параметрах заполнить таблицу значений месяцев..
может через список значений как то можно?
6 Wobland
 
01.03.13
07:34
ОборотыПоСчету6001.Цена - нуля или NULLа не будет?
7 tuxik07
 
01.03.13
07:36
СКД умеет и без списка
8 Cube
 
01.03.13
07:39
(4) Зачем тебе вообще там таблица месяцев?
9 AugustBlack
 
01.03.13
07:39
(6) не совсем понял..я имел ввиду добавил тз месяцы чтобы данные выводились к примеру:
январь 0
февраль 5
март 0
апрель 6
т.е месяц выводится всегда

(7) подскажите по подробнее, т.е можно указать нач. дату кон. дату и будет выводить все месяцы?
10 Cube
 
01.03.13
07:40
(8) Ой, протупил)
СКД умеет сама дополнять периоды. Ща найду ветку, обсуждали недавно...
11 AugustBlack
 
01.03.13
07:41
(8) мну формировать отчет сначала года нада янв-февр-март-апр-май
12 Cube
 
01.03.13
07:42
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство. Фредерик Брукс-младший