Имя: Пароль:
1C
1С v8
Соединить 2 таблицы значений.
0 denis200
 
17.08.11
13:16
В первой таблице список товаров. (допустим 20 строк)
Во второй таблице список товаров. (допустим 10 строк)
Мне нужно тупо получить 3 таблицу, где первые 20 строк будут из первой таблицы и последний 10 из второй
Я думаю можно например скопировать 1 таблицу в 3-ую: табл3=табл1;
А потом перебрать строки 2-ой таблицы в цикле и построчно добавлять к 3 таблице. А можно ли по другому без цикла?
1 Wobland
 
17.08.11
13:16
объединить в запросе
2 Ivanich
 
17.08.11
13:26
// 2 таблицы значений с абсолютно одинаковой структурой колонок собираем в одну
//  <Таблица1>  – таблица значений к которой добавляем
//  <Таблица2>  – добавляемая таблица значений
//  Результат: Таблица1 = Таблица1 + Таблица2
Процедура глДобавитьТЗ(Таблица1,Таблица2)
   Для Каждого СтрокаТЗ ИЗ Таблица2 Цикл
       НовСтрока = Таблица1.Добавить();
       ЗаполнитьЗначенияСвойств(НовСтрока, СтрокаТЗ);
   КонецЦикла;
КонецПроцедуры // глДобавитьТЗ()
3 fisher
 
17.08.11
13:29
(0) Без цикла не выйдет. Аналогов семерочному Заполнить() на восьмерке нет. Циклиться на цикле не нужно :) он быстро отработает.
В запросе это сделать можно, но не нужно.
Кстати, можно обойтись без создания новых таблиц, если потом не требуется сложной обработки. Можно использовать массив ссылок на строки этих двух таблиц, например.
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство. Фредерик Брукс-младший