11.01.2011 06:46
melisa
 
добрый день! подскажите пожалуйста из-за чего может появляться следующая ошибка в логе транспорта:

Caused by: com.microsoft.sqlserver.jdbc.SQLServerException: Нельзя удалять более одной записи из таблицы GoodsGroupInDepart

видимых проблем пока не замечала, но всё-таки не хотелось бы их обнаружить :)


полный вариант

11.01.2011 09:31:50.000 TRACE: Поток транспорта Справочников.-1 Ошибка обработки Поток транспорта Справочников.-1.TRANSGOODSGROUP:
ru.crystalservice.setexchanger.datalinks.DataLinkException: Поток транспорта Справочников.-1.TRANSGOODSGROUP: stopPutData
at ru.crystalservice.setexchanger.datalinks.DB.stopPutData(Unknown Source)
at ru.crystalservice.setexchanger.transports.Exchanger.processClientSide(Unknown Source)
at ru.crystalservice.setexchanger.transports.Exchanger.processConnection(Unknown Source)
at ru.crystalservice.setexchanger.transports.Exchanger.run(Unknown Source)
at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
at java.util.concurrent.FutureTask.run(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
Caused by: ru.crystalservice.setexchanger.ExchangerException: PUT Exception
at ru.crystalservice.setexchanger.datalinks.DBPrintWriter.stopPut(Unknown Source)
... 10 more
Caused by: com.microsoft.sqlserver.jdbc.SQLServerException: Нельзя удалять более одной записи из таблицы GoodsGroupInDepart
at com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDatabaseError(SQLServerException.java:156)
at com.microsoft.sqlserver.jdbc.SQLServerStatement.getNextResult(SQLServerStatement.java:1373)
at com.microsoft.sqlserver.jdbc.SQLServerPreparedStatement.doExecutePreparedStatement(SQLServerPreparedStatement.java:371)
at com.microsoft.sqlserver.jdbc.SQLServerPreparedStatement$PrepStmtExecCmd.doExecute(SQLServerPreparedStatement.java:322)
at com.microsoft.sqlserver.jdbc.TDSCommand.execute(IOBuffer.java:4003)
at com.microsoft.sqlserver.jdbc.SQLServerConnection.executeCommand(SQLServerConnection.java:1550)
at com.microsoft.sqlserver.jdbc.SQLServerStatement.executeCommand(SQLServerStatement.java:160)
at com.microsoft.sqlserver.jdbc.SQLServerStatement.executeStatement(SQLServerStatement.java:133)
at com.microsoft.sqlserver.jdbc.SQLServerPreparedStatement.execute(SQLServerPreparedStatement.java:304)
... 11 more
11.01.2011 15:25
TANGOR
 
Melisa Добрый день :)
Это опять я...

вобщем что-то чтранное творится у Вас с этой базой.

данное сообщение выдаёт тригер, который был изменён, в 78 версии сета.
т.е. начиная с 78 версии тригер нормальный.
вот скрипт который этот тригер делал нормальным
05027808_Triggers.sql

как Вы его могли не прогнать я чёта не понимаю :)
12.01.2011 05:19
melisa
 
Добрый день уважаемый Tangor! судя по всему как-то неладно у нас обновление накатывается ((
мне уже пора вас в личные консультанты брать :)
13.01.2011 05:11
melisa
 
спасибо большое! на данный момент никаких ошибок больше нет :)
18.01.2011 07:47
melisa
 
добрый день! а "запрещено удалять загруженные товары" к какому обновлению относится?...
18.01.2011 08:04
melisa
 
Цитата:
melisa добрый день! а "запрещено удалять загруженные товары" к какому обновлению относится?...
возникает при полной прогрузке всего каталоге товаров из центрума в ритейл (ещё допускаю, что переустановка MySQL могла как-то повлиять)
18.01.2011 17:03
TANGOR
 
:) это не к какому обновлению не относится, просто действительно запрещено удалять загруженные товары :)

или это у Вас служба транспорта выдаёт?
19.01.2011 05:43
melisa
 
Доброе утро Tangor
ну вобщем после долгих просмотров методом перебора обнаружилось, что есть группа товаров, которая не выгружается из центрума, сопровождаясь этой ошибкой в логе транспорта на магазине. НО если выгружать товары группы, то всё гуд. В этой группе есть 2 неиспользуемых товара. Может из-за них глюк вылез? Хотя опять же, используемых товаров 87 шт. и при выгрузке группы Analyzer говорит, что выгружается именно 87 товаров
21.01.2011 12:39
TANGOR
 
В Centrum.exe есть 2 варианта как загрузить или выгрузить товары на магазин.
1. это в режиме товары\товары выделить требуемые товары с помощью клавиши "Пробел", и нажав кнопку "Загрузить" или "Выгрузить". при этом будет создано задание на загрузку (выгрузку) именно этих товаров.

2. в этом же режиме товары\товары, можно выделить группу товаров с помощью тоже кнопки "Пробел" и тоже нажать кнопку "Загрузить" или "Выгрузить". при этом на магазин будут загружены все товары входящие в состав только данной группы, у которых есть цена в данном магазине (ну и соответственно группа должна быть привязана к отделу который привязан к этому магазину)

Так называемые Вами "неиспользуемые" товары это товары, как я понял которые были удалены, т.е. у данных товаров в таблице Goods4 в поле Unsed установлено значение 1.

для того чтобы эти товары нормально загрузить или выгрузить, надо следующее :)
сделать эти товары используемыми, т.е. выполнить следующий скрипт:

UPDATE Goods4 SET Unused = 0 WHERE Code in ("код товара1", "код товара2")

(ну или с помощью Centrum.exe перекинуть их в используемые. умеете?)
затем загрузить, или выгрузить эти товары (ну смотря что надо)
ДОЖДАТЬСЯ когда они реально загрузятся или выгрузятся, т.е. когда из таблицы transfercmd исчезнут задания на эти товары.
а затем уже их грохнуть. т.е. удалить из Centrum.exe, или выполнить скрипт:

UPDATE Goods4 SET Unused = 1 WHERE Code in ("код товара1", "код товара2")
24.01.2011 05:08
melisa
 
добрый день! да вопрос собственно встал не в неиспользуемых товарах, а в том, что при выгрузке именно группы возникает ошибка и товары не выгружаются, а если в этой группе выделить все товары и выгрузить, то всё нормально
Часовой пояс GMT +3, время: 16:54.

Форум на базе vBulletin®
Copyright © Jelsoft Enterprises Ltd.
В случае заимствования информации гипертекстовая индексируемая ссылка на Форум обязательна.