|
20.01.2010, 09:30 | #1 |
Участник
|
Доброе утро. При создании книги продаж (Финансы-->Налоговый учет-->Отчеты-->Журналы НДС) выдает следующую ошибку:
Код: --------------------------- Microsoft Business Solutions-Navision --------------------------- Операционная система возвратила ошибку (131): Попытка поместить указатель на файл перед началом файла. Объект: Report 12456 - Create VAT Sales Ledger. Может кто-нибудь сталкивался с этим? |
|
20.01.2010, 10:53 | #2 |
Участник
|
Доброе!
Насколько я помню и если не ошибаюсь эта ошибка вам говорит, что темповый файл (C:\Documents and Settings\%User Profile%\Local Settings\Temp\), в котором NAV хранит промежуточные данные для своих нужд, превысил размер в 2Gb (видимо указатель на файл имеет тип данных например *int (32 бита со знаком)). Обычно к таким последствиям приводят долгоиграющие ресурсоемкие задания. Чтобы проверить это, Вы можете запустить задание и отслеживать изменения в размерах темпового файла. Что с этим делать? необходимо разбивать задачу на подзадачи, таким образом чтобы накопившиеся данные коммитились еще до того, как размер файла подкачки превысит критический объем |
|
20.01.2010, 11:20 | #3 |
Участник
|
Цитата:
Сообщение от del_negrozzz
Доброе!
Насколько я помню и если не ошибаюсь эта ошибка вам говорит, что темповый файл (C:\Documents and Settings\%User Profile%\Local Settings\Temp\), в котором NAV хранит промежуточные данные для своих нужд, превысил размер в 2Gb (видимо указатель на файл имеет тип данных например *int (32 бита со знаком)). Обычно к таким последствиям приводят долгоиграющие ресурсоемкие задания. Чтобы проверить это, Вы можете запустить задание и отслеживать изменения в размерах темпового файла. Что с этим делать? необходимо разбивать задачу на подзадачи, таким образом чтобы накопившиеся данные коммитились еще до того, как размер файла подкачки превысит критический объем Так как отчет стандартный, может быть у кого-нибудь готовые рецепты? |
|
20.01.2010, 11:35 | #4 |
Участник
|
Решение может быть, как програмным:
- После обработки какого-то количества строк вызывать COMMIT так и организационным: - Запускать задание не по всей таблице сразу, а разбить VAT Ledger на куски и поочередно обрабатывать их заданием (если это конечно позволяет логика задания) |
|
20.01.2010, 15:04 | #5 |
Участник
|
Цитата:
Сообщение от del_negrozzz
Решение может быть, как програмным:
- После обработки какого-то количества строк вызывать COMMIT так и организационным: - Запускать задание не по всей таблице сразу, а разбить VAT Ledger на куски и поочередно обрабатывать их заданием (если это конечно позволяет логика задания) |
|
21.01.2010, 15:04 | #6 |
Участник
|
Неужели никто не сталкивался с данной проблемой? Как можно переделать данный отчет чтобы он не отъедал много виртуальной памяти (темповые файлы)?
Заранее, спасибо. |
|
26.11.2012, 17:07 | #7 |
Участник
|
Цитата:
Сохранение записей во временной таблице увеличивает размер временного файла. В своем отчете я сохранял результаты вычислений во временной таблице "Line Number Buffer". В таблице много полей, а по факту пользовался 10 процентами. В результате, при работе отчета файл с временной таблицей разрастался до 2GB и вываливалась ошибка 131. РЕШЕНИЕ Сделал отдельную табличку, только с нужными мне полями. И её запользовал как временную. Временный файл стал разрастаться значительно медленнее. Ошибка была устранена. |
|