![]() |
![]() |
![]() |
|
Помогите с компоновкой данных | ☑ | ||
---|---|---|---|---|
0
cojko
16.04.10
✎
14:42
|
Есть такой запрос:
ВЫБРАТЬ ПродажиОбороты.Номенклатура, ПродажиОбороты.СтоимостьОборот КАК СуммаПродажиСоСкидками, ПродажиОбороты.КоличествоОборот КАК Количество, ПродажиОбороты.СтоимостьБезСкидокОборот КАК СуммаПродажиБезСкидокОборот, ПродажиОбороты.КоличествоОборот * ЦеныНоменклатурыСрезПоследних.Цена КАК СуммаЗакупки, ЦеныНоменклатурыСрезПоследних.ТипЦен ИЗ РегистрНакопления.Продажи.Обороты(НАЧАЛОПЕРИОДА(&Период, ДЕНЬ), КОНЕЦПЕРИОДА(&Период, ДЕНЬ), , ) КАК ПродажиОбороты ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЦеныНоменклатуры.СрезПоследних(КОНЕЦПЕРИОДА(&Период, ДЕНЬ), ТипЦен = &ТипЦен) КАК ЦеныНоменклатурыСрезПоследних ПО ПродажиОбороты.Номенклатура = ЦеныНоменклатурыСрезПоследних.Номенклатура И ПродажиОбороты.ХарактеристикаНоменклатуры = ЦеныНоменклатурыСрезПоследних.ХарактеристикаНоменклатуры И такая ошибка: Ошибка обработки представления "РегистрСведений.ЦеныНоменклатуры.СрезПоследних:Несоответствие типов (параметр номер ""1"")" ЛЕВОЕ СОЕДИНЕНИЕ <<?>>РегистрСведений.ЦеныНоменклатуры.СрезПоследних(&П3, ТипЦен = &ТипЦен) КАК ЦеныНоменклатурыСрезПоследних |
|||
1
cojko
16.04.10
✎
14:49
|
up
|
|||
2
Defender aka LINN
16.04.10
✎
14:53
|
При чем тут компоновка?
|
|||
3
cojko
16.04.10
✎
15:23
|
отчет делаю в компоновке
|
|||
4
Defender aka LINN
16.04.10
✎
15:25
|
(3) Запрос не оттуда. А если оттуда - он неправильный.
|
|||
5
cojko
16.04.10
✎
15:26
|
в чем ошибка?
|
|||
6
detec
16.04.10
✎
15:28
|
(2) Я сталкивался с подобным в некоторых запросах, где сбоку прилеплена виртуальная таблица. Даже если и ставишь параметр &Период, то он каким-то макаром заменяется системным и выдаёт такую (или очень похожую ошибку - не помню точно).
(0) Присоединяемую таблицу нужно другим набором данных прилепить к основной. Или через временные таблицы. |
|||
7
Lacerta
16.04.10
✎
15:38
|
А откуда в сообщении об ошибке &ПЗ, если в запросе нет
|
|||
8
cojko
16.04.10
✎
15:39
|
(7) у меня такой же вопрос
|
|||
9
Lacerta
16.04.10
✎
15:40
|
может, ругается на другой запрос? побольше привести пример не можешь?
|
|||
10
cojko
16.04.10
✎
15:41
|
(9) в смысле? это весь запрос
|
|||
11
Lacerta
16.04.10
✎
15:42
|
(10) в контексте чего у тебя запрос? Я его на УТ запускаю в консоле запросов - все отрабатывает без ошибок
|
|||
12
cojko
16.04.10
✎
15:43
|
тут проблема с установкой параметров какая то, если этот первый параметр не указывать у меня тоже работает
|
|||
13
Lacerta
16.04.10
✎
15:46
|
Напиши как ты задаешь &Период
|
|||
14
cojko
16.04.10
✎
15:49
|
В качестве периода, пользователь выбирает стандартный период(ЭтотГод, День и т.д.)
ДатуЦен я задаю как "&Период.ДатаОкончания" через выражение |
|||
15
IronDemon
16.04.10
✎
15:55
|
И тип "Период" у тебя видимо СтандартныйПериод?
|
|||
16
Сисой
16.04.10
✎
15:57
|
Надо вот как:
({НАЧАЛОПЕРИОДА(&Период, ДЕНЬ)}, {КОНЕЦПЕРИОДА(&Период, ДЕНЬ)}, ... |
|||
17
IronDemon
16.04.10
✎
15:59
|
(16) Не Надо а Можно ;)
|
|||
18
cojko
16.04.10
✎
15:59
|
это же регистр сведений, нужна конкретная дата, а не период. Я не прав?
|
|||
19
Lacerta
16.04.10
✎
16:08
|
(18) ну вот, если ты ДатуЦен задаешь через выражение, то и надо в СрезПоследних поставить, а не тот же &Период (типа СтандартныйПериод)
|
|||
20
cojko
16.04.10
✎
16:10
|
Та же самая ошибка получается
|
|||
21
cojko
16.04.10
✎
16:12
|
если дату цен задавать как отдельный параметр работает, но я хочу чтобы она определялась период выборки из регистра продаж
|
|||
22
cojko
16.04.10
✎
16:31
|
up
|
|||
23
IronDemon
16.04.10
✎
16:45
|
ВЫБРАТЬ
ПродажиОбороты.Номенклатура, ПродажиОбороты.СтоимостьОборот КАК СуммаПродажиСоСкидками, ПродажиОбороты.КоличествоОборот КАК Количество, ПродажиОбороты.СтоимостьБезСкидокОборот КАК СуммаПродажиБезСкидокОборот, ПродажиОбороты.КоличествоОборот * ЦеныНоменклатурыСрезПоследних.Цена КАК СуммаЗакупки, ЦеныНоменклатурыСрезПоследних.ТипЦен ИЗ РегистрНакопления.Продажи.Обороты(&, КОНЕЦПЕРИОДА(&Период, ДЕНЬ), , ) КАК ПродажиОбороты ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЦеныНоменклатуры.СрезПоследних(КОНЕЦПЕРИОДА(&Период, ДЕНЬ), ТипЦен = &ТипЦен) КАК ЦеныНоменклатурыСрезПоследних ПО ПродажиОбороты.Номенклатура = ЦеныНоменклатурыСрезПоследних.Номенклатура И ПродажиОбороты.ХарактеристикаНоменклатуры = ЦеныНоменклатурыСрезПоследних.ХарактеристикаНоменклатуры ВЫБРАТЬ ПродажиОбороты.Номенклатура, ПродажиОбороты.СтоимостьОборот КАК СуммаПродажиСоСкидками, ПродажиОбороты.КоличествоОборот КАК Количество, ПродажиОбороты.СтоимостьБезСкидокОборот КАК СуммаПродажиБезСкидокОборот, ПродажиОбороты.КоличествоОборот * ЦеныНоменклатурыСрезПоследних.Цена КАК СуммаЗакупки, ЦеныНоменклатурыСрезПоследних.ТипЦен ИЗ РегистрНакопления.Продажи.Обороты(&НачалоПериода, &КонецПериода, , ) КАК ПродажиОбороты ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЦеныНоменклатуры.СрезПоследних(&КонецПериода, ТипЦен = &ТипЦен) КАК ЦеныНоменклатурыСрезПоследних ПО ПродажиОбороты.Номенклатура = ЦеныНоменклатурыСрезПоследних.Номенклатура И ПродажиОбороты.ХарактеристикаНоменклатуры = ЦеныНоменклатурыСрезПоследних.ХарактеристикаНоменклатуры В параметрах добавляешь "ПериодОтчета" с типом СтандартныйПериод, параметр НачалоПериода=&ПериодОтчета.ДатаНачала параметр КонецПериода=&&ПериодОтчета.ДатаОкончания |
|||
24
cojko
16.04.10
✎
16:48
|
Это два разных варианта?
|
|||
25
IronDemon
16.04.10
✎
16:48
|
Правильный с НачалоПериода и КонецПериода
|
|||
26
cojko
16.04.10
✎
16:52
|
Если период не указывать в настройках отчета, то работает, а с периодом не работает, та же ошибка
|
|||
27
Lacerta
16.04.10
✎
16:59
|
Мне уже начинает казаться, что скрыт мохнатый кусок кода, где перед исполением все параметры меняются на рандомайз))))
|
|||
28
cojko
16.04.10
✎
17:03
|
На оборот с рандомайзом работает, а когда она начинает получать цены на определенную дату, какая-то фигня
|
|||
29
cojko
16.04.10
✎
17:03
|
уже бы без СКД 10 таких отчетов написал
|
|||
30
cojko
16.04.10
✎
17:15
|
еще какие вариаты?
|
|||
31
cojko
16.04.10
✎
21:25
|
up
|
|||
32
cojko
16.04.10
✎
21:25
|
может сейчас кто знает
|
|||
33
Сисой
16.04.10
✎
22:22
|
Еще раз повторяю: пиши ({КОНЕЦПЕРИОДА(&КонецПериода, ДЕНЬ)}....
|
|||
34
cojko
17.04.10
✎
15:20
|
ВЫБРАТЬ
ПродажиОбороты.Номенклатура, ПродажиОбороты.СтоимостьОборот КАК СуммаПродажиСоСкидками, ПродажиОбороты.КоличествоОборот КАК Количество, ПродажиОбороты.СтоимостьБезСкидокОборот КАК СуммаПродажиБезСкидокОборот, ПродажиОбороты.КоличествоОборот * ЕСТЬNULL(ЦеныНоменклатурыСрезПоследних.Цена, 0) КАК СуммаЗакупки ИЗ РегистрНакопления.Продажи.Обороты(&НачалоПериода, &КонецПериода, , ) КАК ПродажиОбороты ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.ЦеныНоменклатуры.СрезПоследних(КОНЕЦПЕРИОДА(&КонецПериода, ДЕНЬ), ТипЦен = &ТипЦен) КАК ЦеныНоменклатурыСрезПоследних ПО ПродажиОбороты.Номенклатура = ЦеныНоменклатурыСрезПоследних.Номенклатура Ошибка та же |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |