Книга знаний |
|
1С:Предприятие / Администрирование |
|
Плагин позволяет не упаковывать в архив ZIP файл 1Cv77.dat при выгрузке данных 1С:Предприятие. Цель - лечение проблемы с большими (несколько Гб) выгрузками, которые не может правильно обработать штатная библиотека для работы с ZIP-файлами от 1С. Кроме того, плагин сокращает время выгрузки и загрузки (исключается архивирование и разархивирование большого по размеру файла). Приложен исходный код (компилятор - Delphi 6). | Автор статьи: romix | Редакторы: Segate, Asmody Последняя редакция №18 от 21.08.12 | История URL: http://kb.mista.ru/article.php?id=493 |
TasStas пишет: При проведении выгрузки было замечено, что 1сv7, 25 релиз, создает временный файл в каталоге базы данных, который называется 1Cv77.dat. Размер этого файла растет в процессе выгрузки и достигает перед ее окончанием 9.2 гига. После этого получаем в указанном каталоге зипованный файл размером 164 метра. В котором содержатся файлы 1Cv7.md, Users.usr, 1Cv77.dat. Но размер файла 1Cv77.dat в этом случае составляет 1,4 гига. При попытке произвести загрузку получаем сообщение типа "Ошибка базы данных". Думаю, что это проблема встроенного в 1С zip'a - не хочет работать с файлами размером больше 2 гига. Но как изменить встроенный зиповщик не знаю. Может кто встречался с такими проблемами то помогите пожалуйста. Заранее благодарен.
24.02.2007 добавлен перехват SetFilePointer, поскольку этот системный вызов портил картину при загрузке (не получалось загружать данные больше 2 Гб).
21.03.2007 изменены сообщения при выгрузке и загрузке (надеюсь, что в более понятную сторону). При загрузке добавлен диалог выбора файла DAT (чтобы лишний раз не копировать и не перемещать его, если выгрузка и загрузка происходит в пределах одного компьютера).
01.07.2007 Переписаны функции ?GetSinceCheckpoint@CDB7Stream@@QBEJXZ, ?Checkpoint@CDB7Stream@@QAEXXZ' и ?NextChar@CDB7Stream@@UAEXXZ, т.к. они содержали 4-гигабайтное ограничение. Добавлена индикация процента загрузки, и sleep 1мс каждые 64К считанных данных.
При окончании выгрузки данных плагин выдаст сообщение:
--------------------------- (c)romix --------------------------- Отключить архивацию файла DAT? (в архив ZIP попадет пустой файл DAT). --------------------------- Да Нет ---------------------------
При ответе "Да" плагин сохранит файл DAT (в каталоге информационной базы под именем romix.dat) и выдаст сообщение:
--------------------------- (c)romix --------------------------- Выгрузка DAT находится в файле: D:\КаталогИБ\romix.dat В архиве ZIP находится пустой файл DAT --------------------------- ОК ---------------------------
При ответе "Нет" 1С:Предприятие поведет себя штатно, то есть, так же, как ведет себя без данного плагина (заархивирует файл DAT в архив ZIP).
При загрузке данных (в ее начале) плагин выдаст окно запроса файла с заголовком
"Укажите файл, откуда взять выгрузку 1Cv77.dat".
Выберите файл (по умолчанию это romix.dat в каталоге информационной базы) и нажмите кнопку "Открыть" в диалоговом окне. Начнется загрузка данных.
При отказе от выбора файла, загрузка данных из файла с расширением ZIP пойдет штатным порядком (то есть, возьмет DAT из архива ZIP).
После окончания операций с выгрузками и загрузками я рекомендую отключать плагин в файле ini, как это описано ниже (см. замечание 4).
Описание установки плагина - в файле readme.txt в паке Patch в комплекте установки
Описание
| Рубрикатор
| Поиск
| ТелепатБот
| Захваченные статьи
| Установки
| Форум
|