Группа: Пользователи
Сообщений: 40
Спасибо сказали: 2 раз
Рейтинг: 0
Конфигурация: Trade (10.3.29.1) (http://v8.1c.ru/trade/), версия: 8.3.11.2867, обычные формы. Добрый день. Подскажите пожалуйста в следующем. Хочу написать запрос, который будет формироваться по ходу обхода цикла, то есть каждая строка будет добавлять часть кода. Проблема в том, что я хочу объединить очень много таблиц в одну (полей всего два и они общие, есть у всех таблиц). Но на сколько я понимаю, нельзя объединять виртуальные таблицы. То есть такой метод не работает и выдаёт ошибку "Содержимое объекта данных может быть выбрано только во временную таблицу":
ВЫБРАТЬ ТЗ.Элемент1 КАК Элемент1 , ТЗ.Элемент2 КАК Элемент2 ИЗ &ТЗ КАК ТЗ
ОБЪЕДИНИТЬ
ВЫБРАТЬ ТЗ2.Элемент1 , ТЗ2.Элемент2 ИЗ &ТЗ2 КАК ТЗ2
Поделитесь информацией по этому поводу. Нужно именно таким способом, то есть каждая строка цикла должна добавить очередной кусок объединения.
Группа: Местный
Сообщений: 858
Из: Місто щасливих людей
Спасибо сказали: 330 раз
Рейтинг: 0
Bon Jovi @ Сегодня, 18:05
, сначала помещаете каждую из таблиц во временную таблицу, а потом уже объединяете результат т.е.
ВЫБРАТЬ ТЗ.Элемент1 КАК Элемент1 , ТЗ.Элемент2 КАК Элемент2 ПОМЕСТИТЬ ВТ1 ИЗ &ТЗ КАК ТЗ ; /////////////////////////////////////////////// ВЫБРАТЬ ТЗ2.Элемент1 , ТЗ2.Элемент2 ПОМЕСТИТЬ ВТ2 ИЗ &ТЗ2 КАК ТЗ2 ; /////////////////////////////////////////////// ВЫБРАТЬ ВТ1.Элемент1 КАК Элемент1 , ВТ1.Элемент2 КАК Элемент2 ИЗ ВТ1 КАК ВТ1
ОБЪЕДИНИТЬ
ВЫБРАТЬ ВТ2.Элемент1 , ВТ2.Элемент2 ИЗ ВТ2 КАК ВТ2
Сообщение отредактировал Bernet - 24.09.20, 17:53
Дописываю конфигурации на платформе 8.х. - Управление торговым предприятием для Украины - Управление производственным предприятием для Украины - Управление небольшой фирмой для Украины - Бухгалтерия для Украины; - Общепит для Украины - Ресторан (Рарус) - Розница
Группа: Пользователи
Сообщений: 40
Спасибо сказали: 2 раз
Рейтинг: 0
Bernet @ Вчера, 18:52
, Немного ошибся (за что стыдно) ... Объединить не виртуальные, а временные таблицы... И о таком методе как вы предложили я знаю, не подходит
Группа: Пользователи
Сообщений: 40
Спасибо сказали: 2 раз
Рейтинг: 0
Vofka @ 25.09.20, 10:12
, Вот как с этой задачей справился я:
ТекстЗапроса1 = ""; ТекстЗапроса2 = ""; Счётчик = 0; Для каждого СтрокаПараметра Из Параметры Цикл
Если НЕ ТипЗнч(ЗначениеИзСтрокиВнутр(СтрокаПараметра)) = Тип("ТаблицаЗначений") ИЛИ ЗначениеИзСтрокиВнутр(СтрокаПараметра).Количество() = 0 Тогда Продолжить; КонецЕсли;
Группа: Пользователи
Сообщений: 40
Спасибо сказали: 2 раз
Рейтинг: 0
Petre @ Сегодня, 12:58
, Вопрос был в том, как это сделать автоматически к большому количеству таблиц значений. Сам принцип объединения временных таблиц мне был понятен и известен.
Группа: Пользователи
Сообщений: 265
Спасибо сказали: 4 раз
Рейтинг: 0
Цитата(Bon Jovi @ 01.10.20, 13:02)
Вопрос был в том, как это сделать автоматически к большому количеству таблиц значений. Сам принцип объединения временных таблиц мне был понятен и известен.
Обычно это делают с помощью набора программного кода. Можно заплатить кому то - и за вас наберут. Или заставить с помощью лести, лжи, угроз, чтобы кто то написал за вас.
Группа: Пользователи
Сообщений: 40
Спасибо сказали: 2 раз
Рейтинг: 0
twilight_dream @ Сегодня, 13:46
, Большое спасибо. Задание давно готово и написано личной мной. Да и вначале я не просил за меня работу делать, а только дать идею реализации задачи, но видно для гуру программистов оказать помощь это слишком, но вот оставить язвителный комментарии это они могут
1С Предприятие 8.3, 1С Предприятие 8.2, 1С Предприятие 8.1, 1С Предприятие 8.0, 1С Предприятие 7.7, Литература 1С, Общие вопросы по администрированию 1С, Методическая поддержка 1С - всё в одном месте: на Украинском 1С форуме!