Имя: Пароль:
1C
 
конструкция ГДЕ
,
0 gorilla
 
30.01.16
23:45
добрый вечер подскажите правильно ли я использовал конструкцию ГДЕ в следующем фрагменте кода:

        |            ПродажиОбороты.СуммаВзаиморасчетовОборот КАК СтоимостьБезНДС,
        |            ПродажиОбороты.СуммаВзаиморасчетовОборот КАК Стоимость,
        |            ЕСТЬNULL(ТаблицаРегистраПродажиСебестоимость.СтоимостьОборот, 0) КАК Себестоимость
        |        ИЗ
        |            РегистрНакопления.ЗаказыПокупателей.Обороты(&ДатаНач, &ДатаКон, Регистратор, {Организация.* КАК Организация,Проект.* КАК Проект ,Подразделение.* КАК Подразделение , Контрагент.* КАК Покупатель, ДоговорКонтрагента.* КАК ДоговорПокупателя, Номенклатура.* КАК Номенклатура, ХарактеристикаНоменклатуры.* КАК ХарактеристикаНоменклатуры, ЗаказПокупателя.* КАК ЗаказПокупателя}) КАК ПродажиОбороты
        |                ЛЕВОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ
        |                    ПродажиСебестоимость.Номенклатура КАК Номенклатура,
        |                    ПродажиСебестоимость.ХарактеристикаНоменклатуры КАК ХарактеристикаНоменклатуры,
        |                    ПродажиСебестоимость.ЗаказПокупателя КАК ЗаказПокупателя,
        |                    ВЫБОР
        |                        КОГДА ПродажиСебестоимость.ДокументДвижения <> НЕОПРЕДЕЛЕНО
        |                            ТОГДА ПродажиСебестоимость.ДокументДвижения
        |                        ИНАЧЕ ПродажиСебестоимость.Регистратор
        |                    КОНЕЦ КАК Регистратор
        |ГДЕ
        |    НЕ ЗначениеЗаполнено(ПродажиОбороты.Контрагент),
        |        СУММА(ПродажиСебестоимость.ЗакупочнаяСумма) КАК СтоимостьОборот
        |        ИЗ
        |        РегистрНакопления.ЗаказыПокупателей КАК ПродажиСебестоимость
        |                {ГДЕ
        |                    ПродажиСебестоимость.Проект.* КАК Проект,    
        |                    ПродажиСебестоимость.Подразделение.* КАК Подразделение,    
        |                    ПродажиСебестоимость.Номенклатура.* КАК Номенклатура,
1 gorilla
 
30.01.16
23:47
где использую для того чтобы не брать регистры где есть пустые не заполненные контаргенты
2 Сергиус
 
31.01.16
00:09
(0)Не правильно, в ГДЕ должно быть условие..а у тебя выборка.
3 gorilla
 
31.01.16
00:15
заменил |ГДЕ
        |    НЕ ЗначениеЗаполнено(ПродажиОбороты.Контрагент),

на         |ГДЕ
        |    ПродажиОбороты.Контрагент <> ЗНАЧЕНИЕ(Справочник.Контрагент.ПустаяСсылка)
4 gorilla
 
31.01.16
00:15
выдает ошибку Неверные параметры "Справочник.Контрагент.ПустаяСсылка"
ПродажиОбороты.Контрагент <> ЗНАЧЕНИЕ(<<?>>Справочник.Контрагент.ПустаяСсылка)
5 gorilla
 
31.01.16
00:20
извините что не уточнил.я об этом где
        |ГДЕ
        |    НЕ ЗначениеЗаполнено(ПродажиОбороты.Контрагент),
6 mistеr
 
31.01.16
00:20
(0) Неправильно. ГДЕ располагается после ИЗ.
7 gorilla
 
31.01.16
00:23
(6)ну верно после        |        ИЗ
        |            РегистрНакопления.ЗаказыПокупателей.Обороты(
8 gorilla
 
31.01.16
00:24
а что может означать эта ошибка?ПродажиОбороты.Контрагент <> ЗНАЧЕНИЕ(<<?>>Справочник.Контрагент.ПустаяСсылка) неверные параметры
9 mistеr
 
31.01.16
00:31
(7) Неверно. Твое ГДЕ относится к другому ИЗ, с точки зрения структуры запроса.

>а что может означать эта ошибка?
Не Контрагент, а Контрагенты.
10 gorilla
 
31.01.16
01:14
спасибо ошибку понял но
    
        |ГДЕ
        |    ВложенныйЗапрос.Покупатель <> ЗНАЧЕНИЕ(Справочник.Контрагенты.ПустаяСсылка)
        |    И ВложенныйЗапрос.ЗаказПокупателя.Стадия <> ЗНАЧЕНИЕ(Перечисление.Стадия.Оплачен)

пустышки отсеял а вот  оплаченные не хочет отсеивать
11 gorilla
 
31.01.16
03:07
делаю так чисто в целях проверки работат ли условие
|ГДЕ
     //  |    ВложенныйЗапрос.Покупатель <> //ЗНАЧЕНИЕ(Справочник.Контрагенты.ПустаяСсылка)

        |    И ВложенныйЗапрос.ЗаказПокупателя.Стадия <> ЗНАЧЕНИЕ(Перечисление.Стадия.Оплачен)

не отрабатывает
12 hhhh
 
31.01.16
05:55
значит нет такого перечисления Стадия. Какую ошибку выдает?
13 VladZ
 
31.01.16
07:02
|ГДЕ
        |    НЕ ЗначениеЗаполнено(ПродажиОбороты.Контрагент),
        |        СУММА(ПродажиСебестоимость.ЗакупочнаяСумма) КАК СтоимостьОборот
        |        ИЗ
        |        РегистрНакопления.ЗаказыПокупателей КАК ПродажиСебестоимость

- это бред.
14 mistеr
 
31.01.16
09:56
(11) Воспользуйся конструктором, он не ошибается.
15 gorilla
 
31.01.16
12:27
(14)так конструктором и построил