Имя: Пароль:
1C
1С v8
верный ли запрос
0 LivingStar
 
05.08.13
12:15
правильно ли и в нужном месте ли наложенны фильтры?


ВЫБРАТЬ
    ПродажиОбороты.Период,
    ПродажиОбороты.Регистратор.Дата,
    ПродажиОбороты.Регистратор.ТорговаяТочка КАК ТорговаяТочка,
    ПродажиОбороты.Номенклатура,
    ПродажиОбороты.Регистратор,
    ПродажиОбороты.ДокументПродажи,
    ПродажиОбороты.КоличествоОборот,
    ПродажиОбороты.СтоимостьОборот
ИЗ
    РегистрНакопления.Продажи.Обороты(
            &НачДата,
            &КонДата,
            Регистратор,
            Номенклатура В ИЕРАРХИИ (&СписокНоменклатуры)
                И ДокументПродажи.ТорговаяТочка.ОсновнойМенеджерПокупателя = &ТА) КАК ПродажиОбороты
ГДЕ
    ПродажиОбороты.Регистратор ССЫЛКА Документ.РеализацияТоваровУслуг
1 Галахад
 
гуру
05.08.13
12:16
Да.
Нет.
Не знаю.
2 Maxus43
 
05.08.13
12:17
И ДокументПродажи.ТорговаяТочка.ОсновнойМенеджерПокупателя = &ТА

это вот я бы в ГДЕ вынес, и юзал Выразить
3 m-serg74
 
05.08.13
12:21
(2) а я бы через внутреннее соединение
ПО Регистратор = СсылкаНаРеализацию
и СсылкаНаРеализацию.ТорговаяТочка.ОсновнойМенеджерПокупателя = &ТА
4 m-serg74
 
05.08.13
12:21
ну соединение естественно с Документ.Реализация
5 LivingStar
 
05.08.13
12:27
почему возникает такая ошибка:

{Форма.ОсновнаяФорма.Форма(97)}: Ошибка при вызове метода контекста (Выполнить)
    Рез = Запрос.Выполнить();
по причине:
{(14, 2)}: Поле не найдено "ПродажиОбороты.Регистратор"
<<?>>ПродажиОбороты.Регистратор ССЫЛКА Документ.РеализацияТоваровУслуг


ВЫБРАТЬ
    ПродажиОбороты.Период,
    ПродажиОбороты.Регистратор.Дата,
    ПродажиОбороты.Регистратор.ТорговаяТочка,
    ПродажиОбороты.Номенклатура,
    ПродажиОбороты.Регистратор,
    ПродажиОбороты.ДокументПродажи,
    ПродажиОбороты.КоличествоОборот,
    ПродажиОбороты.СтоимостьОборот,
    ПродажиОбороты.Регистратор.ТорговаяТочка.ОсновнойМенеджерПокупателя
ИЗ
    РегистрНакопления.Продажи.Обороты(
            &НачДата,
            &КонДата,
            Регистратор,
            ДокументПродажи.ТорговаяТочка.ОсновнойМенеджерПокупателя = &ТА
                И Номенклатура В ИЕРАРХИИ (&СписокНоменклатуры)) КАК ПродажиОбороты
ГДЕ
    ПродажиОбороты.Регистратор ССЫЛКА Документ.РеализацияТоваровУслуг
6 LivingStar
 
05.08.13
12:30
странно в консоле выбирает нормально
7 LivingStar
 
05.08.13
12:39
(2) а как бы изпользовали ВЫРАЗИТЬ?

У меня на это ругается сейчас ДокументПродажи.ТорговаяТочка.ОсновнойМенеджерПокупателя = &ТА

еверные параметры в операции сравнения. Нельзя сравнивать поля
неограниченной длины и поля несовместимых типов.
РегистрНакопления.Продажи.Обороты(&НачДата, &КонДата, Регистратор, ДокументПродажи.ТорговаяТочка.ОсновнойМенеджерПокупателя <<?>>= &ТА) КАК ПродажиОбороты
8 m-serg74
 
05.08.13
13:02
если ОсновнойМенеджерПокупателя строка неограниченной длины, то надо через
ПОДСТРОКА(ОсновнойМенеджерПокупателя, 1, 100) = ПОДСТРОКА(&ТА, 1, 100)

ну или какая там максимальная длина у менеджеров
9 LivingStar
 
05.08.13
13:02
(8) там же тип справочник???? почему строка?
10 LivingStar
 
05.08.13
13:05
(8) основной менеджер это тип справочника пользователи, почему он ругается то???? главное в консоле все нормально выбирает
11 m-serg74
 
05.08.13
13:06
(9) я написал - "если", а если это справочник, то &ТА что в параметр передаешь?
12 m-serg74
 
05.08.13
13:06
что за конфа вообще?
13 m-serg74
 
05.08.13
13:10
(10) а еще лучше сделай как в (3) написал, потому что ДокументПродажи наверное имеет составной тип, и у каких нить документов может вообще не быть такого реквизита, либо делай ВЫРАЗИТЬ(ДокументПродажи КАК ДокументСсылка.Реализация).ОсновнойМенеджерПокупателя
14 LivingStar
 
05.08.13
13:11
(11) да кажется в этом дело, передавал элемент списка значений, а нужно передавать его значение, ссылку на справочник
15 m-serg74
 
05.08.13
13:12
)))