|
Построенный запрос к СУБД использует слишком много таблиц | ☑ | ||
---|---|---|---|---|
0
lamme
07.11.16
✎
17:43
|
Построенный запрос к СУБД использует слишком много таблиц. Допустимо не более 256.
Microsoft OLE DB Provider for SQL Server: Слишком много имен таблиц в запросе. Максимально допустимое значение - 256. HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, SQLSrvr: SQLSTATE=42000, state=1, Severity=F, native=102, line=773 |
|||
1
lamme
07.11.16
✎
17:44
|
пардон ... не заполнил все входящие услвоия.
1С8 отчет. один юзер может его делать у другого - выходит вот это вот сообщение. кеш чистил - не помогает. от учетной записи на сервере (работа через терминал) - не зависит. в чем трабл ? |
|||
2
azernot
07.11.16
✎
17:47
|
RLS
у второго пользователя ограничены права. И ограничены как-то криво, что в итоге количество таблиц в запросе больше 256 |
|||
3
Господин ПЖ
07.11.16
✎
17:53
|
переползайте на sql сервер повыше. или rls убирайте + "составные" поля
|
|||
4
shuhard_серый
07.11.16
✎
18:32
|
(3) + 1
лет 7 как MS SQL не страдает этой болезнью |
|||
5
Живой Ископаемый
07.11.16
✎
19:08
|
2(0) помочь с чем?
|
|||
6
lamme
07.11.16
✎
23:13
|
2
RLC да. но как понять - криво ограничены и на какую таблицу там запрос трехэтажный .. много документов выбирается по регистру все просматривать что ль права? |
|||
7
lamme
07.11.16
✎
23:19
|
обращение к регистру
у него измерение Док = ДокументСсылка в этом может быть косяк? работало всегда пока не добавил поле - <Регистр>.Док.Дата |
|||
8
skeptik_m
07.11.16
✎
23:26
|
Скорее всего на пользователя навешано очень много ролей сразу (с разными RLS, которые в итоге складываются). Вы можете попробовать:
1) Уменьшить число ролей навешанных на пользователя. 2) Упростить запрос 3) Перейти на SQL 2008/2012/2014 - там такой проблемы вообще нет (SQL 2005 с сервис паками, кажется, тоже хватит, но точно не уверен). 4) А еще можно при построении отчета выполнить запрос в привелегированном режиме (при этом RLS использоваться не будут). > пока не добавил поле <Регистр>.Док.Дата И поле Док у Вас, естественно, составного типа :-) При использовании такой конструкции происходит соединение со всеми таблицами документов ссылки на которые могут быть в этом поле. А к ним еще (неявно для написавшего запрос) соединяются таблицы используемые в RLS. |
|||
9
lamme
07.11.16
✎
23:27
|
попробуем привелигированный режим
|
|||
10
dmpl
07.11.16
✎
23:57
|
(7) Именно в этом проблема: пока не обращаешься через точку - Док просто ссылка. Как только ставишь точку - идет неявное соединение со всеми таблицами документов. Используй ВЫРАЗИТЬ совместно с КОГДА Док ССЫЛКА, чтобы соединение шло только с 1 таблицей.
|
|||
11
dmpl
08.11.16
✎
00:02
|
(8) Переход на новый SQL - это сокрытие проблемы. Проблему надо решать. Либо ограничивая число типов в регистре, либо через ВЫРАЗИТЬ, либо добавив эту дату в регистр чтобы не ползать за ней в документы (что в первом приближении примерно то же самое что строить отчет по документам). А то потом будут жалобы "а чего этот RLS тормозит?".
|
|||
12
lamme
08.11.16
✎
00:13
|
(8)
взлетел привелигированный режим спасибо |
|||
13
lamme
08.11.16
✎
00:14
|
(10)
а это как? выразить дату документа ... туплю |
|||
14
ИсчадиеADO
08.11.16
✎
03:31
|
разбить на несколько вт как вариант
|
|||
15
ИсчадиеADO
08.11.16
✎
03:32
|
(12) добавиться у тебя еще неск видов доков к типу все ссылки документов, и отключение рлс не поможет
|
|||
16
ИсчадиеADO
08.11.16
✎
03:35
|
(1) "отчет.
один юзер может его делать " как-то выполнять запрос для отчета в привилегированном - чета не то, мне кажется |
|||
17
dmpl
08.11.16
✎
11:50
|
(13) Типа так:
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |