[ОТВЕТИТЬ]
24.06.2008 14:15
Screamer
 
При отсылке карточки из центральной базы в магазин, почтовик выдает эту ошибку. В магазинной базе карточка под таким артикулом есть, но с другим названием. Из-за чего возникает ошибка и как ее решить? Спасибо.
24.06.2008 14:50
OlegON
 
Из-за того, что ты пересылаешь объект, который уже есть в базе и место создания у него другое. Реши, какая карточка тебе нужнее и другую удали, поправив документы.
24.06.2008 15:06
Screamer
 
но в магазине нет прав на удаление карточки, а в центральной базе "Карточку невозможно удалить, так как на нее есть ссылки из других мест базы данных"
24.06.2008 15:08
kadr
 
Ноги этой проблеммы растут от того что в базе магазина есть карточка с таким артикулом, но DBID происхождения у неё отличается от DBID центральной базы (об этом Олег уже писал). У меня такое впечатление что скорее всего пытаетесь подключить ранее одиночную базу магазина к почтовому модулю, либо меняете старшую БД. Опиши подробнее что делаете сейчас и возможно решение будет другим.
24.06.2008 15:20
Screamer
 
Торговый отдел перенес все карточки из одной группы в другую и удалил ветку классификатора. И теперь в один магазин не уходит классификатор из-за этой проблемной карточки.
ЗЫ: карточка действительно была создана в магазине локально и отдельно в центральной базе.
24.06.2008 15:37
kadr
 
Тогда всё в соответствии с рекомендациями Олега нужно делать. Ведь то что классификатор не уходит это только часть проблемы, артикул есть в разных базах, для него наверняка есть документы в обоих базах, и в итоге получается что документы в офисе не соответствуют документам в магазине, интересно давно ли это и кто пропустил такой момент, если ты говоришь что названия разные.
24.06.2008 15:40
Mtirt
 
Цитата:
Screamer но в магазине нет прав на удаление карточки, а в центральной базе "Карточку невозможно удалить, так как на нее есть ссылки из других мест базы данных"
Создайте пользователя с правами на удаление этой карточки.
Правда есть большая вероятность, что по ней есть движение товаров. Ведь для чего-то она создавалась...

Может проще артикул присвоить новый???
24.06.2008 16:11
Screamer
 
Цитата:
Mtirt Создайте пользователя с правами на удаление этой карточки.
Правда есть большая вероятность, что по ней есть движение товаров. Ведь для чего-то она создавалась...

Может проще артикул присвоить новый???
Дело не в пользователе, а дело в лицензии на Супермаг
24.06.2008 17:14
Screamer
 
Цитата:
kadr Тогда всё в соответствии с рекомендациями Олега нужно делать. Ведь то что классификатор не уходит это только часть проблемы, артикул есть в разных базах, для него наверняка есть документы в обоих базах, и в итоге получается что документы в офисе не соответствуют документам в магазине, интересно давно ли это и кто пропустил такой момент, если ты говоришь что названия разные.
Карточка создавалась в самом начале работы на Супермаге, видимо ошибочно, т.к. было указано не "товар", а "инвентарь". С этой карточкой был 1 контракт и 3 заказа (возможно пробные). Приходов-расходов по ней нет. Из заказов и контракта я ее удалил, но все равно вылезает "Карточку невозможно удалить, так как на нее есть ссылки из других мест базы данных".
А в магазине нельзя удалить, т.к. лицензия не позволяет.
24.06.2008 18:17
baggio
 
тебе уже написали...
1. Лезем в ЦО ищем в supermag.smcard твой артикул... смотрим его DBID
2. Копируем его... куданить в блокнот...
3. Лезем в базу магазина идем в supermag.smcard ищем твой артикул ставим DBID как в старшей базе...

Пересылаем...

З.Ы. ежели необходимо переслать классификатор то... просто перемести данную карточку в группу которая существует в ЦО...

З.Ы.Ы. странная лицензия... которая дает создавать карточки но не дает их удалять сдаеццца мне так не бывает..
25.06.2008 10:03
Screamer
 
