|   |   | 
| 
 | Помогите с компоновкой данных | ☑ | ||
|---|---|---|---|---|
| 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) КАК СуммаЗакупки ИЗ РегистрНакопления.Продажи.Обороты(&НачалоПериода, &КонецПериода, , ) КАК ПродажиОбороты ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.ЦеныНоменклатуры.СрезПоследних(КОНЕЦПЕРИОДА(&КонецПериода, ДЕНЬ), ТипЦен = &ТипЦен) КАК ЦеныНоменклатурыСрезПоследних ПО ПродажиОбороты.Номенклатура = ЦеныНоменклатурыСрезПоследних.Номенклатура Ошибка та же | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |