![]() |
|
v8: Загрузка в SQL базу. | ☑ | ||
---|---|---|---|---|
0
lesstat
20.07.12
✎
14:04
|
Есть ДБФ База нужно перевести ее на SQL, база оттестирована, выгрузка проходит нормально но при загрузке выходит такое сообщение:
Ошибка загрузки информационной базы. В информационную базу загружены не все данные по причине: Попытка вставки неуникального значения в уникальный индекс: Microsoft OLE DB Provider for SQL Server: Операция CREATE UNIQUE INDEX прервана, так как обнаружен повторяющийся ключ для имени объекта "dbo._Document210_VT5229" и имени индекса "_Documen210_VT5229_IntKeyInd". Повторяющееся значение ключа: (0x00000000000000000000000000000000, 0x00000000). HRESULT=80040E2F, SQLSrvr: Error state=1, Severity=10, native=1505, line=1 нашел что таблица Documen210_VT5229 это списание товаров ТЧ Товаров, как и какими средствами можно исправить эту ошибку? |
|||
1
Джордж1
20.07.12
✎
14:05
|
А сделать ТиС на файловой базе не вариант?
|
|||
2
lesstat
20.07.12
✎
14:05
|
База УТ 10.3 на платформе 8.1
|
|||
3
lesstat
20.07.12
✎
14:05
|
(1) написано же что оттестирована
|
|||
4
lesstat
20.07.12
✎
14:06
|
Я и имел ввиду ТиС
|
|||
5
МихаилМ
20.07.12
✎
14:16
|
в ddl триггере отключите индекс
после загрузки найдите задвоения уберите (сверните, удалите...) включите индекс и перестройте. |
|||
6
lesstat
20.07.12
✎
14:23
|
(5) а можно поподробней как это сделать?
|
|||
7
lesstat
20.07.12
✎
14:29
|
(5) это как то в SQL можно отключить?
|
|||
8
МихаилМ
20.07.12
✎
14:37
|
вот еще подсказка
для тех, кто не умеет пользоваться поиском в интернете. http://yandex.ru/yandsearch?text=v8%3A+(0x00000000000000000000000000000000%2C+0x00000000)&lr=213&site=forum.mista.ru |
|||
9
эцп
20.07.12
✎
14:49
|
||||
10
lesstat
23.07.12
✎
07:28
|
чем можно открыть таблицу на которую ругается?
|
|||
11
lesstat
23.07.12
✎
08:04
|
чем открыть таблицу и грохнуть левые записи Tool_1C дает только просмотреть?
|
|||
12
lesstat
23.07.12
✎
08:36
|
народ, что нет никаких редакторов, можно только посмотреть на таблицу?
|
|||
13
lesstat
23.07.12
✎
11:03
|
ап
|
|||
14
DarkWater
23.07.12
✎
11:21
|
Я в подобной ситуации обошёлся без открытия таблиц. В 1С в отладчике посмотрел, что это за объект при помощи ПолучитьСтруктуруХраненияБазыДанных(). Оказалось, что это таблица регистрации плана обмена регистра, который я вообще не использую. Удалил регистр из плана обмена и всё. Посмотри, что это у тебя за документ, может его вообще целиком грохнуть можно в крайнем случае.
|
|||
15
Жан Пердежон
23.07.12
✎
11:24
|
гы
ДБФ, 8.1, ТиС |
|||
16
lesstat
23.07.12
✎
12:12
|
(14) я же писал в первом посте что это документ списания
|
|||
17
sapphire
23.07.12
✎
12:17
|
(15) Тоже улыбнуло :)
|
|||
18
lesstat
24.07.12
✎
08:35
|
Как отключить у конкретной таблицы dll тригеры, если их там вообще нет, загрузка падает на этой таблице
|
|||
19
lesstat
24.07.12
✎
08:37
|
ПолучитьСтруктуруХранениябазыДанных() Выдало Метаданные: Документ.СписаниеТоваров.ТабличнаяЧасть.ТоварыНазначение:ТабличнаяЧасть
как здесь можно очистить пустые значения? |
|||
20
МихаилМ
24.07.12
✎
10:26
|
(19)
напишите обработку поиска дублирующихся строк в базе с файловым хранением . лучше сразу для всех ТЧ и регистров тк проблемы могут быть множественными. перепешите наборы данных с удалением строк тч и движений регистров с нулевыми строками + сверните задублированные. естественно с контролем, что не изменятся движения в простом случае помогает перезапись документов. но лучше проконтролировать. учтите проблему нехватки памяти для таблиц размером близким к 4 гб. |
|||
21
Черников
24.07.12
✎
10:45
|
(0) А саму SQL базу пробовал открывать? Иногда она открывается. Тогда находишь различие в учете с файловой и корректируешь. У меня раза два такое случалось.
|
|||
22
lesstat
24.07.12
✎
11:34
|
(20) как напрямую обратиться к ТЧ, можете пример показать?
|
|||
23
lesstat
24.07.12
✎
11:35
|
(21) после таблицы на которой спотыкается загрузка данных никаких нет
|
|||
24
lesstat
25.07.12
✎
12:29
|
(20) можете пример показать хотя бы для конкретной ТЧ
|
|||
25
МихаилМ
26.07.12
✎
09:13
|
еще один способ решения проблнмы
распаковать DT файл программой DTManager удалить строки 0x00000000000000000000000000000000, 0x00000000 запаковать. |
|||
26
Serg_1960
26.07.12
✎
09:25
|
Зачем такие сложности? Автор уже установил точное местонахождение ошибки. Осталось только ему чуток напрячься и посмотреть из каких полей состоит этот ключ. В ключе - реквизиты ТЧ. Запрос на уникальность по реквизитам индекса - ипроблема автора решена.
|
|||
27
МихаилМ
26.07.12
✎
09:28
|
(26)
написано не только для автора, но и для тех , у кого проблема будет в будущем |
|||
28
МихаилМ
26.07.12
✎
09:30
|
+27
последний вариант - самый простой. не требует знаний запросов, записи без подписок ... |
|||
29
Serg_1960
26.07.12
✎
09:33
|
Проблему можно решить, используя структуру хранения данных и не прибегая к сомнительным сторонним обработкам. Имхо.
|
|||
30
МихаилМ
26.07.12
✎
09:41
|
(29)
каждый решает согласно своей квалификации для одних сомнительно одно - для других другое. мне например проще ddl триггеры состряпать а кому-то - обработку написать а комуто - найти обработку в интернете или технологические решения, как в (8) а совсем ... проще в текстовике найти и удалить "не правильные строчки" Как видите, решений много какие из них "сомнительныйе" каждый решит сам. |
|||
31
Serg_1960
26.07.12
✎
09:58
|
(30) Согласен. "Если специалист владеет только одним методом и имя ему - молоток, то для него все проблемы - гвозди" :( не помню кто сказал :)
Перефразирую: если знаком с инструментом DTManager - используй. Но сомневаюсь что автор им владеет -потому и назвал "сомнительным", ибоестьриск окончательно уделать базу. PS: сорри, тс, за off |
|||
32
lesstat
26.07.12
✎
16:57
|
да много разных методов, но я пошел наверное самым извращенным, в tool_1C посмотрел на пустые(они же повторяющиеся ссылки) смещение, открыл CD файл в hex редакторе, нашел там по смещениям эти ссылки и забил туда (в первые байты) разные числа, сохранил, ВУАЛЯ проблема с повторяющимеся индексами решена
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |