Имя: Пароль:
1C
1С v8
Запрос. Запись в одну колонку.
,
0 XiPyPg2012
 
05.09.13
10:12
Вопрос такой есть выборка из табличных частей двух документов.

Документ1ТабличнаяЧастьТовары (ссылка, номенклатура, характеристика)
Документ2ТабличнаяЧастьТовары (ссылка, номенклатура, характеристика)

Нужно если не Документ1ТабличнаяЧастьТовары.Ссылка.пустаяссылка тогда Документ1ТабличнаяЧастьТовары.номенклатура иначе Документ2ТабличнаяЧастьТовары.номенклатура.......пробовал сделать по типу
[CODE]выбор
когда не Документ1ТабличнаяЧастьТовары.Ссылка.пустаяссылка
тогда Документ1ТабличнаяЧастьТовары.номенклатура
иначе Документ2ТабличнаяЧастьТовары.номенклатура
конец как номенклатура[/CODE]
но если сделать так то все виснет, какие есть еще варианты.....смысл в том что мне надо чтоб во временом запросе определенные параметры грубо говоря попали в одну колонку выборки.....потому что потом идет еще 6 временых таблиц и вложеных запросов со связями с этим параметром
1 Maxus43
 
05.09.13
10:13
нормальный текст запроса приводи, тут неправильный даже синтаксис
2 Wobland
 
05.09.13
10:14
чо?
на свете есть значение(..ПустаяСсылка)
3 Ёпрст
 
05.09.13
10:14
ерунду какую то написал
4 Ёпрст
 
05.09.13
10:15
аутор..
5 viktor_vv
 
05.09.13
10:15
Покажи запрос. Имхается мне тебе надо не пустаяСсылка , а Есть Null
6 Ёпрст
 
05.09.13
10:15
(0)
если в обоих ТЧ есть значения, из какой табличной части брать номенклатуру ?
7 Ёпрст
 
05.09.13
10:16
Сдается, что аутору нужно тупо юнион с двух тч сделать и привет.
8 Wobland
 
05.09.13
10:16
(6) из любой, там связь по номенклатуре ;)
9 Wobland
 
05.09.13
10:16
(8) из первой
10 viktor_vv
 
05.09.13
10:19
Я так понял, очередной сеанс ясновидения и телепатии :).
11 Maxus43
 
05.09.13
10:19
(8) это ты по какой букве догадался?
12 XiPyPg2012
 
05.09.13
10:20
ВЫБРАТЬ
    ВЫБОР
        КОГДА НЕ ПЛ_ЗаказТехникиПоставщикуТовары.Ссылка = ЗНАЧЕНИЕ(Документ.ПЛ_ЗаказТехникиПоставщику.ПустаяСсылка)
            ТОГДА ПЛ_ЗаказТехникиПоставщикуТовары.Ссылка
        ИНАЧЕ ВводОстатковТовары.Ссылка
    КОНЕЦ КАК ЗаказТехникиПоставщику,
    ВЫБОР
        КОГДА НЕ ПЛ_ЗаказТехникиПоставщикуТовары.Ссылка = ЗНАЧЕНИЕ(Документ.ПЛ_ЗаказТехникиПоставщику.ПустаяСсылка)
            ТОГДА ПЛ_ЗаказТехникиПоставщикуТовары.Номенклатура
        ИНАЧЕ ВводОстатковТовары.Номенклатура
    КОНЕЦ КАК Номенклатура,
    ВЫБОР
        КОГДА НЕ ПЛ_ЗаказТехникиПоставщикуТовары.Ссылка = ЗНАЧЕНИЕ(Документ.ПЛ_ЗаказТехникиПоставщику.ПустаяСсылка)
            ТОГДА ПЛ_ЗаказТехникиПоставщикуТовары.Характеристика
        ИНАЧЕ ВводОстатковТовары.Характеристика
    КОНЕЦ КАК ХарактеристикаНоменклатуры,
    ВЫБОР
        КОГДА НЕ ПЛ_ЗаказТехникиПоставщикуТовары.Ссылка = ЗНАЧЕНИЕ(Документ.ПЛ_ЗаказТехникиПоставщику.ПустаяСсылка)
            ТОГДА ПЛ_ЗаказТехникиПоставщикуТовары.Цена
        ИНАЧЕ ВводОстатковТовары.Цена
    КОНЕЦ КАК ЦенаПоЗаказуТехники,
    ПЛ_ЗаказТехникиПоставщикуТовары.УсловиеПоставки КАК УсловиеПоставки,
    ВЫБОР
        КОГДА НЕ ПЛ_ЗаказТехникиПоставщикуТовары.Ссылка = ЗНАЧЕНИЕ(Документ.ПЛ_ЗаказТехникиПоставщику.ПустаяСсылка)
            ТОГДА ПЛ_ЗаказТехникиПоставщикуТовары.Ссылка.СуммаДокумента
        ИНАЧЕ ВводОстатковТовары.Сумма
    КОНЕЦ КАК СуммаЗаказаТехникиПоставщику,
    ВЫБОР
        КОГДА ПЛ_ЗаказТехникиПоставщикуТовары.Ссылка.СуммаДокумента = 0
            ТОГДА 0
        ИНАЧЕ ПЛ_ЗаказТехникиПоставщикуТовары.СуммаСНДС / ПЛ_ЗаказТехникиПоставщикуТовары.Ссылка.СуммаДокумента
    КОНЕЦ КАК ПроцентВхождения,
    ПЛ_ЗаказТехникиПоставщикуТовары.ДатаПоступления,
    ВЫБОР
        КОГДА НЕ ПЛ_ЗаказТехникиПоставщикуТовары.Ссылка = ЗНАЧЕНИЕ(Документ.ПЛ_ЗаказТехникиПоставщику.ПустаяСсылка)
            ТОГДА ПЛ_ЗаказТехникиПоставщикуТовары.Ссылка.Валюта
        ИНАЧЕ ВводОстатковТовары.Ссылка.Валюта
    КОНЕЦ КАК ВалютаЗаказаТехники,
    ПЛ_ЗаказТехникиПоставщикуТовары.ДатаВыходаСЗавода КАК ДатаГотовностиКОтгрузке,
    ПЛ_ЗаказТехникиПоставщикуТовары.ПЛ_ДатаГотовностиПоДоговору КАК ДатаГотовностиПоДоговору
ПОМЕСТИТЬ ВТНоменклатураИХарактеристикиПоЗаказамТехники
ИЗ
    Документ.ПЛ_ЗаказТехникиПоставщику.Товары КАК ПЛ_ЗаказТехникиПоставщикуТовары,
    Документ.ВводОстатков.Товары КАК ВводОстатковТовары
ГДЕ
    (ВводОстатковТовары.Ссылка <> ""
            ИЛИ ПЛ_ЗаказТехникиПоставщикуТовары.Ссылка <> "")
    И (ПЛ_ЗаказТехникиПоставщикуТовары.Ссылка.СтатусЗаказа <> ЗНАЧЕНИЕ(Перечисление.ПЛ_СтатусыЗаказовТехникиПоставщикам.НеРазмещен)
                И ПЛ_ЗаказТехникиПоставщикуТовары.Отменено = ЛОЖЬ
                И ПЛ_ЗаказТехникиПоставщикуТовары.Ссылка.Проведен = ИСТИНА
            ИЛИ ВводОстатковТовары.Ссылка.Проведен = ИСТИНА
                И ВводОстатковТовары.Номенклатура.ВидНоменклатуры = ЗНАЧЕНИЕ(Справочник.ВидыНоменклатуры.ПЛ_Техника))

ИНДЕКСИРОВАТЬ ПО
    Номенклатура,
    ХарактеристикаНоменклатуры
;
13 Wobland
 
05.09.13
10:21
мда.. всё ещё хуже оказалось
14 XiPyPg2012
 
05.09.13
10:22
ГДЕ
    (не ВводОстатковТовары.Ссылка = ЗНАЧЕНИЕ(Документ.ВводОстатков.ПустаяСсылка)
            ИЛИ не ПЛ_ЗаказТехникиПоставщикуТовары.Ссылка = ЗНАЧЕНИЕ(Документ.ПЛ_ЗаказТехникиПоставщику.ПустаяСсылка))
    И (ПЛ_ЗаказТехникиПоставщикуТовары.Ссылка.СтатусЗаказа <> ЗНАЧЕНИЕ(Перечисление.ПЛ_СтатусыЗаказовТехникиПоставщикам.НеРазмещен)
                И ПЛ_ЗаказТехникиПоставщикуТовары.Отменено = ЛОЖЬ
                И ПЛ_ЗаказТехникиПоставщикуТовары.Ссылка.Проведен = ИСТИНА
            ИЛИ ВводОстатковТовары.Ссылка.Проведен = ИСТИНА
                И ВводОстатковТовары.Номенклатура.ВидНоменклатуры = ЗНАЧЕНИЕ(Справочник.ВидыНоменклатуры.ПЛ_Техника))

ИНДЕКСИРОВАТЬ ПО
    Номенклатура,
    ХарактеристикаНоменклатуры
;
15 viktor_vv
 
05.09.13
10:22
Таки (7) был прав, похоже :).

Интересно, а где ты такую ссылку видел

ПЛ_ЗаказТехникиПоставщикуТовары.Ссылка <> ""
16 Maxus43
 
05.09.13
10:23
(14) не проверяй на пустую ссылку, она никогда не будет пустой
17 viktor_vv
 
05.09.13
10:24
Учитывая это

    (ВводОстатковТовары.Ссылка <> ""
            ИЛИ ПЛ_ЗаказТехникиПоставщикуТовары.Ссылка <> "")

тебе походу внутренне соединение надо.

Хотя лучше своими словами объясни в чем тайный смыл этого запоса.
18 Wobland
 
05.09.13
10:24
(15) это альтернатива &Ложь (видел и такое)
19 Wobland
 
05.09.13
10:24
(18) &Истина, конечно
20 Maxus43
 
05.09.13
10:24
и зачем Кросс джойн? ты понимаешь что будет в результате?
"всё зависает" - это ещё повезло, я бы выключился и не подпускал твой сеанс близко...
21 viktor_vv
 
05.09.13
10:25
*запроса.
22 XiPyPg2012
 
05.09.13
10:32
А как результат объединения поместить в Временную таблицу
23 Maxus43
 
05.09.13
10:33
точно так же