Форум OlegON > Программы и оборудование для автоматизации торговли > Системы автоматизации торговли > Супермаг Плюс (Супермаг 2000)

(SUPERMAG.SMCASHDISCCARD_CHECK) - исходный ключ не найден : Супермаг Плюс (Супермаг 2000)

22.11.2024 16:41


10.10.2017 07:57
Доброго времени суток всем!
Уперся в непонятку: не принимаются продажи с касс (1.034СП1, 77СП1) с ошибкой:
Цитата:
сообщение: "Ошибка исполнения функции CDriver.Upload"
исключение: Sm.Core.InteropException
hResult: 80004005h; доп. код: 0
источник: SmUKMCSVDesk
----- Причина исключения, уровень вложения 1 -----
сообщение: "Ошибка при попытке импорта записи из таблицы CASHDCRD. Ключ записи "ShopIndex=3,CashNumber=21,ZNumber=2464,CheckNumber=60,CardType=0,CardNumber=22008202"."
исключение: Sm.Core.InteropException
hResult: 80004005h; доп. код: 0
источник: SmUKMCSVDesk
----- Причина исключения, уровень вложения 2 -----
сообщение: "ORA-02291: нарушено ограничение целостности (SUPERMAG.SMCASHDISCCARD_CHECK) - исходный ключ не найден"
исключение: Sm.Core.InteropException
hResult: 80004005h; доп. код: 2291
источник: Microsoft OLE DB Provider for Oracle
----- Причина исключения, уровень вложения 3 -----
сообщение: "insert into Supermag.SMCASHDISCCARD(LocID,DeskNum,ZNum,CheckNum,Code,DiscSum)
values(3,21,2464,60,'22008202',TO_NUMBER('0','9','NLS_NUMERIC_CHARACTERS='', '''))"
исключение: Sm.Core.InteropException
hResult: 80004005h; доп. код: 0
источник: SmLibaryBase trace
Как я понял, ошибка возникает из-за отсутствия номера карты (22008202 в данном случае) в табличке SMDiscPers. Создал тип карт, добавил номера, попытался принять инфу - результат тот же. Вроде все посмотрел, ничего больше не нашел. Или чего-то не заметил? Направьте на путь истинный, плз...
10.10.2017 08:19
А чек есть?
ShopIndex=3,CashNumber=21,ZNumber=2464,CheckNumber=60
??7
10.10.2017 09:31
Да-да, SMCASHDISCCARD_CHECK проверяет наличие чека в SMCashChecks.
Если бы номер карты, то срабатывал бы SMCASHDISCCARD_CardNumber.
Вот только с чего вдруг это поперло после обновления УКМ?

Андрей, а нигде "в сторонке" старой выгрузки не завалялось?
10.10.2017 10:34
так, отбой тревоги...

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

Почистил каталог, выгрузил повторно с 7 по 10 число - все нормально принялось.

Главное, не паниковать раньше времени :)
10.10.2017 10:43
А выгрузка используется какая?
Текстовая ?

Рекомендую попробовать XML-конвертер.
10.10.2017 11:47
Ага, CSV. XML я тоже предлагал, но Андрею пока не до этого, он с обновлениями борется...
11.08.2018 16:08
Дабы не плодить темы.

СМ 1.029.2, фронт - УКМ-WIN.

текст ошибки:

Имя журнала: Application
Источник: CashServer Library
Дата: 10.08.2018 21:10:48
Код события: 2052
Категория задачи:Сервер
Уровень: Ошибка
Ключевые слова:Классический
Пользователь: Н/Д
Компьютер: Server5
Описание:
В работе кассового модуля произошел сбой. Сообщения об ошибках см. ниже.
Запись 1. Код=80004005h (2291) [Microsoft OLE DB Provider for Oracle]:
ORA-02291: integrity constraint (SUPERMAG.SMCDOCCREDCARD_CARD) violated - parent key not found
ORA-06512: at "SUPERMAG.CASH", line 1650
ORA-06512: at "SUPERMAG.CASH", line 1694
ORA-06512: at "SUPERMAG.CASH", line 1728
ORA-06512: at line 2


Запись 2. Код=80004005h (0) [SmLibaryBase trace]:
begin
Supermag.Cash.CreateCashDocs;end;
%3 %4 %5 %6 %7 %8
Xml события:
<Event xmlns="http://schemas.microsoft.com/win/2004/08/events/event">
<System>
<Provider Name="CashServer Library" />
<EventID Qualifiers="32772">2052</EventID>
<Level>2</Level>
<Task>1</Task>
<Keywords>0x80000000000000</Keywords>
<TimeCreated SystemTime="2018-08-10T18:10:48.000000000Z" />
<EventRecordID>1555105</EventRecordID>
<Channel>Application</Channel>
<Computer>Server5</Computer>
<Security />
</System>
<EventData>
<Data>
Запись 1. Код=80004005h (2291) [Microsoft OLE DB Provider for Oracle]:
ORA-02291: integrity constraint (SUPERMAG.SMCDOCCREDCARD_CARD) violated - parent key not found
ORA-06512: at "SUPERMAG.CASH", line 1650
ORA-06512: at "SUPERMAG.CASH", line 1694
ORA-06512: at "SUPERMAG.CASH", line 1728
ORA-06512: at line 2

</Data>
<Data>
Запись 2. Код=80004005h (0) [SmLibaryBase trace]:
begin
Supermag.Cash.CreateCashDocs;end;
</Data>
</EventData>
</Event>

кроме того, что с кредитными картами связано, не пойму, что смотреть.
прошу помощи. Заранее благодарен за внимание.
11.08.2018 16:40
Скорее всего в чеке присутствует безналичный платеж с ID картой, которой нет в Супермаге.
надо в настройках UKMwin - программа 2- выгрузка к. карта = поставить ID который уже есть в СМ
Миниатюры
Нажмите на изображение для увеличения
Название: Bank-10.png
Просмотров: 298
Размер:	142.0 Кб
ID:	9562   Нажмите на изображение для увеличения
Название: Bank-20.png
Просмотров: 292
Размер:	66.8 Кб
ID:	9563  
13.08.2018 12:13
в файлах выгрузки, таблица CASHSAIL, столбец CredCardIndex, обнаружено значение, которого нет в справочнике кредитных карт в СМ. Проблема решена путем добавления соответствующего типа карт в справочник. Всем спасибо.
Часовой пояс GMT +3, время: 16:41.

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