Добро пожаловать, Гость. Для того, чтобы отвечать на сообщения и создавать новые темы, Вам необходимо зарегистрироваться, если Вы уже зарегистрированы, то войдите используя Ваши E-Mail и Пароль.
Количество сообщений
22
Зарегистрирован:
15-02-2012, 10:06:37
Удаление старых поставщиков,
Добрый день, занялся удалением старых поставщиков с Справочника поставщиков, так как они уже не актуальны, и заметил, что в справочнике товаров поставщиков и списке поставщиков для импорта они все еще присутсвуют. Подскажите, как их полностью убрать из базы. Спасибо
Количество сообщений
1199
Зарегистрирован:
11-04-2008, 19:11:57
Удаление поставщиков
Удалить поставщика и его товары прайса можно следующим SQL-запросом. Перед удалением нужно в настройках программы отключить логирование изменений товаров поставщиков, т.к. при удалении товаров прайса сведения будут записаны в базу данных.
Код
DECLARE @iS_ID int, @iSG_ID int;
SET @iS_ID = :S_ID
DECLARE cSuppliersGoods CURSOR LOCAL READ_ONLY FOR
select
SG_ID
from TBL_SUPPLIERS_GOODS sg
where sg.SG_S_ID = @iS_ID;
OPEN cSuppliersGoods;
FETCH NEXT FROM cSuppliersGoods INTO @iSG_ID;
WHILE (@@FETCH_STATUS <> -1)
BEGIN
--удаление лога изменений товара поставщика
DELETE FROM TBL_LOG
WHERE LOG_TBL_NAME = 'TBL_SUPPLIERS_GOODS'
AND LOG_PK = @iSG_ID;
--удаление товара поставщика
DELETE FROM TBL_SUPPLIERS_GOODS
WHERE SG_ID = @iSG_ID;
FETCH NEXT FROM cSuppliersGoods INTO @iSG_ID;
END;
CLOSE cSuppliersGoods;
DEALLOCATE cSuppliersGoods;
--удаление поставщика
DELETE FROM TBL_SUPPLIERS
WHERE S_ID = @iS_ID;
вместо параметра :S_ID нужно указать код поставщика из справочника "Поставщики".