Имя: Пароль:
1C
1С v8
1С Запрос ошибка: Таблица не найдена.
0 Solvo
 
11.11.13
03:44
Доброго времени суток. Я новичок в 1С. Помогите пожалуйста разобраться: на запрос выдает ошибку Таблица не найдена "СсГодВв"
<<?>>СсГодВв КАК СсГодВв. Запрос выполняю через внешний отчет.

ВЫБРАТЬ РАЗЛИЧНЫЕ
    Сегменты.Номенклатура,
    Сегменты.Характеристика,
    ИСТИНА КАК ИспользуетсяОтборПоСегментуНоменклатуры
ПОМЕСТИТЬ ОтборПоСегментуНоменклатуры
ИЗ
    РегистрСведений.НоменклатураСегмента КАК Сегменты
{ГДЕ
    Сегменты.Сегмент.* КАК СегментНоменклатуры,
    Сегменты.Номенклатура.* КАК Номенклатура,
    Сегменты.Характеристика.* КАК Характеристика}

ИНДЕКСИРОВАТЬ ПО
    Сегменты.Номенклатура,
    Сегменты.Характеристика,
    ИспользуетсяОтборПоСегментуНоменклатуры
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ РАЗРЕШЕННЫЕ
    ТоварыНаСкладах.ПериодСекунда КАК Период,
    ТоварыНаСкладах.Регистратор КАК Регистратор,
    ТоварыНаСкладах.Номенклатура КАК Номенклатура,
    ТоварыНаСкладах.Характеристика КАК Характеристика,
    ТоварыНаСкладах.Склад КАК Склад,
    ТоварыНаСкладах.Помещение КАК Помещение,
    ТоварыНаСкладах.ВНаличииНачальныйОстаток КАК КоличествоНачальныйОстаток,
    ТоварыНаСкладах.ВНаличииПриход КАК КоличествоПриход,
    ТоварыНаСкладах.ВНаличииРасход КАК КоличествоРасход,
    ТоварыНаСкладах.ВНаличииКонечныйОстаток КАК КоличествоКонечныйОстаток
ПОМЕСТИТЬ ОстаткиИОбороты
ИЗ
    РегистрНакопления.ТоварыНаСкладах.ОстаткиИОбороты(, , Авто, , {(Номенклатура).* КАК Номенклатура, (Характеристика).* КАК Характеристика, (Склад).* КАК Склад, ((Номенклатура, Характеристика) В
                (ВЫБРАТЬ
                    ОтборПоСегментуНоменклатуры.Номенклатура,
                    ОтборПоСегментуНоменклатуры.Характеристика
                ИЗ
                    ОтборПоСегментуНоменклатуры
                ГДЕ
                    ОтборПоСегментуНоменклатуры.ИспользуетсяОтборПоСегментуНоменклатуры = &ИспользуетсяОтборПоСегментуНоменклатуры))}) КАК ТоварыНаСкладах
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ РАЗРЕШЕННЫЕ
    ТаблицаЦен.Период КАК Период,
    ТаблицаЦен.Регистратор КАК Регистратор,
    ТаблицаЦен.Номенклатура КАК Номенклатура,
    ТаблицаЦен.Характеристика КАК Характеристика,
    ВЫБОР
        КОГДА ЦеныНоменклатурыА.Упаковка = ЗНАЧЕНИЕ(Справочник.УпаковкиНоменклатуры.ПустаяСсылка)
                ИЛИ ЕСТЬNULL(ЦеныНоменклатурыА.Упаковка.Коэффициент, 0) = 0
            ТОГДА ЦеныНоменклатурыА.Цена
        ИНАЧЕ ЦеныНоменклатурыА.Цена / ЦеныНоменклатурыА.Упаковка.Коэффициент
    КОНЕЦ КАК Цена,
    ВЫБОР
        КОГДА ЦеныНоменклатурыБ.Цена ЕСТЬ NULL
            ТОГДА 0
        КОГДА ЦеныНоменклатурыБ.Упаковка = ЗНАЧЕНИЕ(Справочник.УпаковкиНоменклатуры.ПустаяСсылка)
                ИЛИ ЕСТЬNULL(ЦеныНоменклатурыБ.Упаковка.Коэффициент, 0) = 0
            ТОГДА ЦеныНоменклатурыБ.Цена
        ИНАЧЕ ЦеныНоменклатурыБ.Цена / ЦеныНоменклатурыБ.Упаковка.Коэффициент
    КОНЕЦ КАК СтараяЦена,
    ВЫБОР
        КОГДА ЦеныНоменклатурыА.Упаковка = ЗНАЧЕНИЕ(Справочник.УпаковкиНоменклатуры.ПустаяСсылка)
                ИЛИ ЕСТЬNULL(ЦеныНоменклатурыА.Упаковка.Коэффициент, 0) = 0
            ТОГДА ЦеныНоменклатурыА.Цена
        ИНАЧЕ ЦеныНоменклатурыА.Цена / ЦеныНоменклатурыА.Упаковка.Коэффициент
    КОНЕЦ - ВЫБОР
        КОГДА ЦеныНоменклатурыБ.Цена ЕСТЬ NULL
            ТОГДА 0
        КОГДА ЦеныНоменклатурыБ.Упаковка = ЗНАЧЕНИЕ(Справочник.УпаковкиНоменклатуры.ПустаяСсылка)
                ИЛИ ЕСТЬNULL(ЦеныНоменклатурыБ.Упаковка.Коэффициент, 0) = 0
            ТОГДА ЦеныНоменклатурыБ.Цена
        ИНАЧЕ ЦеныНоменклатурыБ.Цена / ЦеныНоменклатурыБ.Упаковка.Коэффициент
    КОНЕЦ КАК Дельта