Цитата:
baggio тебе уже написали...
1. Лезем в ЦО ищем в supermag.smcard твой артикул... смотрим его DBID
2. Копируем его... куданить в блокнот...
3. Лезем в базу магазина идем в supermag.smcard ищем твой артикул ставим DBID как в старшей базе...

Пересылаем...
А вот тут поподробнее можно? Я ни разу так не делал...

Цитата:
baggio З.Ы. ежели необходимо переслать классификатор то... просто перемести данную карточку в группу которая существует в ЦО...
В магазине опять таки лицензия не позволяет...
25.06.2008 10:13
Mtirt
 
Хорошо. Есть у тебя какой-то инструмент подцепиться к базе???
SQL Navigator ??? PL\SQL Developer ???? TOAD??? Что-то другое???

А то с SQL+ мы долго разбираться будем...
25.06.2008 10:20
Screamer
 
PL\SQL Developer есть
25.06.2008 10:27
Mtirt
 
В базе офиса:
Код:
select t.bornin, t.globalarticle from smcard t where t.article=&MyArticle
Запоминаешь значение в буфер.

В базе магазина. Находишь триггер SMCardFixAttr. Делаешь его -Disable.
Выполняешь запрос:
Код:
 update sncard t set t.bornin='значение bornin предыдущего запроса',t.globalarticle='значение globalarticle предыдущего запроса' where  t.article=&MyArticle
commit не забудь...
Триггер SMCardFixAttr -Enable.

После этого пересылаешь карточку из базы офиса в магазин.

ОК???
25.06.2008 10:38
Screamer
 
а как триггер отключать? ;)
25.06.2008 10:50
Mtirt
 
Находишь таблицу smcard. Открываешь её свойства.
Находишь тригеры. Находишь нужный. Правая кнопка мыши - в контекстном меню выбираешь Disable.

Или
Код:
 alter trigger smcardfixattr disable;
alter trigger smcardfixattr enable;
25.06.2008 10:55
Mtirt
 
С классификатором. Дело в той же самой карточке???
Или в другой???
25.06.2008 11:31
Screamer
 
Цитата:
Mtirt С классификатором. Дело в той же самой карточке???
Или в другой???
да, эта карточка виновата...
что-то не поменялось ничего...
отключил, поменял, включил... Никаких ошибок не выдало... Ничего не изменилось :(

ЗЫ: bornid можно в журнале карточки посмотреть...
25.06.2008 11:34
Mtirt
 
Из офиса карточка разослалась в базу магазина? Или есть сообщение об ошибке?

Я кроме bornid просила еще и globalarticle поменять...
25.06.2008 12:39
Screamer
 
Цитата:
Mtirt Из офиса карточка разослалась в базу магазина? Или есть сообщение об ошибке?
так ничего же не изменилось... может еще чего-то надо сделать?

Цитата:
Mtirt Я кроме bornid просила еще и globalarticle поменять...
а чем globalarticle отличается от просто article?
25.06.2008 12:45
Mtirt
 
В документации написано:
Цитата:
Globalarticul Артикул центрального офиса :NULL – временная карточка, заведенная в базе, отличной от БД центрального офиса; ссылки на данную карточку подлежат замене ссылками на соответствующую карточку ЦО;<> Article – временная карточка, которой поставлена в соответствие карточка ЦО, тогда GlobalArticle =артикул карточки ЦО; такая карточка не
подлежит дальнейшему использованию (должна иметь статус "заблокирована";= Article – карточка заведенная в ЦО
Том09 вер. 1.026. Структура базы данных. страница 37.
25.06.2008 12:48
Mtirt
 
Цитата:
Screamer так ничего же не изменилось... может еще чего-то надо сделать?
А ты её вообще рассылал из офиса???
Commit после выполнения второго скрипта точно не забыл нажать???

Результат первого запроса выложи. Из базы ЦО и из базы магазина.
25.06.2008 17:12
Screamer
 
Цитата:
Mtirt А ты её вообще рассылал из офиса???
Commit после выполнения второго скрипта точно не забыл нажать???
Всё! Получилось! Действительно забыл нажать :)
Спасибо большое!
Опции темы


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

 

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