18.08.2016 14:48 | |
sonic1978Пользователь iNETsHOP Количество сообщений 107 Зарегистрирован: 27-02-2016, 15:29:39 |
ошибка при сохранении одного из прайсов, ранее не встречалась |
18.08.2016 16:00 | |
supportSupport Количество сообщений 1199 Зарегистрирован: 11-04-2008, 19:11:57 |
В таблице товаров поставщиков TBL_SUPPLIERS_GOODS уникальный индекс IX_TBL_SUPPLIERS_GOODS#S_ID_NAME состоит из трех полей SG_S_ID (ID поставщика), SG_NAME (Наименование), SG_SID (Код поставщика, т.е. уникальный ключ товара по которому он идентифицируется при импорте, если таковой не указан - используется наименование). Уникальность импортированных товаров из прайс-листа проверяется только перед сравнением товаров, очем может быть выдано соответствующее сообщение об ошибке и внизу окна с результатами чтения прайса показываются дубликаты товаров. Если вы каким-то образом модифицируете импортированные данные дополнительными SQL-запросами, то должны следить за уникальностью данных, т.к. уникальные ключи и индексы не дадут в данном случае записать повторяющиеся данные. |
18.08.2016 16:04 | |
sonic1978Пользователь iNETsHOP
Тема начата
Зарегистрирован: 27-02-2016, 15:29:39 |
отключил все скрипты модификаций, результат тот же самый |
18.08.2016 16:07 | |
sonic1978Пользователь iNETsHOP
Тема начата
Зарегистрирован: 27-02-2016, 15:29:39 |
про дубликаты которые перед сравнением идут - да, я в курсе, удалял как там-же в программе, так и пробовал чистить сам прайс от дублей |
18.08.2016 16:08 | |
supportSupport Количество сообщений 1199 Зарегистрирован: 11-04-2008, 19:11:57 |
Каким образом вы их исключили и какие использовали? |
18.08.2016 16:26 | |
sonic1978Пользователь iNETsHOP
Тема начата
Зарегистрирован: 27-02-2016, 15:29:39 |
удалил из схемы импорта. только один и использовался, но к названиям он отношения не имеет. UPDATE ##TMP_PRICE_DATA SET SG_ARTIKUL = ARTIKUL FROM (SELECT G_SID as ARTIKUL, SG_ID as GOOD_ID FROM TBL_GOODS g, TBL_SUPPLIERS_GOODS sg WHERE sg.SG_G_ID = g.G_ID) t WHERE SG_ID = GOOD_ID AND IMPORT_ID = :IMPORT_ID; UPDATE ##TMP_PRICE_DATA SET _ARTIKUL = 1 WHERE ISNULL(SG_ARTIKUL, '') <> '' AND IMPORT_ID = :IMPORT_ID; удалил после сравнения товары которые отобрались на добавление - сохранение прошло успешно. ну и эта ошибка только в одном прайсе, из 30 |
18.08.2016 19:32 | |
supportSupport Количество сообщений 1199 Зарегистрирован: 11-04-2008, 19:11:57 |
Данный дополнительный sql-скрипт не влияет на изменение данных которые могут вызвать такую ошибку. Что еще вы меняли в схеме импорта? Вы меняли формирование названий товаров, кода поставщика? |
29.08.2016 12:33 | |
sonic1978Пользователь iNETsHOP
Тема начата
Зарегистрирован: 27-02-2016, 15:29:39 |
решилось удалением товаров поставщика (их оказалось относительно немного) и новой заливкой и привязкой. подумал что возможно проблема у меня возникла изза различных кодировок. прайс поставщика парсится и в дальнейшем уже преобразую его в excel возможно получилось что написание товара одно а по факту они в разных кодировках, и это мешало както. |