![]() |
![]() |
![]() |
|
Запрос не дружит с SQL | ☑ | ||
---|---|---|---|---|
0
Lusent
16.11.10
✎
15:05
|
Платформа 1С:Предприятие 8.1 (8.1.15.14)
Конфигурация: Бухгалтерия предприятия, редакция 1.6 (1.6.26.3) SQL Sever Enterprise Edition 8.00.2039 (SP4) На запрос: ВЫБРАТЬ ОперацииПоТехнологическомуИЛицевомуСчету.ЛицевойСчетМегаФон КАК ЛицевойСчетМегаФон, ОперацииПоТехнологическомуИЛицевомуСчету.ЭтоПриход, ОперацииПоТехнологическомуИЛицевомуСчету.ДатаОперации, ОперацииПоТехнологическомуИЛицевомуСчету.НаименованиеОперации, ОперацииПоТехнологическомуИЛицевомуСчету.УменьшениеБаланса КАК УменьшениеДолга, ОперацииПоТехнологическомуИЛицевомуСчету.НомерКвитанции, ОперацииПоТехнологическомуИЛицевомуСчету.Комментарий ПОМЕСТИТЬ ВТ_ОперацииПоТехнологическомуИЛицевомуСчету ИЗ &ОперацииПоТехнологическомуИЛицевомуСчету КАК ОперацииПоТехнологическомуИЛицевомуСчету ИНДЕКСИРОВАТЬ ПО ЛицевойСчетМегаФон ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ ОстаткиПоЛицевымСчетам.ЛицевойСчетМегаФон КАК ЛицевойСчетМегаФон, ОстаткиПоЛицевымСчетам.ДоговорКонтрагента КАК ДоговорКонтрагента, ОстаткиПоЛицевымСчетам.БанковскийСчет КАК БанковскийСчет ПОМЕСТИТЬ ВТ_ЛицевыеСчетаДоговораБанковскиеСчета ИЗ &ОстаткиПоЛицевымСчетам КАК ОстаткиПоЛицевымСчетам ГДЕ ОстаткиПоЛицевымСчетам.ЛицевойСчетМегаФон <> "" И ОстаткиПоЛицевымСчетам.ДоговорКонтрагента <> &ПустойДоговорКонтрагента И ОстаткиПоЛицевымСчетам.БанковскийСчет <> &ПустойБанковскийСчет ИНДЕКСИРОВАТЬ ПО ДоговорКонтрагента, БанковскийСчет ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ ОпрацииПоЛицевомуСчету.ЛицевойСчетМегаФон, ОпрацииПоЛицевомуСчету.ЭтоПриход, ОпрацииПоЛицевомуСчету.ДатаОперации КАК ДатаОперации, ОпрацииПоЛицевомуСчету.НаименованиеОперации, ОпрацииПоЛицевомуСчету.УвеличениеДолга, ОпрацииПоЛицевомуСчету.УменьшениеДолга, ОпрацииПоЛицевомуСчету.НомерКвитанции, ОпрацииПоЛицевомуСчету.Комментарий ИЗ (ВЫБРАТЬ РеализацияТоваровУслуг.Ссылка КАК НаименованиеОперации, РеализацияТоваровУслуг.Дата КАК ДатаОперации, ЛОЖЬ КАК ЭтоПриход, РеализацияТоваровУслуг.СуммаДокумента КАК УвеличениеДолга, NULL КАК УменьшениеДолга, ЛицевыеСчетаДоговораБанковскиеСчета.ЛицевойСчетМегаФон КАК ЛицевойСчетМегаФон, NULL КАК НомерКвитанции, ВЫРАЗИТЬ(РеализацияТоваровУслуг.Комментарий КАК СТРОКА(1000)) КАК Комментарий ИЗ Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг ВНУТРЕННЕЕ СОЕДИНЕНИЕ ВТ_ЛицевыеСчетаДоговораБанковскиеСчета КАК ЛицевыеСчетаДоговораБанковскиеСчета ПО РеализацияТоваровУслуг.ДоговорКонтрагента = ЛицевыеСчетаДоговораБанковскиеСчета.ДоговорКонтрагента ГДЕ РеализацияТоваровУслуг.Проведен И РеализацияТоваровУслуг.Организация = &Организация ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ ПлатежноеПоручениеИсходящее.Ссылка, ПлатежноеПоручениеИсходящее.Дата, ИСТИНА, NULL, ПлатежноеПоручениеИсходящее.СуммаДокумента, ЛицевыеСчетаДоговораБанковскиеСчета.ЛицевойСчетМегаФон, NULL, ВЫРАЗИТЬ(ПлатежноеПоручениеИсходящее.Комментарий КАК СТРОКА(1000)) ИЗ Документ.ПлатежноеПоручениеИсходящее КАК ПлатежноеПоручениеИсходящее ВНУТРЕННЕЕ СОЕДИНЕНИЕ ВТ_ЛицевыеСчетаДоговораБанковскиеСчета КАК ЛицевыеСчетаДоговораБанковскиеСчета ПО ПлатежноеПоручениеИсходящее.СчетКонтрагента = ЛицевыеСчетаДоговораБанковскиеСчета.БанковскийСчет ГДЕ ПлатежноеПоручениеИсходящее.Проведен И ПлатежноеПоручениеИсходящее.Организация = &Организация ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ ОперацииПоТехнологическомуИЛицевомуСчету.НаименованиеОперации, ОперацииПоТехнологическомуИЛицевомуСчету.ДатаОперации, (НЕ ОперацииПоТехнологическомуИЛицевомуСчету.ЭтоПриход), NULL, ОперацииПоТехнологическомуИЛицевомуСчету.УменьшениеДолга, ОперацииПоТехнологическомуИЛицевомуСчету.ЛицевойСчетМегаФон, ОперацииПоТехнологическомуИЛицевомуСчету.НомерКвитанции, ОперацииПоТехнологическомуИЛицевомуСчету.Комментарий ИЗ ВТ_ОперацииПоТехнологическомуИЛицевомуСчету КАК ОперацииПоТехнологическомуИЛицевомуСчету ГДЕ ОперацииПоТехнологическомуИЛицевомуСчету.ЛицевойСчетМегаФон <> "" ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ КорректировкаДолга.Ссылка, КорректировкаДолга.Дата, ЛОЖЬ, КорректировкаДолга.СуммаДтЗадолженности, NULL, ЛицевыеСчетаДоговораБанковскиеСчета.ЛицевойСчетМегаФон, NULL, ВЫРАЗИТЬ(КорректировкаДолга.Комментарий КАК СТРОКА(1000)) ИЗ Документ.КорректировкаДолга КАК КорректировкаДолга ВНУТРЕННЕЕ СОЕДИНЕНИЕ ВТ_ЛицевыеСчетаДоговораБанковскиеСчета КАК ЛицевыеСчетаДоговораБанковскиеСчета ПО (КорректировкаДолга.Комментарий ПОДОБНО "Лицевой счет " + ЛицевыеСчетаДоговораБанковскиеСчета.ЛицевойСчетМегаФон + "%")) КАК ОпрацииПоЛицевомуСчету УПОРЯДОЧИТЬ ПО ДатаОперации Получаю завершение работы системы: Ошибка СУБД: Microsoft OLE DB Provider for SQL Server: Intra-query parallelism caused your server command (process ID #59) to deadlock/ Return the query without intra-query parallelism by using the query hint option (maxdop 1). HRESULT=80040E14, SQLSrvr: Error state=7F, Severity=D, native=8650, line=1. |
|||
1
Lusent
16.11.10
✎
15:08
|
Под администратором ОС работает, а под обычным пользователем нет. При чем к ошибке приводит добавление четвертого объединения во вложенном запросе.
В чем проблема не могу понять. |
|||
2
МихаилМ
16.11.10
✎
15:17
|
Вам перевести, что написано в сообщении об ошибке
или воспользуетесь поиском ? |
|||
3
Lusent
16.11.10
✎
15:21
|
Что написано в сообщении я понимаю. Но как я установлю эту опцию "maxdop" в значение 1? Да еще и в 1С.
|
|||
4
Жан Пердежон
16.11.10
✎
15:24
|
(0) баян, в настройках сервака запрети ему параллелить запросы
|
|||
5
szhukov
16.11.10
✎
15:25
|
||||
6
МихаилМ
16.11.10
✎
15:50
|
(3)
ну не делайте палалельного (4 го) запроса вынесите его отдельно. те еще одну временную таблицу. |
|||
7
Lusent
16.11.10
✎
16:18
|
Запретил распараллеливание выполнения запросов - все работает. Вынес выполнение 4-ого объединения из вложенного запроса в виртуальную таблицу - тоже все работает (при разрешенном распараллеливание). Решил оставить второй вариант решения проблемы. Всем спасибо.
|
|||
8
Lusent
16.11.10
✎
16:20
|
Но почему работало под администратором и не работало под простым пользователем так и не понял...
|
|||
9
Жан Пердежон
16.11.10
✎
17:54
|
(8) у меня подобная ошибка возникала на совсем примитивном запросе (то ли реквизиты документа выбирались по ссылке, то ли реквизиты контрагента)
|
|||
10
igork1966
16.11.10
✎
17:56
|
(8) Возможно есть РЛС
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |