|
таблица значений - объединение | ☑ | ||
---|---|---|---|---|
0
SunProgy
20.01.15
✎
18:35
|
Вечер добрый, есть две таблицы значений с одинаковой структурой, нужно их объединить, но так, чтобы не было задвоения строк, т. е в первую таблицу добавились новые данные из второй и перезаписались имеющиеся данные из второй, т.е
напр Т1 код номенкл Цена Т2 Код Номенкл Цена 10 Утюг 1000 10 Утюг 1200 20 Телефон 5000 30 ЭлГриль 5010 Итоговая Т3 10 Утюг 1200 20 Телефон 5000 30 ЭлГриль 5010 |
|||
1
TheVeryHe
20.01.15
✎
18:37
|
И в чём сложность?
|
|||
2
НП
20.01.15
✎
18:38
|
for each Стр in Табл2 do
если ключевые реквизиты найдены в Табл1 then continue; endif; Добавляем строку Стр в Табл1 enddo; |
|||
3
TheVeryHe
20.01.15
✎
18:40
|
(2) эт ты на вижуал бейсике написал?
|
|||
4
SunProgy
20.01.15
✎
18:42
|
В чем сложность - задваивает старые и новые значения, исп. след. код
ТЗ_Основная = ТЗ_Источник.Скопировать(); Для Каждого СтрокаИсходнойТаблицы Из ТЗ_Источник Цикл НоваяСтрока = ТЗ_Основная.Добавить(); ЗаполнитьЗначенияСвойств(НоваяСтрока, СтрокаИсходнойТаблицы); КонецЦикла; |
|||
5
SunProgy
20.01.15
✎
18:44
|
т. е. получается
10 Утюг 1000 10 Утюг 1200 20 Телефон 5000 30 ЭлГриль 5010 как вот презаписать данные в ТЗ_Основная, если совпадает код |
|||
6
WebberNSK
20.01.15
✎
18:49
|
Посмотри функцию НайтиСтроки() - мощная вещь!
|
|||
7
НП
20.01.15
✎
19:05
|
(3) 1С ключевые слова позволяет писать по-английски.
|
|||
8
НП
20.01.15
✎
19:06
|
(4) Потому, что сначала надо поискать ключ в первой таблице.
Если найдены - пропустить добавление. |
|||
9
SunProgy
20.01.15
✎
19:11
|
(8) тогда данные не перезапишутся
|
|||
10
НП
20.01.15
✎
19:12
|
(9) Тогда не перезапишутся только те, которые в первой таблице УЖЕ ЕСТЬ. Остальные припишутся.
|
|||
11
НП
20.01.15
✎
19:13
|
В сущности, это НЕ ЛЕВОЕ СОЕДИНЕНИЕ.
|
|||
12
FIXXXL
20.01.15
✎
20:19
|
Засунуть обе таблицы в ВТ, группировать и максимум по цене
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |