Цитата:
Сообщение от
Morpheus
Этот скрипт при каждом запуске обрабатывает только часть строк таблицы LogisticsAddressCountryRegion удовлетворяющих условиям отбора (ValidTimeState не используется).
X++:
LogisticsAddressCountryRegion addressCountry;
Integer counter;
while select addressCountry
where addressCountry.CountryRegionId != addressCountry.ISOcode
{
counter++;
addressCountry.CountryRegionId = addressCountry.ISOcode;
addressCountry.renamePrimaryKey();
}
info(int2str(counter));
В чем может быть проблема?
Разделите курсор addressCountry на два - для чтения и для апдейта: addressCountry и addressCountryUpdate. Внутри цикла по addressCountry перевыбирайте курсор addressCountryUpdate по RecId и включите в ttscommit\ttsbegin.