Имя: Пароль:
1C
 
Построенный запрос к СУБД использует слишком много таблиц. Допустимо не более 25
0 olo_lo1
 
09.09.16
17:01
Делаю запрос:

ВЫБРАТЬ
    ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстатки.Организация,
    ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстатки.Контрагент,
    ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстатки.ДокументРасчетовСКонтрагентом КАК Реализация,
    ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстатки.СуммаВзаиморасчетовОстаток КАК СуммаЗадолженностиВсего,
    ВЫБОР
        КОГДА ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстатки.ДоговорКонтрагента.КонтролироватьЧислоДнейЗадолженности = ИСТИНА
            ТОГДА ДОБАВИТЬКДАТЕ(ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстатки.ДокументРасчетовСКонтрагентом.Дата, ДЕНЬ, ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстатки.ДоговорКонтрагента.ДопустимоеЧислоДнейЗадолженности)
        ИНАЧЕ ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстатки.ДокументРасчетовСКонтрагентом.Дата
    КОНЕЦ КАК СрокОплаты,
    ВЫБОР
        КОГДА &Период > ВЫБОР
                КОГДА ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстатки.ДоговорКонтрагента.КонтролироватьЧислоДнейЗадолженности = ИСТИНА
                    ТОГДА ДОБАВИТЬКДАТЕ(ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстатки.ДокументРасчетовСКонтрагентом.Дата, ДЕНЬ, ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстатки.ДоговорКонтрагента.ДопустимоеЧислоДнейЗадолженности + 1)
                ИНАЧЕ &Период
            КОНЕЦ
            ТОГДА ВЫБОР
                    КОГДА &Период > ВЫБОР
                            КОГДА ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстатки.ДоговорКонтрагента.КонтролироватьЧислоДнейЗадолженности = ИСТИНА
                                ТОГДА ДОБАВИТЬКДАТЕ(ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстатки.ДокументРасчетовСКонтрагентом.Дата, ДЕНЬ, ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстатки.ДоговорКонтрагента.ДопустимоеЧислоДнейЗадолженности + 1)
                            ИНАЧЕ &Период
                        КОНЕЦ
                        ТОГДА ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстатки.СуммаВзаиморасчетовОстаток
                    ИНАЧЕ 0
                КОНЕЦ
        ИНАЧЕ 0
    КОНЕЦ КАК СуммаПросроченнойЗадолженности,
    ВЫБОР
        КОГДА &Период > ВЫБОР
                КОГДА ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстатки.ДоговорКонтрагента.КонтролироватьЧислоДнейЗадолженности = ИСТИНА
                    ТОГДА ДОБАВИТЬКДАТЕ(ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстатки.ДокументРасчетовСКонтрагентом.Дата, ДЕНЬ, ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстатки.ДоговорКонтрагента.ДопустимоеЧислоДнейЗадолженности + 1)
                ИНАЧЕ &Период
            КОНЕЦ
            ТОГДА РАЗНОСТЬДАТ(ВЫБОР
                        КОГДА ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстатки.ДоговорКонтрагента.КонтролироватьЧислоДнейЗадолженности = ИСТИНА
                            ТОГДА ДОБАВИТЬКДАТЕ(ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстатки.ДокументРасчетовСКонтрагентом.Дата, ДЕНЬ, ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстатки.ДоговорКонтрагента.ДопустимоеЧислоДнейЗадолженности + 1)
                        ИНАЧЕ &Период
                    КОНЕЦ, &Период, ДЕНЬ)
        ИНАЧЕ 0
    КОНЕЦ КАК Дней,
    ЕСТЬNULL(ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстатки.ДокументРасчетовСКонтрагентом.Сделка.Ответственный, ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстатки.ДокументРасчетовСКонтрагентом.Ответственный) КАК ОтветственныйМенеджер,
    ЕСТЬNULL(ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстатки.ДокументРасчетовСКонтрагентом.ВалютаДокумента, ЗНАЧЕНИЕ(Справочник.Валюты.ПустаяСсылка)) КАК ВалютаВзаиморасчетов,
    ВЫБОР
        КОГДА ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстатки.ДоговорКонтрагента.КонтролироватьЧислоДнейЗадолженности = ИСТИНА
            ТОГДА " / По договору"
        ИНАЧЕ " / Не контролируется"
    КОНЕЦ КАК ТипЗадолженности,
    ВЫБОР
        КОГДА ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстатки.ДоговорКонтрагента.ДопустимоеЧислоДнейЗадолженности = 0
            ТОГДА ИСТИНА
        ИНАЧЕ ЛОЖЬ
    КОНЕЦ КАК НулевоеЧислоДнейЗадолженности
ИЗ
    РегистрНакопления.ВзаиморасчетыСКонтрагентамиПоДокументамРасчетов.Остатки(
            &Период,
            ДокументРасчетовСКонтрагентом ССЫЛКА Документ.РеализацияТоваровУслуг
                ИЛИ ДокументРасчетовСКонтрагентом ССЫЛКА Документ.АктОбОказанииПроизводственныхУслуг
                    И ДокументРасчетовСКонтрагентом.Проведен) КАК ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстатки
ГДЕ
    ВЫБОР
            КОГДА ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстатки.СуммаВзаиморасчетовОстаток > 0
                ТОГДА ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстатки.СуммаВзаиморасчетовОстаток >= 1
            ИНАЧЕ ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстатки.СуммаВзаиморасчетовОстаток <= -1
        КОНЕЦ


Вываливает

Ошибка исполнения отчета
по причине:
Ошибка получения данных
по причине:
Ошибка создания набора данных "НаборДанных1"
по причине:
Ошибка при исполнении запроса набора данных
по причине:
Ошибка выполнения запроса
по причине:
Построенный запрос к СУБД использует слишком много таблиц. Допустимо не более 256.
Microsoft SQL Native Client: Too many table names in the query. The maximum allowable is 256.
HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, HRESULT=80040E14, SQLSrvr: SQLSTATE=42000, state=1, Severity=F, native=319, line=3793
SQLSrvr: SQLSTATE=42000, state=1, Severity=F, native=319, line=3791
SQLSrvr: SQLSTATE=42000, state=1, Severity=F, native=319, line=3789
SQLSrvr: SQLSTATE=42000, state=1, Severity=F, native=102, line=3787
SQLSrvr: SQLSTATE=42000, state=1, Severity=F, native=319, line=3765
SQLSrvr: SQLSTATE=42000, state=1, Severity=F, native=102, line=3763
SQLSrvr: SQLSTATE=42000, state=1, Severity=F, native=102, line=3742
SQLSrvr: SQLSTATE=42000, state=1, Severity=F, native=102, line=3720
SQLSrvr: SQLSTATE=42000, state=1, Severity=F, native=319, line=3698
SQLSrvr: SQLSTATE=42000, state=1, Severity=F, native=102, line=3696
SQLSrvr: SQLSTATE=42000, state=1, Severity=F, native=102, line=3675
SQLSrvr: SQLSTATE=42000, state=1, Severity=F, native=102, line=3653
SQLSrvr: SQLSTATE=42000, state=1, Severity=F, native=319, line=3631
SQLSrvr: SQLSTATE=42000, state=1, Severity=F, native=102, line=3629
SQLSrvr: SQLSTATE=42000, state=1, Severity=F, native=102, line=3608
SQLSrvr: SQLSTATE=42000, state=1, Severity=F, native=102, line=3586
SQLSrvr: SQLSTATE=42000, state=1, Severity=F, native=319, line=3564
SQLSrvr: SQLSTATE=42000, state=1, Severity=F, native=102, line=3562
SQLSrvr: SQLSTATE=42000, state=1, Severity=F, native=102, line=3541
SQLSrvr: SQLSTATE=42000, state=1, Severity=F, native=102, line=3519
SQLSrvr: SQLSTATE=42000, state=1, Severity=F, native=319, line=3497
SQLSrvr: SQLSTATE=42000, state=1, Severity=F, native=102, line=3495
SQLSrvr: SQLSTATE=42000, state=1, Severity=F, native=102, line=3474
SQLSrvr: SQLSTATE=42000, state=1, Severity=F, native=102, line=3452
SQLSrvr: SQLSTATE=42000, state=1, Severity=F, native=319, line=3430
SQLSrvr: SQLSTATE=42000, state=1, Severity=F, native=102, line=3428
SQLSrvr: SQLSTATE=42000, state=1, Severity=F, native=102, line=3407
SQLSrvr: SQLSTATE=42000, state=1, Severity=F, native=102, line=3385
SQLSrvr: SQLSTATE=42000, state=1, Severity=F, native=319, line=3363
SQLSrvr: SQLSTATE=42000, state=1, Severity=F, native=102, line=3361
SQLSrvr: SQLSTATE=42000, state=1, Severity=F, native=102, line=3340
SQLSrvr: SQLSTATE=42000, state=1, Severity=F, native=102, line=3318
SQLSrvr: SQLSTATE=42000, state=1, Severity=F, native=319, line=3296
SQLSrvr: SQLSTATE=42000, state=1, Severity=F, native=102, line=3294
SQLSrvr: SQLSTATE=42000, state=1, Severity=F, native=102, line=3273
SQLSrvr: SQLSTATE=42000, state=1, Severity=F, native=102, line=3251
SQLSrvr: SQLSTATE=42000, state=1, Severity=F, native=319, line=3229
SQLSrvr: SQLSTATE=42000, state=1, Severity=F, native=102, line=3227
SQLSrvr: SQLSTATE=42000, state=1, Severity=F, native=102, line=3206
SQLSrvr: SQLSTATE=42000, state=1, Severity=F, native=319, line=3184
SQLSrvr: SQLSTATE=42000, state=1, Severity=F, native=102, line=3182
SQLSrvr: SQLSTATE=42000, state=1, Severity=F, native=319, line=3160
SQLSrvr: SQLSTATE=42000, state=1, Severity=F, native=102, line=3158
SQLSrvr: SQLSTATE=42000, state=1, Severity=F, native=102, line=3137
SQLSrvr: SQLSTATE=42000, state=1, Severity=F, native=102, line=3115
SQLSrvr: SQLSTATE=42000, state=1, Severity=F, native=319, line=3093
SQLSrvr: SQLSTATE=42000, state=1, Severity=F, native=102, line=3091
SQLSrvr: SQLSTATE=42000, state=1, Severity=F, native=102, line=3070
SQLSrvr: SQLSTATE=42000, state=1, Severity=F, native=102, line=3048
SQLSrvr: SQLSTATE=42000, state=1, Severity=F, native=319, line=3026
SQLSrvr: SQLSTATE=42000, state=1, Severity=F, native=102, line=3024
SQLSrvr: SQLSTATE=42000, state=1, Severity=F, native=102, line=3003
SQLSrvr: SQLSTATE=42000, state=1, Severity=F, native=102, line=2981
SQLSrvr: SQLSTATE=42000, state=1, Severity=F, native=102, line=2957
SQLSrvr: SQLSTATE=42000, state=1, Severity=F, native=102, line=2933
SQLSrvr: SQLSTATE=42000, state=1, Severity=F, native=102, line=2909
SQLSrvr: SQLSTATE=42000, state=1, Severity=F, native=102, line=2886
SQLSrvr: SQLSTATE=42000, state=1, Severity=F, native=102, line=2805
SQLSrvr: SQLSTATE=42000, state=1, Severity=F, native=102, line=2781
SQLSrvr: SQLSTATE=42000, state=1, Severity=F, native=102, line=2757
SQLSrvr: SQLSTATE=42000, state=1, Severity=F, native=102, line=2731
SQLSrvr: SQLSTATE=42000, state=1, Severity=F, native=102, line=2705
SQLSrvr: SQLSTATE=42000, state=1, Severity=F, native=102, line=2681
SQLSrvr: SQLSTATE=42000, state=1, Severity=F, native=102, line=2638
SQLSrvr: SQLSTATE=42000, state=1, Severity=F, native=102, line=2571
SQLSrvr: SQLSTATE=42000, state=1, Severity=F, native=102, line=2544
SQLSrvr: SQLSTATE=42000, state=1, Severity=F, native=102, line=2521
SQLSrvr: SQLSTATE=42000, state=1, Severity=F, native=102, line=2495
SQLSrvr: SQLSTATE=42000, state=1, Severity=F, native=102, line=2468
SQLSrvr: SQLSTATE=42000, state=1, Severity=F, native=102, line=2442
SQLSrvr: SQLSTATE=42000, state=1, Severity=F, native=102, line=2416
SQLSrvr: SQLSTATE=42000, state=1, Severity=F, native=102, line=2392
SQLSrvr: SQLSTATE=42000, state=1, Severity=F, native=102, line=2325
SQLSrvr: SQLSTATE=42000, state=1, Severity=F, native=102, line=2298
SQLSrvr: SQLSTATE=42000, state=1, Severity=F, native=102, line=2274
SQLSrvr: SQLSTATE=42000, state=1, Severity=F, native=102, line=2250
SQLSrvr: SQLSTATE=42000, state=1, Severity=F, native=102, line=2224
SQLSrvr: SQLSTATE=42000, state=1, Severity=F, native=102, line=2202
SQLSrvr: SQLSTATE=42000, state=1, Severity=F, native=102, line=2178
SQLSrvr: SQLSTATE=42000, state=1, Severity=F, native=102, line=2153
SQLSrvr: SQLSTATE=42000, state=1, Severity=F, native=102, line=2129
SQLSrvr: SQLSTATE=42000, state=1, Severity=F, native=102, line=2107
SQLSrvr: SQLSTATE=42000, state=1, Severity=F, native=102, line=2081
SQLSrvr: SQLSTATE=42000, state=1, Severity=F, native=102, line=2057
SQLSrvr: SQLSTATE=42000, state=1, Severity=F, native=102, line=2035
SQLSrvr: SQLSTATE=42000, state=1, Severity=F, native=102, line=2008
SQLSrvr: SQLSTATE=42000, state=1, Severity=F, native=102, line=1986
SQLSrvr: SQLSTATE=42000, state=1, Severity=F, native=319, line=1960
SQLSrvr: SQLSTATE=42000, state=1, Severity=F, native=102, line=1947
SQLSrvr: SQLSTATE=42000, state=1, Severity=F, native=102, line=1947
SQLSrvr: SQLSTATE=42000, state=1, Severity=F, native=102, line=1945
SQLSrvr: SQLSTATE=42000, state=1, Severity=F, native=102, line=1923
SQLSrvr: SQLSTATE=42000, state=1, Severity=F, native=102, line=1901
SQLSrvr: SQLSTATE=42000, state=1, Severity=F, native=102, line=1879
SQLSrvr: SQLSTATE=42000, state=1, Severity=F, native=102, line=1858
SQLSrvr: SQLSTATE=42000, state=1, Severity=F, native=102, line=1779
SQLSrvr: SQLSTATE=42000, state=1, Severity=F, native=102, line=1757
SQLSrvr: SQLSTATE=42000, state=1, Severity=F, native=102, line=1735
SQLSrvr: SQLSTATE=42000, state=1, Severity=F, native=102, line=1714
SQLSrvr: SQLSTATE=42000, state=1, Severity=F, native=102, line=1693
SQLSrvr: SQLSTATE=42000, state=1, Severity=F, native=102, line=1671
SQLSrvr: SQLSTATE=42000, state=1, Severity=F, native=102, line=1630
SQLSrvr: SQLSTATE=42000, state=1, Severity=F, native=102, line=1565
SQLSrvr: SQLSTATE=42000, state=1, Severity=F, native=102, line=1543
SQLSrvr: SQLSTATE=42000, state=1, Severity=F, native=102, line=1522
SQLSrvr: SQLSTATE=42000, state=1, Severity=F, native=102, line=1501
SQLSrvr: SQLSTATE=42000, state=1, Severity=F, native=102, line=1479
SQLSrvr: SQLSTATE=42000, state=1, Severity=F, native=102, line=1458
SQLSrvr: SQLSTATE=42000, state=1, Severity=F, native=319, line=1437
SQLSrvr: SQLSTATE=42000, state=1, Severity=F, native=102, line=1431
SQLSrvr: SQLSTATE=42000, state=1, Severity=F, native=106, line=1427
1 Метранпаж
 
09.09.16
17:02
Или ставь ВЫРАЗИТЬ на составные типы или ставь скуль поновее
2 xafavute
 
09.09.16
17:03
Уж сколько раз твердили миру, что
3 xafavute
 
09.09.16
17:03
ДокументРасчетовСКонтрагентом ССЫЛКА Документ.РеализацияТоваровУслуг
не отменяет
ВЫРАЗИТЬ
4 piter3
 
09.09.16
17:07
типизация по моему основной недостаток 1с-в.
5 olo_lo1
 
09.09.16
17:09
А зачем через ВЫРАЗИТЬ, поясните в чем смысл ?
6 Метранпаж
 
09.09.16
17:10
(5) Чтобы брать нужный реквизит из конкретной таблицы, а не перебирать все возможные. Почитай профразработку (как отца и мат своих)
7 piter3
 
09.09.16
17:11
(5) Да посмотри план запросов и тогда волосы выпадут
8 olo_lo1
 
09.09.16
17:11
(6) смотри я из запроса вообще убрал условие
ДокументРасчетовСКонтрагентом ССЫЛКА Документ.РеализацияТоваровУслуг
                ИЛИ ДокументРасчетовСКонтрагентом ССЫЛКА Документ.АктОбОказанииПроизводственныхУслуг

и все равно та же ошибка
9 Метранпаж
 
09.09.16
17:13
(8) ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстатки.ДокументРасчетовСКонтрагентом.Сделка.Ответственный

Вот такие конструкции тебе и гадят. Посмотри на состав типов ДокументРасчетовСКонтрагентами и Сделка.
Посчитай, сколько таблиц нужно будет подцепить.
10 piter3
 
09.09.16
17:13
СУБД?Патчи? ну лень смотреть портянку
11 f_vadim
 
09.09.16
17:14
ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстатки.ДокументРасчетовСКонтрагентом.Сделка.Ответственный

каждая точечка - соединение с таблицей
12 olo_lo1
 
09.09.16
17:16
(9) и (11) Спасибо!!!! теперь ясно где копать
13 f_vadim
 
09.09.16
17:17
ВзаиморасчетыСКонтрагентамиПоДокументамРасчетовОстатки.ДокументРасчетовСКонтрагентом.Дата

ну и в таких местах "выразить" конечно нужно
14 piter3
 
09.09.16
17:18
(13) или соединение,если так уж действительно нужна дата
Программист всегда исправляет последнюю ошибку.