Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
20 июл 2024, 06:36

Как одновременно заполнить ТаблицаЗначении запросом и даннными из excel.

Автор maxxi, 03 мар 2023, 06:25

0 Пользователей и 1 гость просматривают эту тему.

maxxi

Здравствуйте, скажите пожалуйста как заполнить ТЗ данными из excel и запросом.
Данный момент, создаю Справочник и загружаю туда и оттуда вытягиваю.
Но босс говорить, не надо изменять конфигурацию и выполнить загрузку данных прямо из файла одновременно с запросом.

Спасибо большое.

Afinogen

скажите вашему боссу что он олень)
сама постановка вопроса некоректна, что значит одновременно? любой код выполняется последовательно)
 :D  :D  :D  :D  :D

LexaK

maxxi, да нормальная ситуация, работает так
1.сначала получаете данные и помещаете их во временную ТЗ
лкТЗДанныеЕкселя = Новый ТаблицаЗначений;
2.Эту таблицу в виде параметра передаете в запрос
3.и после выполнения запроса получаете единый результат запроса с данными из екселя
если помогло нажмите: Спасибо!

maxxi

LexaK, Сделал как Вы сказали, загрузил из excel в ТЗ, а дальше не знаю куда двигатся.

LexaK

Цитата: maxxi от 07 мар 2023, 12:17загрузил из excel в ТЗ,
передайте ТЗ в виде параметра в запрос и выполните его!
(правда тут про запросы надо знать, хоть чуть-чуть, как они работают...)
если помогло нажмите: Спасибо!

maxxi

LexaK, Запрос.УстановитьПараметр("НормативныйДень", ТаблицаЗначенийНаФорме.Выгрузить());Так?

LexaK

Цитата: maxxi от 07 мар 2023, 12:38LexaK, Запрос.УстановитьПараметр("НормативныйДень", ТаблицаЗначенийНаФорме.Выгрузить());Так?
да, очень похоже!  :)
теперь осталось правильный запрос написать!
выкладывайте что у вас получится.
если помогло нажмите: Спасибо!

LexaK

вот примерный шаблон запроса
Запрос = Новый Запрос;
Запрос.Текст = "
    |Выбрать
| Таб.Колонка1,
| Таб.Колонка2
|Поместить НормативныйДень
|Из
|   &НормативныйДень Таб
|;
|Выбрать
| НормативныйДень.Колонка1,
| НормативныйДень.Колонка2,
|//и другие нужные данные
|из
| НормативныйДень
|Левое соединение ....
|";
Запрос.УстановитьПараметр("НормативныйДень", ТаблицаЗначенийНаФорме.Выгрузить());

Результат = Запрос.Выполнить().Выгрузить();

если помогло нажмите: Спасибо!

maxxi

LexaK, В запросе уже есть другие Временные таблицы.
Вот, текст конечного запроса у меня:

|ВЫБРАТЬ
|   ВТ_Цена_Остатки.Ценник КАК Ценник,
|   ВТ_Цена_Остатки.Цена КАК Цена,
|   ВТ_Цена_Остатки.ПриходЦена КАК ПриходЦена,
|   ВТ_Цена_Остатки.Ссылка КАК Ссылка,
|   ВТ_Цена_Остатки.Валюта КАК Валюта,
|   ВТ_Цена_Остатки.Товар КАК Товар1,
|   ВТ_Цена_Остатки.Склад КАК Склад,
|   ВТ_Цена_Остатки.Остаток КАК Остаток,
|   ВТ_Цена_Остатки.Товары КАК Товары,
|   ВТ_Цена_Остатки.НормаДень КАК НормаДень,
|   ВТ_Цена_Остатки.Товар1 КАК Товар11,
|   ВТ_Цена_Остатки.Расход КАК Расход,
|   ВТ_ПродажиОбороты.Оборот КАК Оборот
|ИЗ
|   ВТ_Цена_Остатки КАК ВТ_Цена_Остатки
|       ЛЕВОЕ СОЕДИНЕНИЕ ВТ_ПродажиОбороты КАК ВТ_ПродажиОбороты
|       ПО ВТ_Цена_Остатки.Товары.Ссылка = ВТ_ПродажиОбороты.Товар.Ссылка";

Запросы.УстановитьПараметр(......,....);
............

Запрос.УстановитьПараметр("НормативныйДень", НормативныйДень.Выгрузить());



LexaK

maxxi,
ЦитироватьВ запросе уже есть другие Временные таблицы.
очень даже может быть! одно другому не мешает! Используйте шаблон, который вам прислали ранее и у вас все получится!
если помогло нажмите: Спасибо!

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск