Ошибка использования операции 'ОБЪЕДИНИТЬ' ('UNION')!? #672747


#0 by Mikhail Volkov
На очень удаленном филиале база на 8.1 сервер 2003х86. При попытке выгрузить в dt, пишет: "Ошибка использования операции 'ОБЪЕДИНИТЬ' ('UNION'). Допустимо объединение не более 256 результатов запроса". Думал, что SQL-ошибка, с большим трудом забрал ее SQL-бекапом, развернул на другом сервере, тоже 2003х86. Ошибка та же!? ТиИ затыкается на "Проверка ссылочной целостности информационной базы". Есть шансы вылечить?
#1 by Mitriy
думаю, надо смотреть в сторону каких-нибудь реквизитов с типом все ссылки... или что-то вроде этого...
#2 by Ненавижу 1С
что за SQL Server такой?
#3 by Ненавижу 1С
вообще то это ошибка SQL сервера
#4 by Жан Пердежон
через точку обращаешься к реквизитам составного типа.(регистратор.дата и т.п.)
#5 by ДенисЧ
Или менять текст запроса. Или апгрейдить скуль до 2008
#6 by Mitriy
в 2008-ом ограничение не 256 таблиц никуда не делось...
#7 by Ненавижу 1С
а в 2012?
#8 by dk
"При попытке выгрузить в dt"
#9 by Mikhail Volkov
SQL2005 SQL2008 не поможет? А SQL2012?
#10 by Живой Ископаемый
2 делось, если и база 2008 скуля а не 2005
#11 by Mikhail Volkov
Где в конфигураторе? Я бы все временно убрал, чтобы выгрузить... думаю, что такой запрос возникает при компиляции?
#12 by МихаилМ
что говорит технологический журнал и ms sql profiler ?
#13 by Mikhail Volkov
Проверка логической целостности. РегистрНакопления... Неверные вспомогательные данные таблицы. Значение изменено. Но все равно не помогло!?
#14 by Alexey_Morov
Странно, что в MS Profiler показывает всё правильно.
#15 by Alexey_Morov
Может в базе в каком-то поле оказалось некорректное значение? Сработал sql injection? Тогда результат выгрузки может быть некорректным.
#16 by Mikhail Volkov
Не, это результат ТиИ уже здесь, а MS Profiler на удаленном сервере не смотрел, связь очень хреновая...
#17 by МихаилМ
в 99% случаев 1c оборачивает запросы. но все равно только ТЖ и ms sql profiler помогут локализовать проблему.
#18 by Mitriy
и да, в 2008 этого ограничения нет... извиняюсь...
#19 by Mikhail Volkov
Сейчас запустил ТиИ реструктуризацию таблиц, а то на удаленном сервере ТиИ совсем затыкается...
#20 by Mikhail Volkov
Попробую на 2008
#21 by Alexey_Morov
Согласен. Но это немного ухудшает производительность. Плюс не используются новые фишки MS SQL 2008-2012 (common table expression и т.д.). Так? Сколько ни ловил профайлером запросы, ни одного с CTE не поймал.
#22 by МихаилМ
заведите отдельную ветку. Эта ветка про другое.
#23 by Alexey_Morov
Админы зверствуют и против того, чтобы я заводил ветку, посвящённую новым возможностям MS SQL 2008-2012 и использованию их в 1С. Поэтому прошу Вас завести данную ветку.
#24 by Mikhail Volkov
Решил лечить базу посредством ВыгрузкаЗагрузкаДанныхXML, переносить только текущий год (за одним свертку сделать). Сохранил конфигурацию, загрузил в новую файловый вариант. И тут выдало: В процессе обновления информационной базы произошла критическая ошибка. по причине: Ошибка СУБД: Длина ключа индекса превышает максимально допустимую '_InfoRe6400_ByDims_SSSSSSRSRR (_Fld6401_TYPE, _Fld6401_S, _Fld6402_TYPE, _Fld6402_S, _Fld6403, _Fld6404, _Fld6405, _Fld6406, _Fld6407RRef, _Fld6408, _Fld6409RRef, _Fld6410RRef)' Куда копать?
#25 by acsent
что за регистр?
#26 by Mikhail Volkov
Не знаю, как определить?
#27 by Mikhail Volkov
Зашел в таблицы SQL, там таких имен нет: _InfoRe6400..., есть _InfoReg...!? Загрузил эту же конфигурацию в SQL вариант - все нормально! Выгрузил эту пустую базу в dt, загружаю в файловый вариант, и та же хрень: Ошибка СУБД: Длина ключа индекса превышает максимально допустимую '_InfoRe6400_ByDims_SSSSSSRSRR (_Fld6401_TYPE, _Fld6401_S, _Fld6402_TYPE, _Fld6402_S, _Fld6403, _Fld6404, _Fld6405, _Fld6406, _Fld6407RRef, _Fld6408, _Fld6409RRef, _Fld6410RRef)' Что не хватает для файлового варианта 8.1? Давно с ней не работал...
#28 by Живой Ископаемый
ну вот и после того как ты загрузил в СКЛ-вариант, что тебя остановило от того, чтобы смочь ответ на вопроса ?
#29 by Mikhail Volkov
Если бы он был в СКЛ-варианте, я по содержимому может быть смог определить, что за регистр. Но его там нет! А в файловом варианте как?
#30 by shuhard
а при чем здесь 8.1, это какой то умник в Рг сведений забубенил в измерения строку 1024
#31 by Живой Ископаемый
2 а зачем ты ищешь индекс среди таблиц? ищи его среди индексов!
#32 by Mikhail Volkov
Да, нашел его в таблице _InfoReg6400, но она пустая!? Как определить, что за регистр? Проверяю все РС, пока не нашел...
#33 by Живой Ископаемый
индексы проверяй, не таблицы!
#34 by Живой Ископаемый
заскриптуй его. и посмотри скрипт
#35 by shuhard
в 1С есть отдельные от Рг сведений индексы - окуеть
#36 by Живой Ископаемый
2 окуел? и как тогда объяснишь что автор не может найти то что ищет?
#37 by 1Сергей
Ищи обработку Просмотр метаданных, чтобы определить какая таблица к какому объекту относится
#38 by Живой Ископаемый
2 у не не на ТАБЛИЦЕ валится!
#39 by Живой Ископаемый
а, вообще да, сорри, но зачем искать обработку, это ведь две строки кода.
#40 by Mikhail Volkov
Где, на ИТС? Ну нашел индекс _InfoRe6400_ByDims_SSSSSSRSRR, а как определить, что за регистр в 1С? Можно в студию?
#41 by Живой Ископаемый
в студию вносят украденный СП, обошлись одной строкой:
#42 by Mikhail Volkov
У меня в 8.1 какая-то допотопная консоль запросов :( Может, поделишься? mvolkov@loginural.ru
#43 by Живой Ископаемый
2 и вот если я поделюсь с тобой, то как же ты собираешься открыть в 8.1 обработку предназначенную для 8.2?
#44 by Живой Ископаемый
не будь Рип-ван-винклем, переходи на 8.2 ну или уж дождись сентября и переходи на 8.3
#45 by Живой Ископаемый
и вообще, при чем тут консоль запросов? тебе нужна строчка кода которая написана. Сооруди обработку с формой и кнопкой, чтобы по кнопке выполнялась эта строка. чтож ты как маленький совсем, а?
#46 by Mikhail Volkov
Действительно оказался РС ДополнительныеРеквизитыНоменклатуры, у которого 7 измерений Строка, Длинна 100, Допустимая длина Переменная, т.е. может быть 1024!? Исправить на фиксированная?
#47 by Живой Ископаемый
нет, не может быть 1024. может быть от 0 до 100.
#48 by Mikhail Volkov
Тогда что с ним не так? Кроме 7 строковых измерений, еще 3 - справочники, ресурсов нет, 1 ревизит строка 150.
#49 by Живой Ископаемый
а совокупно больше 1024?
#50 by Mikhail Volkov
Строковых: 7*100+150, вроде нет. Еще 3 измерения - справочники, их как считать?
#51 by Живой Ископаемый
поэкспериментируй, поставь фиксированные, поставь не 100, а 70, и 150 уменьшь до 70...
#52 by Mikhail Volkov
Как ни странно, но помогло!? Странно, потому что это РС поставщика Рарус УАТ, его никто не менял. В центральном офисе 2 года назад перешли на 8.2, и к этому РС притензий нет. А в этом удаленном филиале давно какие-то непонятки. Поэтому не смогли перейти на 8.2. Теперь появилась возможность лечить базу выгрузкой-загрузкой. Всем большое спасибо
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С