Ошибка при выборке данных из запроса
04.12.2015
09:39
#1
При формировании отчета выходит ошибка
{Форма.ФормаОтчета.Форма(185)}: Значение не является значением объектного типа (Метаданные)
Если Выборка.Документ.Метаданные() = Метаданные.Документы.ПеремещениеТоваров тогда
Подскажите в чем может быть ошибка?
Запрос вот
"ВЫБРАТЬ
| ПартииТоваровНаСкладахБухгалтерскийУчетОбороты.Номенклатура,
| ПартииТоваровНаСкладахБухгалтерскийУчетОбороты.СчетУчета,
| ПартииТоваровНаСкладахБухгалтерскийУчетОбороты.СерияНоменклатуры КАК ЦФО,
| ПартииТоваровНаСкладахБухгалтерскийУчетОбороты.СтоимостьПриход КАК кварталПоступление,
| ПартииТоваровНаСкладахБухгалтерскийУчетОбороты.СтоимостьРасход КАК КварталСписание,
| ПартииТоваровНаСкладахБухгалтерскийУчетОбороты.Регистратор,
| ВЫБОР
| КОГДА ПартииТоваровНаСкладахБухгалтерскийУчетОбороты.Регистратор.Подразделение ЕСТЬ NULL
| ТОГДА 0
| ИНАЧЕ ПартииТоваровНаСкладахБухгалтерскийУчетОбороты.Регистратор.Подразделение
| КОНЕЦ КАК Подразделение
|ПОМЕСТИТЬ Обороты
|ИЗ
| РегистрНакопления.ПартииТоваровНаСкладахБухгалтерскийУчет.Обороты(&Начало, &Конец, Регистратор, ) КАК ПартииТоваровНаСкладахБухгалтерскийУчетОбороты
|;
|
|//////////////////////////////////////////////////////////// ////////////////////
|ВЫБРАТЬ
| ПартииТоваровНаСкладахБухгалтерскийУчетОстатки.Номенклатура,
| ПартииТоваровНаСкладахБухгалтерскийУчетОстатки.СчетУчета,
| ПартииТоваровНаСкладахБухгалтерскийУчетОстатки.СерияНоменклатуры КАК ЦФО,
| ПартииТоваровНаСкладахБухгалтерскийУчетОстатки.СтоимостьОстаток КАК СтоимостьНачальныйОстаток,
| ВЫБОР
| КОГДА ПартииТоваровНаСкладахБухгалтерскийУчетОстатки.ДокументОприходования.Подразделение ЕСТЬ NULL
| ТОГДА 0
| ИНАЧЕ ПартииТоваровНаСкладахБухгалтерскийУчетОстатки.ДокументОприходования.Подразделение
| КОНЕЦ КАК Подразделение
|ПОМЕСТИТЬ ОстатокНаНачало
|ИЗ
| РегистрНакопления.ПартииТоваровНаСкладахБухгалтерскийУчет.Остатки(&Начало, ) КАК ПартииТоваровНаСкладахБухгалтерскийУчетОстатки
|;
|
|//////////////////////////////////////////////////////////// ////////////////////
|ВЫБРАТЬ
| ПартииТоваровНаСкладахБухгалтерскийУчетОстатки.Номенклатура,
| ПартииТоваровНаСкладахБухгалтерскийУчетОстатки.СчетУчета,
| ПартииТоваровНаСкладахБухгалтерскийУчетОстатки.СерияНоменклатуры КАК ЦФО,
| ПартииТоваровНаСкладахБухгалтерскийУчетОстатки.СтоимостьОстаток КАК СтоимостьНачальныйОстаток,
| ВЫБОР
| КОГДА ПартииТоваровНаСкладахБухгалтерскийУчетОстатки.ДокументОприходования.Подразделение ЕСТЬ NULL
| ТОГДА 0
| ИНАЧЕ ПартииТоваровНаСкладахБухгалтерскийУчетОстатки.ДокументОприходования.Подразделение
| КОНЕЦ КАК Подразделение
|ПОМЕСТИТЬ ОстатокНаКонец
|ИЗ
| РегистрНакопления.ПартииТоваровНаСкладахБухгалтерскийУчет.Остатки(&Конец, ) КАК ПартииТоваровНаСкладахБухгалтерскийУчетОстатки
|;
|
|//////////////////////////////////////////////////////////// ////////////////////
|ВЫБРАТЬ
| ВложенныйЗапрос.Номенклатура,
| ВложенныйЗапрос.СчетУчета,
| ВложенныйЗапрос.СтоимостьКонечныйОстаток,
| ВложенныйЗапрос.СтоимостьНачальныйОстаток,
| ВложенныйЗапрос.Подразделение,
| Обороты.ЦФО,
| Обороты.кварталПоступление,
| Обороты.КварталСписание,
| Обороты.Регистратор КАК Документ
|ИЗ
| (ВЫБРАТЬ
| ОстатокНаКонец.Номенклатура КАК Номенклатура,
| ОстатокНаКонец.СчетУчета КАК СчетУчета,
| ОстатокНаКонец.СтоимостьНачальныйОстаток КАК СтоимостьКонечныйОстаток,
| ОстатокНаНачало.СтоимостьНачальныйОстаток КАК СтоимостьНачальныйОстаток,
| ОстатокНаНачало.Подразделение КАК Подразделение
| ИЗ
| ОстатокНаНачало КАК ОстатокНаНачало
| ПОЛНОЕ СОЕДИНЕНИЕ ОстатокНаКонец КАК ОстатокНаКонец
| ПО ОстатокНаНачало.Номенклатура = ОстатокНаКонец.Номенклатура
|
| СГРУППИРОВАТЬ ПО
| ОстатокНаКонец.Номенклатура,
| ОстатокНаКонец.СчетУчета,
| ОстатокНаКонец.СтоимостьНачальныйОстаток,
| ОстатокНаНачало.СтоимостьНачальныйОстаток,
| ОстатокНаНачало.Подразделение) КАК ВложенныйЗапрос
| ПОЛНОЕ СОЕДИНЕНИЕ Обороты КАК Обороты
| ПО ВложенныйЗапрос.Номенклатура = Обороты.Номенклатура
|ГДЕ
| ВложенныйЗапрос.СчетУчета В(&СчетУчета)
|
|СГРУППИРОВАТЬ ПО
| ВложенныйЗапрос.Номенклатура,
| ВложенныйЗапрос.СчетУчета,
| ВложенныйЗапрос.СтоимостьКонечныйОстаток,
| ВложенныйЗапрос.СтоимостьНачальныйОстаток,
| ВложенныйЗапрос.Подразделение,
| Обороты.ЦФО,
| Обороты.кварталПоступление,
| Обороты.КварталСписание,
| Обороты.Регистратор
|ИТОГИ ПО
| ОБЩИЕ"
{Форма.ФормаОтчета.Форма(185)}: Значение не является значением объектного типа (Метаданные)
Если Выборка.Документ.Метаданные() = Метаданные.Документы.ПеремещениеТоваров тогда
Подскажите в чем может быть ошибка?
Запрос вот
"ВЫБРАТЬ
| ПартииТоваровНаСкладахБухгалтерскийУчетОбороты.Номенклатура,
| ПартииТоваровНаСкладахБухгалтерскийУчетОбороты.СчетУчета,
| ПартииТоваровНаСкладахБухгалтерскийУчетОбороты.СерияНоменклатуры КАК ЦФО,
| ПартииТоваровНаСкладахБухгалтерскийУчетОбороты.СтоимостьПриход КАК кварталПоступление,
| ПартииТоваровНаСкладахБухгалтерскийУчетОбороты.СтоимостьРасход КАК КварталСписание,
| ПартииТоваровНаСкладахБухгалтерскийУчетОбороты.Регистратор,
| ВЫБОР
| КОГДА ПартииТоваровНаСкладахБухгалтерскийУчетОбороты.Регистратор.Подразделение ЕСТЬ NULL
| ТОГДА 0
| ИНАЧЕ ПартииТоваровНаСкладахБухгалтерскийУчетОбороты.Регистратор.Подразделение
| КОНЕЦ КАК Подразделение
|ПОМЕСТИТЬ Обороты
|ИЗ
| РегистрНакопления.ПартииТоваровНаСкладахБухгалтерскийУчет.Обороты(&Начало, &Конец, Регистратор, ) КАК ПартииТоваровНаСкладахБухгалтерскийУчетОбороты
|;
|
|////////////////////////////////////////////////////////////
|ВЫБРАТЬ
| ПартииТоваровНаСкладахБухгалтерскийУчетОстатки.Номенклатура,
| ПартииТоваровНаСкладахБухгалтерскийУчетОстатки.СчетУчета,
| ПартииТоваровНаСкладахБухгалтерскийУчетОстатки.СерияНоменклатуры КАК ЦФО,
| ПартииТоваровНаСкладахБухгалтерскийУчетОстатки.СтоимостьОстаток КАК СтоимостьНачальныйОстаток,
| ВЫБОР
| КОГДА ПартииТоваровНаСкладахБухгалтерскийУчетОстатки.ДокументОприходования.Подразделение ЕСТЬ NULL
| ТОГДА 0
| ИНАЧЕ ПартииТоваровНаСкладахБухгалтерскийУчетОстатки.ДокументОприходования.Подразделение
| КОНЕЦ КАК Подразделение
|ПОМЕСТИТЬ ОстатокНаНачало
|ИЗ
| РегистрНакопления.ПартииТоваровНаСкладахБухгалтерскийУчет.Остатки(&Начало, ) КАК ПартииТоваровНаСкладахБухгалтерскийУчетОстатки
|;
|
|////////////////////////////////////////////////////////////
|ВЫБРАТЬ
| ПартииТоваровНаСкладахБухгалтерскийУчетОстатки.Номенклатура,
| ПартииТоваровНаСкладахБухгалтерскийУчетОстатки.СчетУчета,
| ПартииТоваровНаСкладахБухгалтерскийУчетОстатки.СерияНоменклатуры КАК ЦФО,
| ПартииТоваровНаСкладахБухгалтерскийУчетОстатки.СтоимостьОстаток КАК СтоимостьНачальныйОстаток,
| ВЫБОР
| КОГДА ПартииТоваровНаСкладахБухгалтерскийУчетОстатки.ДокументОприходования.Подразделение ЕСТЬ NULL
| ТОГДА 0
| ИНАЧЕ ПартииТоваровНаСкладахБухгалтерскийУчетОстатки.ДокументОприходования.Подразделение
| КОНЕЦ КАК Подразделение
|ПОМЕСТИТЬ ОстатокНаКонец
|ИЗ
| РегистрНакопления.ПартииТоваровНаСкладахБухгалтерскийУчет.Остатки(&Конец, ) КАК ПартииТоваровНаСкладахБухгалтерскийУчетОстатки
|;
|
|////////////////////////////////////////////////////////////
|ВЫБРАТЬ
| ВложенныйЗапрос.Номенклатура,
| ВложенныйЗапрос.СчетУчета,
| ВложенныйЗапрос.СтоимостьКонечныйОстаток,
| ВложенныйЗапрос.СтоимостьНачальныйОстаток,
| ВложенныйЗапрос.Подразделение,
| Обороты.ЦФО,
| Обороты.кварталПоступление,
| Обороты.КварталСписание,
| Обороты.Регистратор КАК Документ
|ИЗ
| (ВЫБРАТЬ
| ОстатокНаКонец.Номенклатура КАК Номенклатура,
| ОстатокНаКонец.СчетУчета КАК СчетУчета,
| ОстатокНаКонец.СтоимостьНачальныйОстаток КАК СтоимостьКонечныйОстаток,
| ОстатокНаНачало.СтоимостьНачальныйОстаток КАК СтоимостьНачальныйОстаток,
| ОстатокНаНачало.Подразделение КАК Подразделение
| ИЗ
| ОстатокНаНачало КАК ОстатокНаНачало
| ПОЛНОЕ СОЕДИНЕНИЕ ОстатокНаКонец КАК ОстатокНаКонец
| ПО ОстатокНаНачало.Номенклатура = ОстатокНаКонец.Номенклатура
|
| СГРУППИРОВАТЬ ПО
| ОстатокНаКонец.Номенклатура,
| ОстатокНаКонец.СчетУчета,
| ОстатокНаКонец.СтоимостьНачальныйОстаток,
| ОстатокНаНачало.СтоимостьНачальныйОстаток,
| ОстатокНаНачало.Подразделение) КАК ВложенныйЗапрос
| ПОЛНОЕ СОЕДИНЕНИЕ Обороты КАК Обороты
| ПО ВложенныйЗапрос.Номенклатура = Обороты.Номенклатура
|ГДЕ
| ВложенныйЗапрос.СчетУчета В(&СчетУчета)
|
|СГРУППИРОВАТЬ ПО
| ВложенныйЗапрос.Номенклатура,
| ВложенныйЗапрос.СчетУчета,
| ВложенныйЗапрос.СтоимостьКонечныйОстаток,
| ВложенныйЗапрос.СтоимостьНачальныйОстаток,
| ВложенныйЗапрос.Подразделение,
| Обороты.ЦФО,
| Обороты.кварталПоступление,
| Обороты.КварталСписание,
| Обороты.Регистратор
|ИТОГИ ПО
| ОБЩИЕ"
Ответили:
пост #2
04.12.2015
13:07
#2
Ответ на
пост №1
1. Перед тем как обращаться к метаданным документа, написано что-то типа "Если Выборка.Следующий()" ??2. Строка с итогами случайно не проверяется на метаданные?
3. Что значит "ПОЛНОЕ СОЕДИНЕНИЕ Обороты" ? В результат запроса надо включить также еще и те записи из обоих источников, для которых не найдено соответствий? т.е. документ может быть NULL?
Ответили:
пост #3
04.12.2015
13:29
#3
Ответ на
пост №2
Петров-В, 1 Да такой пункт есть2 Для этого имеется запись если Выборка.Документ = null тогда продолжить; иначе
Если Выборка.Документ.Метаданные() = Метаданные.Документы.ПеремещениеТоваров тогда
3 Полное соединение это когда ставятся галочки связи "все "
04.12.2015
14:01
#4
Посмотрел внимательнее, суперприкольный запрос.
Я конечно не совсем понял суть задачи, поэтому возникли такие вопросы.
1. Сразу никак нельзя было выбрать РегистрНакопления.ПартииТоваровНаСкладахБухгалтерскийУчет.ОстаткиИОбороты ?
2. Почему бы не засунуть условие не в "ГДЕ...", а в параметры виртуальой таблицы?
3. Если есть "СГРУППИРОВАТЬ ПО", то суммируемые поля (Стоимость), тоже засунуты в группировку? Может логичнее Сумма(СтоимостьКонечныйОстаток).
4. Если есть "ИТОГИ ПО ОБЩИЕ", а где итоговые поля?
Я конечно не совсем понял суть задачи, поэтому возникли такие вопросы.
1. Сразу никак нельзя было выбрать РегистрНакопления.ПартииТоваровНаСкладахБухгалтерскийУчет.ОстаткиИОбороты ?
2. Почему бы не засунуть условие не в "ГДЕ...", а в параметры виртуальой таблицы?
3. Если есть "СГРУППИРОВАТЬ ПО", то суммируемые поля (Стоимость), тоже засунуты в группировку? Может логичнее Сумма(СтоимостьКонечныйОстаток).
4. Если есть "ИТОГИ ПО ОБЩИЕ", а где итоговые поля?
Заполнение второго СубконтоБП 2.0 - уточненная декларация по НДС, разделы 8 и 9 актуальны - не выгружается
Читают тему
(гостей: 1)