PDA

Просмотр полной версии : Docskill



SH
18.01.2011, 22:49
Описание программы 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, проверяем на
ошибки и после окончания проверки и появления списка ошибок, нажимаем
в любом месте окна правой кнопкой и выбираем пункт "Пересчитать все".
После пересчета снова проверяем на ошибки, если необходимо исправляем
ошибки и пересчитываем неверные очереди (чаще всего эту процедуру
необходимо выполнять несколько-до полного исправления ошибок)
Конечно, может быть ситуация, когда ошибки не исправяться, тогда
необходимо смотреть тексты ошибок и разбираться более тщательно.
И запомните-некоторые операции, особенно на больших базах, такие как
проверка документов, пересчет всего, исправление ошибок,
восстановление базы может длиться очень долго-будьте терпеливы-не
прерывайте процесс!

asisdes
03.12.2011, 11:37
Добрый день!!!
А можно уточнить такой вопрос.
Представленный материал и программу можно использовать для обрезки базы СтоунХауса 3,12?
т.е. у меня СХ 3,12 там приходы и расходы 6 лет идут+калькуляционные карты,
а базы размером уже 160 мб, хотел бы ее обрезать.

т.е. основной вопрос такой.
идея обрезки в том что бы старые товары, приходы и расходы, которые ровно списались их убрать из базы.
Идея правильная!??

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

1. Надо было из дистрибьютива вытащить читсую базу и приготовить ее
2. В старой обрезать документы по дату которую нам надо, программа сама автоматически найдет остатки и документы которые не списались и перенесем их в категорию ПРИХОД
3. С помощью какой-то программы остатки переливаются в новую базу

кажеться такая последовательность?!

SH
03.12.2011, 18:58
Представленный материал и программу можно использовать для обрезки базы СтоунХауса 3,12?
Да.


идея обрезки в том что бы старые товары, приходы и расходы, которые ровно списались их убрать из базы.
Идея правильная!??
Насчет товаров - нет. Режутся только документы.


программа сама автоматически найдет ... документы которые не списались
- тут Вы что-то путаете.


кажеться такая последовательность?!
Да. Программа для переливки в чистую базу называется upgrade. Я бы Вам посоветовал обновится заодно, хотя бы до 3.22, ключ должен поддерживать (проверьте заранее).