Имя: Пароль:
1C
1С v8
Ошибка {(1, 27)}: Тип не может быть выбран в запросе ВЫБРАТЬ * ПОМЕСТИТЬ ТЗ ИЗ
,
0 kap-v-kstu
 
11.05.13
11:25
Запрос = Новый Запрос;
Запрос.МенеджерВременныхТаблиц = Новый МенеджерВременныхТаблиц;
Запрос.Текст = "ВЫБРАТЬ * ПОМЕСТИТЬ ТЗ ИЗ &ТЗ КАК ТЗ";
Запрос.УстановитьПараметр("ТЗ", ТЗ);
Запрос.Выполнить();
// Теперь ТЗ можно использовать в запросе:
Запрос.Текст = "ВЫБРАТЬ
              |    ВТ.Сотрудник1,
              |    ВТ.Сотрудник1.Ссылка,
              |    СотрудникиОрганизаций.Ссылка,
              |    СотрудникиОрганизаций.Наименование,
              |    СотрудникиОрганизаций.ВидДоговора,
              |    СотрудникиОрганизаций.Должность,
              |    СотрудникиОрганизаций.ДатаПриемаНаРаботу
              |ИЗ
              |    ВТ КАК ВТ
              |        ЛЕВОЕ СОЕДИНЕНИЕ Справочник.СотрудникиОрганизаций КАК СотрудникиОрганизаций
              |        ПО ВТ.Сотрудник1.Ссылка = СотрудникиОрганизаций.Ссылка"
;

Выбор = Запрос.Выполнить().Выгрузить();
1 kap-v-kstu
 
11.05.13
11:26
Хотя в таблице значений уже все типизировано
2 kap-v-kstu
 
11.05.13
11:30
3 kap-v-kstu
 
11.05.13
11:30
Это моя таблица значениЙ. Помогите, пожалуйста!
4 Alex1979rak
 
11.05.13
11:35
В качестве источника данных в запросе может выступать:
а) реальная таблица
2) виртуальная таблица
3) вложенный запрос

Нигде в описании я не видел, чтобы в качестве источника запроса был параметр
5 acsent
 
11.05.13
11:37
как тз создавал?
6 Мохнатое рыло
 
11.05.13
11:42
Для участия в запросе колонки ТЗ должны быть явно типизированы с помощью описания типов.

И менеджер ВТ создай так:
МенеджерВТ=Новый МенеджерВременныхТаблиц;
Запрос.МенеджерВременныхТаблиц = МенеджерВТ;
7 Alex1979rak
 
11.05.13
11:42
Значения параметров могут использоваться В ВЫРАЖЕНИЯХ языка запросов.

А источник запроса - это не выражение.

Рекомендую переделать запрос.
8 hhhh
 
11.05.13
11:47
(7) правильно у него, не надо переделывать.
9 NcSteel
 
11.05.13
11:50
(0) Показывай как тепизируешь колонки в ТЗ.

Так же во втором запросе источник таблица "ВТ", а в первом запросе ты создаешь временную таблицу "ТЗ".
10 Нуф-Нуф
 
11.05.13
11:53
то что в отладчике показан тип значения еще нифига не значит.
типизируй колонки! Будь мужиком, блеать!
11 kap-v-kstu
 
11.05.13
12:00
ТаблицаСведений = Новый ТаблицаЗначений;
   ТаблицаСведений.Колонки.Добавить("Сотрудник", Новый ОписаниеТипов("СправочникСсылка.СотрудникиОрганизаций"));
   ТаблицаСведений.Колонки.Добавить("Сотрудник1", Новый ОписаниеТипов("СправочникСсылка.СотрудникиОрганизаций"));
   ТаблицаСведений.Колонки.Добавить("ОстатокНаДату");
   ТаблицаСведений.Колонки.Добавить("РабочийГодС");
   ТаблицаСведений.Колонки.Добавить("РабочийГодПо");
   ТаблицаСведений.Колонки.Добавить("Примечание");
   ТаблицаСведений.Колонки.Добавить("ОстаткиВРазрезеВидовОтпусков");
   ТаблицаСведений.Колонки.Добавить("ОстаткиВРазрезеРабочихЛетИВидовОтпусков");
   
   Для Каждого СтрокаРезультата Из Результат Цикл
       ОстаткиВРазрезеРабочихЛетИВидовОтпусков = Новый Массив;
       Для Каждого РабочийГод Из СтрокаРезультата.ДанныеРасчета Цикл
           Если РабочийГод.ДоступноДляСписанияВЭтомГоду = 0 Тогда
               Продолжить;
           КонецЕсли;
           ОстаткиВРазрезеРабочихЛетИВидовОтпусков.Добавить(Новый Структура("ВидЕжегодногоОтпуска, ОсталосьДней, РабочийГодС, РабочийГодПо, ПоследнийРабочийГод",
               РабочийГод.ВидЕжегодногоОтпуска, РабочийГод.ДоступноДляСписанияВЭтомГоду, РабочийГод.ДатаНачала, РабочийГод.ДатаОкончания, РабочийГод.ПоследнийРабочийГод));
       КонецЦикла;
       
       Строка = ТаблицаСведений.Добавить();
       Строка.Сотрудник                                = СтрокаРезультата.Сотрудник;
       Строка.Сотрудник1                                = Справочники.СотрудникиОрганизаций.НайтиПоНаименованию(СтрокаРезультата.Сотрудник).Ссылка;
       Строка.ОстатокНаДату                            = СтрокаРезультата.ОстатокНаДату;
       Строка.РабочийГодС                                = СтрокаРезультата.РабочийГодС;
       Строка.РабочийГодПо                                = СтрокаРезультата.РабочийГодПо;
       Строка.Примечание                                = СтрокаРезультата.Примечание;
       Строка.ОстаткиВРазрезеВидовОтпусков                = СтрокаРезультата.ОстатокНаДатуПоВидамЕжегодныхОтпусков;
       Строка.ОстаткиВРазрезеРабочихЛетИВидовОтпусков    = ОстаткиВРазрезеРабочихЛетИВидовОтпусков;
   КонецЦикла;
12 kap-v-kstu
 
11.05.13
12:00
Типизация   ТаблицаСведений.Колонки.Добавить("Сотрудник1", Новый ОписаниеТипов("СправочникСсылка.СотрудникиОрганизаций"));
13 NcSteel
 
11.05.13
12:01
ТаблицаСведений.Колонки.Добавить("ОстатокНаДату");
   ТаблицаСведений.Колонки.Добавить("РабочийГодС");
   ТаблицаСведений.Колонки.Добавить("РабочийГодПо");
   ТаблицаСведений.Колонки.Добавить("Примечание");
   ТаблицаСведений.Колонки.Добавить("ОстаткиВРазрезеВидовОтпусков");
   ТаблицаСведений.Колонки.Добавить("ОстаткиВРазрезеРабочихЛетИВидовОтпусков");

Не тепизированы
14 kap-v-kstu
 
11.05.13
12:02
Их тоже надо типизировать?я же их не использую в запросе
15 NcSteel
 
11.05.13
12:05
(14) Ты выбираешь все поля через "*", поэтому все поля таблицы значений должны быть типизированы.
16 kap-v-kstu
 
11.05.13
12:07
Точно,Спасибо огромное!!!!))
17 Кокос
 
11.05.13
12:10
ВТ.Сотрудник1.Ссылка скорее всего не типизирован. достаточно типизировать его в ТЗ.
18 Кокос
 
11.05.13
12:11
ВТ.Сотрудник1 достаточно имхо. без .ссылка
19 mikecool
 
11.05.13
12:56
(16) сколько уже твердили, за звезду в селекте батогами бить, а все продолжаете...
20 Drac0
 
11.05.13
13:00
(19) Чем это плохо в случае, когда входящую ТЗ грузим в ВТ?
21 sttt
 
11.05.13
13:45
(14) остальные колонки можешь добавить когда понадобятся, раз не используешь. меньше писанины))