Поиск и замена ссылок в Расчете себестоимости. Недостаточно памяти

1. echo77 1921 16.05.17 18:13 Сейчас в теме
В общем, столкнулся с проблемой, что в процессе поиска и замены значений были заменены ссылки только части документов: в документе РасчетСебестоимости заменены не были.

В результате получаем перекос по регистру бухгалтерии - выпуски, перемещения по одной карточке номенклатуры, расчет себестоимости по другой.

Чтобы исправить ситуацию пытаюсь выполнить замену ссылок в расчете себестоимости - получаю ошибку "Недостаточно памяти". Немного подправил обработку поиск и замена значений, чтобы та тратила меньше памяти, но все равно, на одном из регистров получаю ошибку - недостаточно памяти.

Поскольку, записи, подчиненные регистратору читаются и пишутся наборами пока не представляю как победить проблему.

Все выполняется в нерабочее время, ибо блокирует таблицы
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
3. drim87 17.05.17 12:03 Сейчас в теме
(1) поставьте 64 технологическую платформу и выполните нужные действия под ней. Я только не смотрел х64 клиент еще в бете или уже нет.
4. KazanKokos 11 17.05.17 12:06 Сейчас в теме
(1) версия файловая? недостаточно памяти для чего? через транзакции делаете?
2. aledis 2 17.05.17 01:08 Сейчас в теме
Базу перенести на более мощный сервер или в обработке "Поиск и замена значений" после 1000 замен делать запись набора, но не уверена, что это поможет. Полагаю, что обработка замену сделала, а записать столько много записей не может. Есть ли возможность разделить как-то этот документ?
6. echo77 1921 17.05.17 12:16 Сейчас в теме
(2) Про запись набора по 1000 поподробнее расскажите, пожалуйста
8. hroa 17.05.17 13:18 Сейчас в теме
(6) запустите на сервере
9. KazanKokos 11 17.05.17 13:45 Сейчас в теме
(8) набор записей в регистр себестоимости может не поместиться даже на сервере.
Насколько я помню в стандартной процедуре расчета пишется порциями.
10. echo77 1921 17.05.17 14:19 Сейчас в теме
(8) На сервере та же ошибка - клиент падает с ошибкой "Недостаточно памяти"
11. KazanKokos 11 17.05.17 14:24 Сейчас в теме
12. echo77 1921 17.05.17 14:31 Сейчас в теме
(11) Подскажите, пожалуйста, как?
13. KazanKokos 11 17.05.17 14:56 Сейчас в теме
(12) надо видеть код. часто такая ошибка возникает когда используются транзакции (НачатьТранзакцию()....ЗафиксироватьТранзакцию())
14. KazanKokos 11 17.05.17 15:02 Сейчас в теме
5. echo77 1921 17.05.17 12:14 Сейчас в теме
Уточню, работа происходит в клиент-серверном варианте Сервер 1C:Предприятие 8.2.19.130 x64 + MS SQL 2012

Клиент у меня х86.
Памяти не хватает судя по всему на клиенте(на моей машине)
Работа происходит в режиме обычного приложения, 1С:УПП 1.3
7. KazanKokos 11 17.05.17 12:21 Сейчас в теме
(5) и про запись набора на клиенте тоже :) не хватает скорее всего на сервере. И проблема не в памяти наверное а в механизме транзакций.
А хотя фиг знает. Может вы действительно клиента загрузили :)
15. aledis 2 17.05.17 16:59 Сейчас в теме
Порциями тоже не получится писать, т.к. надо записать весь набор, а он я, полагаю, большой и программа его не может записать из-за недостаточности памяти. Попробуйте свою обработку написать, а не типовой пользоваться. Может своя лучший даст результат? Обработка не будет большой. Надо прочитать набор записей с отбором по регистратору. И пробежать в цикле по этому набору, заменяя ссылки. Только не забудьте отбор по регистратору поставить, чтобы при записи весь регистр не стерла.
16. KazanKokos 11 17.05.17 17:11 Сейчас в теме
(15) да. возможно проблема в этом. он читает весь набор без отборов и там меняет. а если сделать перебор по регистратору или по значению заменяемого поля такой проблемы быть не должно
17. echo77 1921 07.10.17 11:15 Сейчас в теме
Все делается обработкой "Поиск и Замена значений" с диска ИТС. В ней набор читается с отбором по регистратору.
Памяти не хватает на то чтобы прочитать набор, по некоторым регистрам - прочитать может, записать - нет.
Выполняется не в транзакции
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот