[ОТВЕТИТЬ]
07.07.2015 10:39
mile-it
 
Добрый день!
Помогите пожалуйста решить проблемку.
Версия супермага 1.031.1 SP 2
С центральной базы в базу магазина выгружали карточки товаров, предварительно не выгрузив новые разделы в классификаторе, в результате
карточки легли не в свои разделы, а болтаются в классификаторе отдельно:

Пытался передать с ЦО в магазин заново - карточки товаров (выгружает без ошибок) и классификатор (ругается на невозможность обновить объекты в БД sacardclass) и ничего не помогло.

Заранее благодарен за помощь!
Миниатюры
Нажмите на изображение для увеличения
Название: супермаг.jpg
Просмотров: 357
Размер:	66.1 Кб
ID:	4800  
07.07.2015 10:46
Mtirt
 
Полностью текст ошибки при пересылке классификатора?
07.07.2015 10:48
mile-it
 
----- Ошибка приема -----
Пакет: 150707093237_1576172_1.SVP
Тип объекта: Справочник
Идентификатор объекта: SACARDCLASS
-- Уровень вложения 0 --
Сообщение: Невозможно обновить в БД объект «RF, SACARDCLASS», таблица «SACARDCLASS»
Исключение: Sm.Core.BaseException
Источник: Sm.Post.DbLoader
Метод: Void WriteExistingObject(Sm.Server.Database.OracleTransConn, Sm.Post.PostObject)
-- Уровень вложения 1 --
Сообщение: ORA-02292: integrity constraint (SUPERMAG.SMCCARDCLASS) violated - child record found

Исключение: System.Data.OracleClient.OracleException
Источник: System.Data
Метод: Int32 UpdatedRowStatusErrors(System.Data.Common.RowUpdatedEventArgs, BatchCommandInfo[], Int32)
Данные:
параметры: pID=«9401»
соединено с: База даных=ASTOMS; Пользователь=Supermag
текст команды: Delete from Supermag.SACARDCLASS where ID=:pID
тип команды: Text
07.07.2015 10:51
mile-it
 
В базах магазина висят новые группы ( <группа 12659>) которые сейчас не дают обновить справочник.
07.07.2015 10:51
Mtirt
 
В офисе удалили узел классификатора с ID=9401, в магазине в нем остались карточки товара.
Посмотреть, какие карточки в этой группе в магазине находятся, разослать их из офиса, потом разослать классификатор.
07.07.2015 10:54
Ferus
 
Сталкивался при заливки данных почтовиком в чистую базу.
Ругается что не может удалить ветку классификатора, потому что та содержит элементы. Пришлось удалять карточки, пересылать классиф. и потом карточки
Вариант перенсти в другую группу карточки
07.07.2015 10:57
mile-it
 
По этим карточкам уже было движение в магазине, удалять нельзя
07.07.2015 10:58
Ferus
 
Цитата:
Mtirt В офисе удалили узел классификатора с ID=9401, в магазине в нем остались карточки товара.
Посмотреть, какие карточки в этой группе в магазине находятся, разослать их из офиса, потом разослать классификатор.

а вот этот вариант куда правильнее предложенного мной
07.07.2015 11:00
mile-it
 
Цитата:
Mtirt В офисе удалили узел классификатора с ID=9401, в магазине в нем остались карточки товара.
Посмотреть, какие карточки в этой группе в магазине находятся, разослать их из офиса, потом разослать классификатор.

А почему отсылаются вначале карточки? а потом классификатор?
куда денутся эти карточки если в базе магазинах нету нужного раздела?
07.07.2015 11:01
Mtirt
 
А где они сейчас в офисе находятся? Туда и денутся...
07.07.2015 11:04
mile-it
 
Узлы в классификаторе в магазине не удаляли, их просто добавляли в центральной базе, и не разослали, послали только карточки
07.07.2015 11:14
OlegON
 
Видать, бардак с хождением пакетов большой и давно... Неважно, что делали с этим узлом, из него в магазине вытащи карточки в тот узел, который есть и не менялся в офисе, спусти классификатор из офиса, потом разошли либо все карточки, либо те, которые перенес.
07.07.2015 11:25
Mtirt
 
Цитата:
mile-it Узлы в классификаторе в магазине не удаляли, их просто добавляли в центральной базе, и не разослали, послали только карточки
На деньги что-ли поспорить? Что узел в офисе именно удалили...

Покажи результат запроса из магазина и из офиса:
Код:
select * from sacardclass where id=9401
07.07.2015 11:25
mile-it
 
Ну так суть вопроса был в том, что не рассылается классификатор.
Когда пытаешься послать с центрального офиса в магазин нужные разделы классификатора- выдаёт ошибку которую я приводил.
07.07.2015 11:27
mile-it
 
В ЦО создавали новые разделы на новые товары и рассылали в 4 магазина, везде одна и та же ситуация, разделы в магазинах не удаляли.
07.07.2015 11:29
Mtirt
 
Дорогой, у тебя два пути:
- или ты будешь делать, что тебе посоветовали
- или ты и дальше будешь рассказывать (причем неверно), что вы делали.
Выбор за тобой.
07.07.2015 11:51
akonev
 
Цитата:
mile-it А почему отсылаются вначале карточки? а потом классификатор?
куда денутся эти карточки если в базе магазинах нету нужного раздела?
Раньше никуда не девались. Все просто вставало колом.
В новых версиях почтовик сам создает группы с тем ID, которого не хватает в магазине, чтобы принять карточку.

Цитата:
mile-it В базах магазина висят новые группы ( <группа 12659>) которые сейчас не дают обновить справочник.
С Mtirt споришь напрасно. Ошибка приема классификатора приключается, когда из классификатора удалена группа, а в магазине к этой группе карточки привязаны. Вывод - тебя обманывают те, кто говорит, что ничего не удалял в классификаторе. Поверь, реально они сделали новые группы, перенесли туда карточки и удалили старые группы. По какой-то причине изменения карточек обогнали изменения классификатора, так бывает. Может быть, были ошибки рассылки отдельных карточек.
07.07.2015 11:56
Mtirt
 
Еще раз, последовательность действий по шагам:
1. Определить в магазине, что за узел классификатора с ID=9401. (Запросом посмотреть группу и название select * from sacardclass where id=9401)
2. Найти в магазине список артикулов, который в этой группе лежит ( с учетом заблокированных карточек)
3. Переслать эти карточки товаров из ЦО.
4. Переслать классификатор товаров.
5. Убедиться, что нет ошибок при пересылке классификатора, если есть - повторять с пункта 1 для другого узла классификатора.
07.07.2015 13:47
mile-it
 
Всем спасибо за помощь, проблема была действительно в этом..
меня ввели в заблуждение.
07.07.2015 13:58
OlegON
 
Никогда не верьте юзеру на слово...
07.07.2015 14:08
baggio
 
Цитата:
OlegON Никогда не верьте юзеру на слово...
а можно я дополню? "Никогда никому не верьте на слово"...
даже бородатому админу...
20.07.2015 13:08
kadr
 
Цитата:
Mtirt Еще раз, последовательность действий по шагам:
1. Определить в магазине, что за узел классификатора с ID=9401. (Запросом посмотреть группу и название select * from sacardclass where id=9401)
2. Найти в магазине список артикулов, который в этой группе лежит ( с учетом заблокированных карточек)
3. Переслать эти карточки товаров из ЦО.
4. Переслать классификатор товаров.
5. Убедиться, что нет ошибок при пересылке классификатора, если есть - повторять с пункта 1 для другого узла классификатора.
Добавлю:

Если нет способностей пользоваться инструментами по поиску имени группы по номеру, пункты 1-3, то можно просто разослать ВСЕ карточки, нагрузка на почтовик будет больше, но карточки лягут по нужным группам и потом уже переслать классификатор, который присвоит правильные имена нужным узлам.
Опции темы


Часовой пояс GMT +3, время: 12:41.

 

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