Описание программы docskill
---------------------------
Программа docskill.exe предназначена для удаления документов из складской БД. При этом из-за особенностей Interbase размер БД НЕ уменьшается, поэтому после окончания работы данной программы можно сделать backup/retore средствами Interbase (например, с помощью Server Manager) или перекачать оставшиеся данные в чистую БД с помощью программы Upgrade. Программа может автоматически выполнить процедуру backup/retore в процессе работы при условии указания пути к утилите gbak.exe. Поскольку коды возврата утилиты gbak.exe фирмой Borland не задокументированы, после окончания работы программы настоятельно рекоммендуется просмотреть протокол, и осознать сообщения, выданные данной утилитой. Для работы необходим ddp.sql, содержащий текст процедур удаления.
Для удаления:
1) укажите даты, ПО которые надо удалить данные (удаляется начиная с самого первого документа по указанные даты)
2) выберите какие виды документов необходимо удалить
удалений кальк. карт осуществляется так: выбирается карта, действующая на дату, по которую удаляются документы, и все карты, действующие ДО нее, удаляются.
3) Параметры
- Создавать процедуры
Создает в БД процедуры: создания остатков, удаления документов и кальк. карт.
Если в БД уже есть эти процедуры, то будет выдана ошибка "invalid modify request, procedure XXX already exists". Её можно игнорировать, нажав "Пропустить".
- Создавать входящие остатки
Автоматически создаст накладные-входящие остатки путем копирования ведомости остатков по каждому складу в отдельную накладную. Необходимо указать поставщика.
Если накладные-входящие остатки уже созданы вручную, то этой возможностью пользоваться не надо, чтобы не задвоить остатки.
- Производить сборку мусора
Собирает мусор, образовавшийся в БД после удаления большого кол-ва данных.
Данную процедуру можно заменить процедурой backup/restore средствами Interbase. Тогда после окончания работы программы backup/restore проводить не нужно.
- Активизировать входящие остатки
Ищет приходные накладные за заданную дату от указанного поставщика и делает их активными.
Если входящие остатки создавались вручную и сохранялись сразу активгыми, то этой возможностью пользоваться не надо.
- Пересчитывать очереди FIFO
Пересчет документов, следующих за входящими остатками
- Проверять документы
Проверка документов (как в SHCheck).
DocKill Info
Еще раз про обрезание базы:
1. Обрезаем базу с помощью DocKill. Если в конце появилась ошибка SP_CHECKMAINDOCS (а
не просто SP_MAINDOCS), игнорируем ее, исправим ошибки потом
2. Перекачиваем в чистую базу БЕЗ СТАТИСТИКИ (т.к. после обрезания
старых докуметнов статистика по ним все-равно остается, то мы делаем
перекачку сначала без статистики, а затем пересчет-таким образом
избавляемся от лишнего мусора). Перекачка без статистики делается
таким же образом, как и апгрейд, за исключением того, что в файле
TRANSFER.TXT находим следующие строки:
{move\ Статистика по документам: OutPtrs\ [300, 999]\ T\ OutPtrs\\ NO_GEN\ }
{move\ Статистика по документам: Remns\ [300, 999]\ T\ Remns\\ NO_GEN\ }
{move\ Статистика по документам: RemnsA\ [300, 999]\ T\ RemnsA\\ NO_GEN\ }
и комментируем их или просто удаляем
3. После перекачки без статистики запускаем SHCheck.exe, проверяем на
ошибки и после окончания проверки и появления списка ошибок, нажимаем
в любом месте окна правой кнопкой и выбираем пункт "Пересчитать все".
После пересчета снова проверяем на ошибки, если необходимо исправляем
ошибки и пересчитываем неверные очереди (чаще всего эту процедуру
необходимо выполнять несколько-до полного исправления ошибок)
Конечно, может быть ситуация, когда ошибки не исправяться, тогда
необходимо смотреть тексты ошибок и разбираться более тщательно.
И запомните-некоторые операции, особенно на больших базах, такие как
проверка документов, пересчет всего, исправление ошибок,
восстановление базы может длиться очень долго-будьте терпеливы-не
прерывайте процесс!