22.07.2013 18:15 | |
supportSupport Количество сообщений 1199 Зарегистрирован: 11-04-2008, 19:11:57 |
Добавленный вами скрипт не зависит от справочников и таблиц. При вызове будет выполнен SQL-скрипт независимо от открытого справочника и/или выбраных строк какой-либо таблицы. Если вы хотите одним вызовом пересчитать все цены №3 в товарах, товам лучше всего создать курсор на набор записей SELECT G_ID FROM TBL_GOODS и в цикле по всему набору для каждой строки выполнить например следующее изменение цены №3 UPDATE TBL_GOODS SET price3=price*8.2 WHERE G_ID = @G_ID, где 8.2 - пример курса USD, @G_ID - код товара полученный из курсора Почему обновление лучше делать в курсоре? Да потому, что это не создаст нагрузку на подсистему логирования (которая при большом количестве обновляемых строк может сильно тормозить) и не будет одной общей транзакции, т.е. в момент запуска пересчета цены пользователи не будут заблокированы. |