Имя: Пароль:
1C
 
Таблица не найдена
0 Nemirov
 
05.06.20
11:24
Выборка = Запрос.Выполнить().Выбрать();
по причине:
{(5, 1)}: Таблица не найдена "ТЗ"
<<?>>ТЗ КАК ТабЗначКодыПоставщика
Что я пропустил помогите просто только начал изучать временные таблицы?
      


                         ФайлИзПапкиОбменаКодыПоставщиков ();
                ИмяФайлаКодовПоставщика = "CodIS.DBF";
                КаталогФайлаКодовПоставщика= КаталогВременныхФайлов();
                ПутьКФайлу = СокрЛП(КаталогФайлаКодовПоставщика +ИмяФайлаКодовПоставщика);
                
                XBaseКодыПоставщиков = Новый XBase;
                XBaseКодыПоставщиков.ОткрытьФайл(ПутьКФайлу,,Истина);
                XBaseКодыПоставщиков.Кодировка = КодировкаXBase.OEM;
                
                ТЗ = Новый ТаблицаЗначений;
                ТЗ.Колонки.Добавить("КодНоменклатуры",Новый ОписаниеТипов("Число"));
                ТЗ.Колонки.Добавить("НоменклатураНаша",Новый ОписаниеТипов("СправочникСсылка.Номенклатура"));
                ТЗ.Колонки.Добавить("Контрагент",Новый ОписаниеТипов("Строка"));
                ТЗ.Колонки.Добавить("КодПоставщика",Новый ОписаниеТипов("Число"));
                ТЗ.Колонки.Добавить("НоменклатураТЗПоставщика",Новый ОписаниеТипов("Строка"));
                
                
                XBaseКодыПоставщиков.Первая();
                
                Пока НЕ XBaseКодыПоставщиков.ВКонце() Цикл
                    КонтрИзDBF = СокрЛП(XBaseКодыПоставщиков.KONTR);                         
                        НовСтрока  = ТЗ.Добавить();
                        НовСтрока.КодНоменклатуры      = СокрЛП(XBaseКодыПоставщиков.KODNOM);
                        НовСтрока.НоменклатураНаша = Справочники.Номенклатура.НайтиПоНаименованию(СокрЛП(XBaseКодыПоставщиков.NOMENKL));
                        НовСтрока.Контрагент   = СокрЛП(XBaseКодыПоставщиков.KONTR);
                        НовСтрока.КодПоставщика      = СокрЛП(XBaseКодыПоставщиков.KOD);
                        НовСтрока.НоменклатураТЗПоставщика =  СокрЛП(XBaseКодыПоставщиков.SUPPNOM);
                        XBaseКодыПоставщиков.Следующая();
                    
                КонецЦикла;
                
                XBaseКодыПоставщиков.ЗакрытьФайл();
                УдалитьФайлы(ПутьКФайлу);
                
                Запрос = Новый Запрос;
                Запрос.МенеджерВременныхТаблиц = Новый МенеджерВременныхТаблиц;
                Запрос.Текст = "ВЫБРАТЬ * ПОМЕСТИТЬ ВТ_ТабЗначКодыПоставщика ИЗ &ТабЗначКодыПоставщика КАК ТабЗначКодыПоставщика";
                Запрос.УстановитьПараметр("ТабЗначКодыПоставщика", ТЗ);
                Запрос.Выполнить();
                Запрос.Текст = "ВЫБРАТЬ
                               |    ТабЗначКодыПоставщика.НоменклатураНаша КАК НоменклатураНаша
                               |ПОМЕСТИТЬ ВТ_1
                               |ИЗ
                               |ТЗ КАК ТабЗначКодыПоставщика";
                    Выборка = Запрос.Выполнить().Выбрать();
                 Пока Выборка.Следующий() Цикл
                     Сообщить (Выборка);
                     КонецЦикла;
1 Nemirov
 
05.06.20
11:26
Запрос.Текст = "ВЫБРАТЬ * ПОМЕСТИТЬ ВТ_ТабЗначКодыПоставщика ИЗ &ТЗ КАК ТабЗначКодыПоставщика";


Но проблема не исчезла
2 Волшебник
 
модератор
05.06.20
11:27
Сначала помещай в ВТ_ТабЗначКодыПоставщика, потом выбирай из ВТ_ТабЗначКодыПоставщика
3 Галахад
 
гуру
05.06.20
11:31
Ну нету же ТЗ вот и падает.
4 Nemirov
 
05.06.20
11:33
(3) ???
                ТЗ = Новый ТаблицаЗначений;
                ТЗ.Колонки.Добавить("КодНоменклатуры",Новый ОписаниеТипов("Число"));
                ТЗ.Колонки.Добавить("НоменклатураНаша",Новый ОписаниеТипов("СправочникСсылка.Номенклатура"));
                ТЗ.Колонки.Добавить("Контрагент",Новый ОписаниеТипов("Строка"));
                ТЗ.Колонки.Добавить("КодПоставщика",Новый ОписаниеТипов("Число"));
                ТЗ.Колонки.Добавить("НоменклатураТЗПоставщика",Новый ОписаниеТипов("Строка"));
5 Nemirov
 
05.06.20
11:33
(2) Можете показать?
6 Галахад
 
гуру
05.06.20
11:35
(4) В запрос-то её как-то поместить надо.
7 ИУБиПовиц
 
05.06.20
11:35
|ИЗ
  |ТЗ
Как я понимаю надо из  ВТ_ТабЗначКодыПоставщика
8 Chameleon1980
 
05.06.20
11:36
|ТЗ КАК ТабЗначКодыПоставщика";

замени
на
  |&ТЗ КАК ТабЗначКодыПоставщика";
9 Chameleon1980
 
05.06.20
11:36
и тут
Запрос.УстановитьПараметр("ТабЗначКодыПоставщика", ТЗ);
на
Запрос.УстановитьПараметр("ТЗ", ТЗ);
10 Chameleon1980
 
05.06.20
11:37
как вы умеете на ровном месте нахер все перепутать?
11 Nemirov
 
05.06.20
11:38
(10) Блин точно спасибо
12 Галахад
 
гуру
05.06.20
11:38
А вообще проще так:

ВЫБРАТЬ
    ТабЗначКодыПоставщика.ААА
ПОМЕСТИТЬ ВТ_ТабЗначКодыПоставщика
ИЗ
    &ТабЗначКодыПоставщика КАК ТабЗначКодыПоставщика
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
    ВТ_ТабЗначКодыПоставщика.ААА
ИЗ
    ВТ_ТабЗначКодыПоставщика КАК ВТ_ТабЗначКодыПоставщика
Закон Брукера: Даже маленькая практика стоит большой теории.