Имя: Пароль:
1C
 
Несовместимые типы "ВЫБОР"
0 repin_mike
 
10.12.14
16:39
ВЫБРАТЬ
    ПоступлениеТоваровУслугУслуги.Ссылка,
    ВЫБОР
        КОГДА ПоступлениеТоваровУслугУслуги.Номенклатура = &ПустаяСсылка
            ТОГДА ПоступлениеТоваровУслугУслуги.Содержание
        ИНАЧЕ ПоступлениеТоваровУслугУслуги.Номенклатура
    КОНЕЦ
ИЗ
    Документ.ПоступлениеТоваровУслуг.Услуги КАК ПоступлениеТоваровУслугУслуги



Пишет "Несовместимые типы "ВЫБОР"". Почему?
1 Жан Пердежон
 
10.12.14
16:39
Содержание - строка неограниченной длины?
2 zbv
 
10.12.14
16:40
а что в &ПустаяСсылка ?
3 repin_mike
 
10.12.14
16:41
(1) Спасибо!
4 repin_mike
 
10.12.14
16:42
(2) В пустая ссылка - очевидно пустая ссылка на справочник номенклатуры
5 repin_mike
 
10.12.14
16:43
Правильно:
ВЫБРАТЬ
    ПоступлениеТоваровУслугУслуги.Ссылка,
    ВЫБОР
        КОГДА ПоступлениеТоваровУслугУслуги.Номенклатура = &ПустаяСсылка
            ТОГДА ВЫРАЗИТЬ(ПоступлениеТоваровУслугУслуги.Содержание КАК Строка(100))
        ИНАЧЕ ПоступлениеТоваровУслугУслуги.Номенклатура
    КОНЕЦ
6 spiller26
 
10.12.14
16:46
Замени &ПустаяСсылка на ЗНАЧЕНИЕ(Справочник.Организации.ПустаяСсылка)
7 spiller26
 
10.12.14
16:46
(6) ЗНАЧЕНИЕ(Справочник.Номенклатура.ПустаяСсылка)
8 repin_mike
 
10.12.14
16:50
(7) И вам спасибо! Так действительно удобнее
9 spiller26
 
10.12.14
16:55
(5) ВЫРАЗИТЬ(ПоступлениеТоваровУслугУслуги.Содержание КАК Строка(100)) лучше использовать при сравнение различных типов данных. Например для связей.
10 mehfk
 
10.12.14
17:22
Кстати, подобная ошибка во множестве мест в типовых конфигурациях, проявляющаяся на MS SQL 2000
что-то вроде

SELECT
  TAB1.поленеограниченнойдлины
FROM
  TAB1 as TAB1
UNION ALL
SELECT
  TAB2.СтрокаДлина150
FROM
  TAB2 as TAB2