|
Заполнение одной таблицы значений данными другой (дополняя значения) |
☑ |
0
Qwaide
15.11.21
✎
11:54
|
Добрый день. Есть две таблицы значений ТЗ! и ТЗ№
В ТЗ! две строки и колонки 1 2 3
В ТЗ№ одна строка и колонки 4 5 6
В каждой из них имеются данные
В ТЗ! добавил колонки 4 5 6, но не получается добавить корректно значения. Так чтобы они отобразились в одной строке. ЗаполнитьЗначенияСвойств вроде более близкое, но оно зачищает значения в ТЗ!
|
|
1
Strogg
15.11.21
✎
12:01
|
(0) юзай НайтиСтроки() по своим ключевым именам колонок и заполняй свои значения.
|
|
2
Галахад
гуру
15.11.21
✎
12:05
|
У ЗаполнитьЗначенияСвойств есть четвертый параметр, если нужно что-то исключить.
|
|
3
Малыш Джон
15.11.21
✎
12:14
|
(2) а есть ещё третий, если нужно заполнять только определенные поля
|
|
4
Qwaide
15.11.21
✎
13:07
|
(3) (2) Попробовал и тот и другой способ, не помогло, ругается что нет такой колонки, хотя она есть. Что забавно, при создании новой строки, отрабатывает как надо (с ошибкой сделал только одну колонку, ее только и заполнило).
|
|
5
Йохохо
15.11.21
✎
13:21
|
всё удалить и сделать с нуля
|
|
6
Галахад
гуру
15.11.21
✎
13:22
|
(4) Скорее всего ошибка в коде. :-)
|
|
7
lodger
15.11.21
✎
13:23
|
(4) способы рабочие, твой код не рабочий.
|
|
8
ДедМорроз
15.11.21
✎
13:25
|
Если для каждой строки,то сначала скопировать колонки через колонки.добавить
А потом через ЗаполнитьЗначения просто установить одно значение для всех колонок
Если нужно что-то другое,то нужнл объяснять задачу,которая привела к такому решению.
|
|
9
Мимохожий Однако
15.11.21
✎
13:25
|
(4) Вышли кофе погадать, что ты шКодил
|
|
10
Йохохо
15.11.21
✎
13:27
|
(9) вышло кофе!11
|
|
11
ДедМорроз
15.11.21
✎
13:31
|
Кодер кодер,что ты кодил?
И зачем наг.внокодил?
А потом еще поднос
С этим нам суда принес?
|
|
12
Qwaide
15.11.21
✎
14:29
|
Фухххх... спасибо за помощь. Удалось решить следующим образом.
А как оформлять текст похожим в 1С?
Для Каждого Колонка Из Таблица2.Колонки Цикл
Если Таблица1.Колонки.Найти(Колонка.Имя) = Неопределено Тогда
МассивКолонок.Добавить(Колонка.Имя);
ТЗ1.Колонки.Добавить(Колонка.Имя);
КонецЕсли;
КонецЦикла;
///////////////////////////////
Для Каждого Строка Из Таблица1 Цикл
Индекс = Таблица1.Индекс(Строка);
Если Индекс <= Таблица2.Количество()-1 Тогда
Строка2 = Таблица1[Индекс];
Для Каждого Колонка Из МассивКолонок Цикл
Строка2[Колонка] = Таблица2[Индекс][Колонка];
КонецЕсли;
КонецЦикла;
КонецЦикла;
|
|
13
Qwaide
15.11.21
✎
14:29
|
а, понял, само )))
|
|
14
Йохохо
15.11.21
✎
14:36
|
для инд=0 по т2.Количество() - 1 цикл Заполнитьзначениясвойств(т1[инд], т2[инд]) конеццикла
|
|
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство. Фредерик Брукс-младший