![]() |
|
Проблема неуникальности при переводе с файловой на SQL | ☑ | ||
---|---|---|---|---|
0
МешочекЗнаний
04.04.17
✎
21:45
|
Приветствую уважаемые.
КА 1.1 файловая (Платформа 8.3.6), 15 ГБ перевожу в SQL 2012. Выгрузил dt, загружаю в SQL - получаю ошибку SQL сервера - неуникальная запись в уникальной таблице AccRgT744. Сделал ТиИ без галок реиндексации и сжатия, выгрузил dt ещё раз, гружу опять та же ошибка. Как можно быстро найти эту запись и удалить? |
|||
1
H A D G E H O G s
04.04.17
✎
21:47
|
Отключить итоги перед выгрузкой
|
|||
2
МешочекЗнаний
05.04.17
✎
08:45
|
(1) Спасибо
Теперь новая проблема Ошибка загрузки информационной базы. В информационную базу загружены не все данные по причине: Попытка вставки неуникального значения в уникальный индекс: Microsoft SQL Server Native Client 11.0: The CREATE UNIQUE INDEX statement terminated because a duplicate key was found for the object name 'dbo._AccRgED1152' and the index name '_AccRgED1152_ByPeriod_TRNRN'. The duplicate key value is (Nov 30 4014 11:59PM, 0x000001fa, 0xb911001e6746b00411e479d1b60bc875, 11, 0xb5bec72d2c1ac9714487aece7c698fe5, 0). HRESULT=80040E2F, SQLSrvr: SQLSTATE=23000, state=1, Severity=10, native=1505, line=1 |
|||
3
toypaul
гуру
05.04.17
✎
08:52
|
наверное надо проверку перед выгрузкой было запустить? по крайней мере на 7ке раньше так было :)
ну а вообще в сообщении все написано |
|||
4
toypaul
гуру
05.04.17
✎
08:54
|
а...проверка сделана ... проблема в дублях при подсчете итогов
|
|||
5
toypaul
гуру
05.04.17
✎
08:56
|
вот тут http://main.1c-ei.ru/Home/help/objectdb/dbschema
написано что AccRgED<n> - таблица значений субконто регистра бухгалтерии, создается в том случае, если он ссылается на план счетов, у которого максимальное количество субконто больше нуля. |
|||
6
toypaul
гуру
05.04.17
✎
09:03
|
"таблица значений субконто регистра бухгалтерии" какая-то загадочная таблица. вроде и не итоги, а строится явно каким-то подсчетом.
|
|||
7
МихаилМ
05.04.17
✎
09:35
|
данные загрузились.
1с для таблиц данных (не системных) индексы создает после загрузки данных. найдите дубли , сохраните в отдельную таблицу , удалите дубли. создайте индексы. разберитесь с ответственными за данные , как на отчетность повлияло удаление задвоенных. |
|||
8
Serg_1960
05.04.17
✎
10:06
|
В файловой не проверяется уникальность записей. Это же азбука. Имхо, можно/нужно самостоятельно выявлять и ликвидировать неуникальность записей. Запрос проверки неуникальности строится по ключевым полям индекса (его наименование - в тексте ошибки). Их можно "подсмотреть" в структуре хранения данных. Впрочем ключ индекса и без этой информации можно узнать. Более подробно - http://www.gilev.ru/index/
|
|||
9
МихаилМ
05.04.17
✎
10:20
|
(8)
осталось выяснить как построить запрос 1с8 , чтобы выбрать задвоенные (или детальные) записи из таблиц субконто для файловой базы |
|||
10
МешочекЗнаний
05.04.17
✎
10:22
|
(7) Похоже что и вправду загрузилось
С TSQL дружу плохо, родил такой запрос: SELECT DISTINCT [_Period] ,[_RecorderTRef] ,[_RecorderRRef] ,[_LineNo] ,[_Correspond] ,[_KindRRef] ,[_Value_TYPE] ,[_Value_RTRef] ,[_Value_RRRef] FROM [agro_upp_test_01].[dbo].[_AccRgED1152] group by [_Period] ,[_RecorderTRef] ,[_RecorderRRef] ,[_LineNo] ,[_Correspond] ,[_KindRRef] ,[_Value_TYPE] ,[_Value_RTRef] ,[_Value_RRRef] having count(*)>1 Вывел записи, посмотрел в базе - относятся к документу расчету себестоимости. В форме списка творятся чудеса, то показывает Расчет себестоимости 000000012 от 30.11.2014 10:07:20, то Расчет себестоимости 000000012 от 30.11.2014 23:59:59. Буду смотреть на что с этим делать. |
|||
11
Вафель
05.04.17
✎
10:22
|
помниться на регистре бух была ошибка если вместо пустых ссылок в субкото было неопределено или нул.
Такое могло быть при переносе проводок |
|||
12
mehfk
05.04.17
✎
10:23
|
(0) dt выгрузил из файловой ?
|
|||
13
Вафель
05.04.17
✎
10:24
|
||||
14
mehfk
05.04.17
✎
10:25
|
Тьфу, увидел что из файловой. Сделай ТиИ на файловой платформой посовременнее.
|
|||
15
МешочекЗнаний
05.04.17
✎
10:28
|
(12) Да, Dt из файловой
(14) делал - пост №(0), 8.3.8.2137 При просмотре движений документа Расчет себестоимости 000000012 выпадает та же ошибка в SQL. Отменить проведение неполучается, опять пишет ошибку неуникальности. Попробую в файловой перепровести и выгрузить. |
|||
16
eklmn
гуру
05.04.17
✎
10:41
|
(15) вообще распроведи его, потом в новой базу проведешь
|
|||
17
Serg_1960
05.04.17
✎
10:55
|
(9) Хмм... мне легче установить на компе PostgreSQL, развернуть базу из DT и там ликвидировать неуникальность.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |