В общем, столкнулся с проблемой, что в процессе поиска и замены значений были заменены ссылки только части документов: в документе РасчетСебестоимости заменены не были.
В результате получаем перекос по регистру бухгалтерии - выпуски, перемещения по одной карточке номенклатуры, расчет себестоимости по другой.
Чтобы исправить ситуацию пытаюсь выполнить замену ссылок в расчете себестоимости - получаю ошибку "Недостаточно памяти". Немного подправил обработку поиск и замена значений, чтобы та тратила меньше памяти, но все равно, на одном из регистров получаю ошибку - недостаточно памяти.
Поскольку, записи, подчиненные регистратору читаются и пишутся наборами пока не представляю как победить проблему.
Все выполняется в нерабочее время, ибо блокирует таблицы
Базу перенести на более мощный сервер или в обработке "Поиск и замена значений" после 1000 замен делать запись набора, но не уверена, что это поможет. Полагаю, что обработка замену сделала, а записать столько много записей не может. Есть ли возможность разделить как-то этот документ?
(5) и про запись набора на клиенте тоже :) не хватает скорее всего на сервере. И проблема не в памяти наверное а в механизме транзакций.
А хотя фиг знает. Может вы действительно клиента загрузили :)
Порциями тоже не получится писать, т.к. надо записать весь набор, а он я, полагаю, большой и программа его не может записать из-за недостаточности памяти. Попробуйте свою обработку написать, а не типовой пользоваться. Может своя лучший даст результат? Обработка не будет большой. Надо прочитать набор записей с отбором по регистратору. И пробежать в цикле по этому набору, заменяя ссылки. Только не забудьте отбор по регистратору поставить, чтобы при записи весь регистр не стерла.
(15) да. возможно проблема в этом. он читает весь набор без отборов и там меняет. а если сделать перебор по регистратору или по значению заменяемого поля такой проблемы быть не должно
Все делается обработкой "Поиск и Замена значений" с диска ИТС. В ней набор читается с отбором по регистратору.
Памяти не хватает на то чтобы прочитать набор, по некоторым регистрам - прочитать может, записать - нет.
Выполняется не в транзакции