15.01.2004, 11:15 | #1 |
NavAx
|
Копирование строк в одинаковых таблицах
Кто нибудь знает функцию, если она есть, которая бы копировала бы строку из одной таблицы в другую, причём таблицы имеют одинаковые структуры?
Желательно что-нить более менее стандартное... Заранее благодарен. |
|
15.01.2004, 11:18 | #2 |
Соучастник
|
т.к. это одна таблица(в AOT)? или две, которые имеют одинаковую структуру?
__________________
View Anton Soldatov's LinkedIn profile |
|
15.01.2004, 11:25 | #3 |
NavAx
|
Это две разные таблицы. Одна из них тЭмповая другая.
Или если другими словами, к примеру SalesLine и CopyOfSalesLine(вот эта вот и тЭмповая) |
|
15.01.2004, 11:40 | #4 |
Соучастник
|
PHP код:
__________________
View Anton Soldatov's LinkedIn profile |
|
15.01.2004, 11:42 | #5 |
----------------
|
Если FieldId совпадают, то buf2buf(),
или написать подобную по именам полей |
|
15.01.2004, 12:06 | #6 |
NavAx
|
2Wamr
Ясно... Спасибо большое... А нет ничего, побыстрее работающего?.. Просто уже на 20-30 строках, этот способ начинает дико тормозить... Ничего побыстрее нет, чтобы не через ДиктФилд и диктТэйбл? 2Антон Солдатов Извените, а подробнее можно?.. С коментариями |
|
15.01.2004, 12:34 | #7 |
Соучастник
|
Цитата:
Изначально опубликовано Ivan Mischenko
2Антон Солдатов Извените, а подробнее можно?.. С коментариями 2) Почитайте про временные таблицы и датасорсы. В частности про "видимость" данных у этих таблиц. Можете воспользоваться поиском по форуму и найти ряд обсуждений на русском. 3) insert_recordset для большого кол-ва строк работает во много раз быстрее, чем while select tmpTable{myTable.field1 = tmpTable.field1; myTable.insert();}
__________________
View Anton Soldatov's LinkedIn profile |
|
15.01.2004, 12:56 | #8 |
NavAx
|
Спасибо Антон за ответ... Я забыл сказать, что задача решается в 2.5-й Ахарте...
Не знаете есть что нибудь подобное для неё?.. |
|
15.01.2004, 14:20 | #9 |
Гость
|
Почему после выполнения следующего кода Аксапта 3.0 SP2 имеет честь вылетать:
ttsBegin; insert_recordset myTable (field1, field2) select field1, sum(field2) from tmpMyTable group by field1 where field1>0; ttsCommit; Если же без суммирования (как приведено в предыдущих сообщениях), то все нормально. |
|
15.01.2004, 18:08 | #10 |
Участник
|
Ответный вопрос
2 Ivan Mishenko:
А зачем вы вообще создали в AOT временную таблицу, один-в-один повторяющую структуру статической? Есть же метод setTmp()... |
|