ПОМЕСТИТЬ ИзмененияЦен
ИЗ
    (ВЫБРАТЬ
        МАКСИМУМ(ЦеныНоменклатуры.Период) КАК Период,
        МАКСИМУМ(ЦеныДоИзменения.Период) КАК ДатаПрошлогоИзменения,
        ЦеныНоменклатуры.Регистратор КАК Регистратор,
        ЦеныНоменклатуры.ВидЦены КАК ВидЦены,
        ЦеныНоменклатуры.Номенклатура КАК Номенклатура,
        ЦеныНоменклатуры.Характеристика КАК Характеристика
    ИЗ
        РегистрСведений.ЦеныНоменклатуры КАК ЦеныНоменклатуры
            ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЦеныНоменклатуры КАК ЦеныДоИзменения
            ПО ЦеныНоменклатуры.Период > ЦеныДоИзменения.Период
                И ЦеныНоменклатуры.Номенклатура = ЦеныДоИзменения.Номенклатура
                И ЦеныНоменклатуры.Характеристика = ЦеныДоИзменения.Характеристика
                И (&ВидЦены = ЦеныДоИзменения.ВидЦены)
    ГДЕ
        ЦеныНоменклатуры.ВидЦены = &ВидЦены
    {ГДЕ
        (ЦеныНоменклатуры.Период <= &КонецПериода),
        ЦеныНоменклатуры.Номенклатура.* КАК Номенклатура,
        ЦеныНоменклатуры.Характеристика.* КАК Характеристика}
    
    СГРУППИРОВАТЬ ПО
        ЦеныНоменклатуры.Регистратор,
        ЦеныНоменклатуры.ВидЦены,
        ЦеныНоменклатуры.Номенклатура,
        ЦеныНоменклатуры.Характеристика) КАК ТаблицаЦен
        ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЦеныНоменклатуры КАК ЦеныНоменклатурыА
        ПО ТаблицаЦен.Период = ЦеныНоменклатурыА.Период
            И ТаблицаЦен.Номенклатура = ЦеныНоменклатурыА.Номенклатура
            И ТаблицаЦен.Характеристика = ЦеныНоменклатурыА.Характеристика
            И ТаблицаЦен.ВидЦены = ЦеныНоменклатурыА.ВидЦены
        ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЦеныНоменклатуры КАК ЦеныНоменклатурыБ
        ПО ТаблицаЦен.ДатаПрошлогоИзменения = ЦеныНоменклатурыБ.Период
            И ТаблицаЦен.Номенклатура = ЦеныНоменклатурыБ.Номенклатура
            И ТаблицаЦен.Характеристика = ЦеныНоменклатурыБ.Характеристика
            И ТаблицаЦен.ВидЦены = ЦеныНоменклатурыБ.ВидЦены
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ РАЗРЕШЕННЫЕ
    ДополнительныеСведения.Объект КАК Склад,
    ДополнительныеСведения.Свойство КАК Параметр,
    ДополнительныеСведения.Значение КАК Свойство
ПОМЕСТИТЬ СвГодВыпуска
ИЗ
    РегистрСведений.ДополнительныеСведения КАК ДополнительныеСведения
ГДЕ
    ДополнительныеСведения.Свойство.Наименование = "ГодВыпуска"
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
    ДополнительныеСведения.Объект,
    ДополнительныеСведения.Свойство,
    ДополнительныеСведения.Значение КАК ГодВв
ПОМЕСТИТЬ СсГодВв
ИЗ
    РегистрСведений.ДополнительныеСведения КАК ДополнительныеСведения
;

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

ОБЪЕДИНИТЬ ВСЕ

ВЫБРАТЬ
    ВидыЦен.ВалютаЦены,
    БлижайшиеОстаткиПоНоменклатуре.Период,
    НАЧАЛОПЕРИОДА(БлижайшиеОстаткиПоНоменклатуре.Период, МИНУТА),
    НАЧАЛОПЕРИОДА(БлижайшиеОстаткиПоНоменклатуре.Период, ЧАС),
    НАЧАЛОПЕРИОДА(БлижайшиеОстаткиПоНоменклатуре.Период, ДЕНЬ),
    НАЧАЛОПЕРИОДА(БлижайшиеОстаткиПоНоменклатуре.Период, НЕДЕЛЯ),
    НАЧАЛОПЕРИОДА(БлижайшиеОстаткиПоНоменклатуре.Период, МЕСЯЦ),
    НАЧАЛОПЕРИОДА(БлижайшиеОстаткиПоНоменклатуре.Период, КВАРТАЛ),
    НАЧАЛОПЕРИОДА(БлижайшиеОстаткиПоНоменклатуре.Период, ГОД),
    БлижайшиеОстаткиПоНоменклатуре.Регистратор,
    БлижайшиеОстаткиПоНоменклатуре.Склад,
    БлижайшиеОстаткиПоНоменклатуре.Помещение,
    БлижайшиеОстаткиПоНоменклатуре.Номенклатура,
    БлижайшиеОстаткиПоНоменклатуре.Характеристика,
    ЕСТЬNULL(ТоварыНаСкладахОстаткиИОбороты.КоличествоКонечныйОстаток, 0),
    0,
    0,
    ЕСТЬNULL(ТоварыНаСкладахОстаткиИОбороты.КоличествоКонечныйОстаток, 0),
    ЕСТЬNULL(БлижайшиеОстаткиПоНоменклатуре.СтараяЦена * ТоварыНаСкладахОстаткиИОбороты.КоличествоКонечныйОстаток, 0),
    ВЫБОР
        КОГДА БлижайшиеОстаткиПоНоменклатуре.Дельта > 0
            ТОГДА ЕСТЬNULL(БлижайшиеОстаткиПоНоменклатуре.Дельта * ТоварыНаСкладахОстаткиИОбороты.КоличествоКонечныйОстаток, 0)
        ИНАЧЕ 0
    КОНЕЦ,
    ВЫБОР
        КОГДА БлижайшиеОстаткиПоНоменклатуре.Дельта < 0
            ТОГДА ЕСТЬNULL(-БлижайшиеОстаткиПоНоменклатуре.Дельта * ТоварыНаСкладахОстаткиИОбороты.КоличествоКонечныйОстаток, 0)
        ИНАЧЕ 0
    КОНЕЦ,
    ЕСТЬNULL(БлижайшиеОстаткиПоНоменклатуре.Цена * ТоварыНаСкладахОстаткиИОбороты.КоличествоКонечныйОстаток, 0),
    СсГодВв.ГодВв
ИЗ
    (ВЫБРАТЬ
        ИзмененияЦен.Период КАК Период,
        ИзмененияЦен.Регистратор КАК Регистратор,
        ИзмененияЦен.Дельта КАК Дельта,
        ИзмененияЦен.Цена КАК Цена,
        ИзмененияЦен.СтараяЦена КАК СтараяЦена,
        ИзмененияЦен.Номенклатура КАК Номенклатура,
        ИзмененияЦен.Характеристика КАК Характеристика,
        ТоварыНаСкладахОстаткиИОбороты.Склад КАК Склад,
        ТоварыНаСкладахОстаткиИОбороты.Помещение КАК Помещение,
        МАКСИМУМ(ТоварыНаСкладахОстаткиИОбороты.Период) КАК ПериодМаксимум
    ИЗ
        ИзмененияЦен КАК ИзмененияЦен
            ЛЕВОЕ СОЕДИНЕНИЕ ОстаткиИОбороты КАК ТоварыНаСкладахОстаткиИОбороты
            ПО ИзмененияЦен.Период > ТоварыНаСкладахОстаткиИОбороты.Период
                И ИзмененияЦен.Номенклатура = ТоварыНаСкладахОстаткиИОбороты.Номенклатура
                И ИзмененияЦен.Характеристика = ТоварыНаСкладахОстаткиИОбороты.Характеристика
    {ГДЕ
        ИзмененияЦен.Номенклатура.* КАК Номенклатура,
        ИзмененияЦен.Характеристика.* КАК Характеристика}
    
    СГРУППИРОВАТЬ ПО
        ИзмененияЦен.Период,
        ИзмененияЦен.Регистратор,
        ИзмененияЦен.Дельта,
        ИзмененияЦен.Цена,
        ИзмененияЦен.СтараяЦена,
        ИзмененияЦен.Номенклатура,
        ТоварыНаСкладахОстаткиИОбороты.Склад,
        ТоварыНаСкладахОстаткиИОбороты.Помещение,
        ИзмененияЦен.Характеристика) КАК БлижайшиеОстаткиПоНоменклатуре
        ЛЕВОЕ СОЕДИНЕНИЕ ОстаткиИОбороты КАК ТоварыНаСкладахОстаткиИОбороты
        ПО БлижайшиеОстаткиПоНоменклатуре.ПериодМаксимум = ТоварыНаСкладахОстаткиИОбороты.Период
            И БлижайшиеОстаткиПоНоменклатуре.Склад = ТоварыНаСкладахОстаткиИОбороты.Склад
            И БлижайшиеОстаткиПоНоменклатуре.Помещение = ТоварыНаСкладахОстаткиИОбороты.Помещение
            И БлижайшиеОстаткиПоНоменклатуре.Номенклатура = ТоварыНаСкладахОстаткиИОбороты.Номенклатура
            И БлижайшиеОстаткиПоНоменклатуре.Характеристика = ТоварыНаСкладахОстаткиИОбороты.Характеристика
        ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ВидыЦен КАК ВидыЦен
        ПО (ВидыЦен.Ссылка = &ВидЦены),
    СсГодВв КАК СсГодВв
ГДЕ
    ТоварыНаСкладахОстаткиИОбороты.КоличествоКонечныйОстаток <> 0

Заранее благодарен за вашу помощь.
1 wertyu
 
11.11.13
03:58
она в менеджере временных таблиц, ты не всё скопировал
2 Solvo
 
11.11.13
04:12
Запрос выполнен с помощью схеме компоновки данных и ни грамма кодинга в модуле формы... Подскажите пожалуйста, где листинг этого менеджера?! 1с 8.2
3 Wobland
 
11.11.13
04:29
>ПОМЕСТИТЬ СсГодВв
автор врёт
4 Solvo
 
11.11.13
04:40
Извините в каком месте? В том то и проблема что все по идее должно работать... на простом запросе все работает нормально, но как только я делаю выборку во временную таблицу и пытаюсь прицепить к этому запросу возникает ошибка. Уверяю вас "автор" не врет а просит консультации у гуру 1С.
5 SeraFim
 
11.11.13
04:47
А меня вот это вот раздражает:
,
    СсГодВв КАК СсГодВв

Может, всё-таки соединение должно быть какое-то?
6 wertyu
 
11.11.13
05:03
(2) ты само формирование временной таблицы не добавил
7 wertyu
 
11.11.13
05:06
+(6) у тебя должно быть ещё после ";"

ВЫБРАТЬ РАЗЛИЧНЫЕ
    Таблица.ГодВв
ПОМЕСТИТЬ СсГодВв
ИЗ Таблиц
;
8 Solvo
 
11.11.13
05:15
wertyu:
вот оно формирование временной таблицы, оно там есть:
ВЫБРАТЬ
    ДополнительныеСведения.Объект,
    ДополнительныеСведения.Свойство,
    ДополнительныеСведения.Значение КАК ГодВв
ПОМЕСТИТЬ СсГодВв
ИЗ
    РегистрСведений.ДополнительныеСведения КАК ДополнительныеСведения
;

SeraFim:
Действительно я и не подумал. Для себя вывод вынес, что лучше все делать ручками,а не кривым конструктором. Благодарю. Всем спасибо.

ЛЕВОЕ СОЕДИНЕНИЕ СсГодВв КАК СсГодВв
ПО БлижайшиеОстаткиПоНоменклатуре.Склад = СсГодВв.Склады
9 wertyu
 
11.11.13
05:18
(8) в (0) этого нет
10 wertyu
 
11.11.13
05:19
+(9) извиняюсь, есть, не все плюсики раскрыл
11 wertyu
 
11.11.13
05:22
(8) конструктор тут не при делах, он только предлагает, а уж какие связи настроить - это дело прога
12 Solvo
 
11.11.13
05:27
Значит будем выпрямлять руки путем проб и ошибок =)