|
Тип не может быть выбран в запросе | ☑ | ||
---|---|---|---|---|
0
yanejsh
06.11.13
✎
10:00
|
Есть ТЗ с колонкой, в которой может быть два типа
Массив = Новый Массив; Массив.Добавить(Новый ОписаниеТипов("СправочникСсылка.Материалы")); Массив.Добавить(Новый ОписаниеТипов("СправочникСсылка.Номенклатура")); ОписаниеТипаМатерИНомен = Новый ОписаниеТипов(Массив, , ); ТаблицаРасходаМатериалов.Колонки.Добавить("Материал",ОписаниеТипаМатерИНомен); Далее в запросе эта таблица подставляется во временную и выбирается |ВЫРАЗИТЬ(ТаблицаМатериалов.Материал КАК Справочник.Номенклатура) КАК Материал, Когда был один тип - все понятно. Сейчас надо добавить два типа, а как это сделать в запросе? |
|||
1
yanejsh
06.11.13
✎
10:19
|
как-то так пробую
http://kb.mista.ru/article.php?id=526 - неоплучается, говорит, что Несовместимые типы "ВЫРАЗИТЬ" <<?>>ВЫРАЗИТЬ(НЕОПРЕДЕЛЕНО КАК Справочник.Номенклатура) КАК Ссылка |
|||
2
yanejsh
06.11.13
✎
10:43
|
Обошелся этим
ВЫРАЗИТЬ(ТаблицаМатериалов.Материал КАК Строка(100)) КАК Материал, |
|||
3
Галахад
гуру
06.11.13
✎
10:45
|
Как это? Справочник в строку преобразовывает?
|
|||
4
Feunoir
06.11.13
✎
10:51
|
(2) А какая цель типизации в этом случае?
|
|||
5
yanejsh
06.11.13
✎
11:00
|
в ТЗ могло добавляться два типа справочника. теперь добавляется имя элемента справочника.
А цель - чтобы в запросе выбирать, он без типизации не может |
|||
6
yanejsh
06.11.13
✎
11:01
|
ну и вместо
ТаблицаРасходаМатериалов.Колонки.Добавить("Материал",ОписаниеТипаМатерИНомен); стало ТаблицаРасходаМатериалов.Колонки.Добавить("Материал",Новый ОписаниеТипов(Массив, , Новый КвалификаторыСтроки(100))); |
|||
7
Feunoir
06.11.13
✎
11:09
|
(5) Да ладно? Прямо так и не может? У параметра - таблицы значения должны быть все колонки явно типизированы, а в запросе уже больше ничего не требуется. Оно там само разберется. Но если уж тебе очень хочется, тогда через ВЫБОР.
ВЫБОР КОГДА (... ССЫЛКА Справочник.Материалы) ТОГДА ВЫРАЗИТЬ(... КАК Справочник.Материалы) ... КОНЕЦ |
|||
8
yanejsh
06.11.13
✎
11:25
|
что-то ОНО САМО не разбиралось.
через выбор тоже понятно. |
|||
9
Defender aka LINN
06.11.13
✎
11:31
|
(2) То есть ты нам вот так вот запросто рассказываешь, что 1С преобразовывает типы в запросе, да?
|
|||
10
hhhh
06.11.13
✎
11:42
|
(8) сделайте 2 колонки
ТаблицаРасходаМатериалов.Колонки.Добавить("Материал",ОписаниеТипаМатер); ТаблицаРасходаМатериалов.Колонки.Добавить("Номенклатура",ОписаниеТипаНомен); чего вы паритесь из-за фигни? |
|||
11
Sammo
06.11.13
✎
11:49
|
1. Зачем в запросе делать Выразить если колонка итак типизированная?
2. Если колонка составного типа, она и в запросе будет составного типа |
|||
12
Sammo
06.11.13
✎
11:51
|
+11 Спокойно можно было использовать .Представление или Код или наименование.
С нюансами (про неявное соединение) |
|||
13
Rovan
гуру
06.11.13
✎
12:15
|
(1) НЕОПРЕДЕЛЕНО - волшебная вещь!
использовать его надо только в крайнем случае |
|||
14
Feunoir
06.11.13
✎
13:07
|
(8) см. (13) НЕОПРЕДЕЛЕНО это нетипизированное значение. Что-то я не сложу, как у тебя связаны тип колонки в таблице и ВЫРАЗИТЬ(НЕОПРЕДЕЛЕНО КАК Справочник.Номенклатура)
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |