Имя: Пароль:
1C
 
Из за чего возникает ошибка SQL HRESULT=80004005
0 Wins_1
 
15.10.07
09:57
Подскажете из за чего возникает ошибка:
Ошибка СУБД: Microsoft OLE DB Provider for SQL Server: Ошибка подключения HRESULT=80004005, SQLSTATE=08501, native=0.
Она возникает при выполнении мега запроса, ясно что надо запрос править, но из за каких конструкций запроса вылетает ошибка не совсем ясно. Да и хотелось бы понять из за чего она все-таки происходит.
Прочитал кучу всяких веток дельного ответа так и не нашел.
1С 8.0.9.32 + SQL2005, Ядро конечно старое, но и на 18-ом происходит тоже самое.
Помогите плс.
1 masky
 
15.10.07
10:07
берешь сикввельный  профайлер и смотришь, что да как
2 Ursus maritimus
 
15.10.07
10:12
На ноль делить нельзя
3 Wins_1
 
16.10.07
06:53
Простой запрос:
ВЫБРАТЬ
   Цены.Номенклатура КАК Номенклатура,
   Цены.Номенклатура.СтранаПроисхождения КАК СтранаПроисхождения,
   Цены.ХарактеристикаНоменклатуры КАК ХарактеристикаНоменклатуры,
   Цены.Номенклатура.Артикул КАК Артикул,
   Цены.Номенклатура.Код КАК КодТовара,
   Цены.Номенклатура.ЕдиницаХраненияОстатков КАК ЕдиницаИзмерения,
   МАКСИМУМ(Остатки.ДокументОприходования) КАК ДокументОприходования
ИЗ
   РегистрСведений.ЦеныНоменклатуры.СрезПоследних(&ДатаТек, ТипЦен = &ТЦ И Организация = &Орг) КАК Цены
       ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрНакопления.ПартииТоваровНаСкладах.ОстаткиИОбороты(, &ДатаТек, Регистратор, , ДокументОприходования ССЫЛКА Документ.ПоступлениеТоваровУслуг И ЦенаВРознице >= 0 И Склад В ИЕРАРХИИ (&Склад)) КАК Остатки
       ПО Цены.Номенклатура = Остатки.Номенклатура И Цены.ХарактеристикаНоменклатуры = Остатки.ХарактеристикаНоменклатуры

ГДЕ
   (Остатки.КоличествоПриход <> 0) И
   Остатки.Регистратор В(&Документы) И
   (Остатки.КоличествоКонечныйОстаток > 0)

СГРУППИРОВАТЬ ПО
   Цены.Номенклатура,
   Цены.Номенклатура.СтранаПроисхождения,
   Цены.ХарактеристикаНоменклатуры,
   Цены.Номенклатура.Артикул,
   Цены.Номенклатура.Код,
   Цены.Номенклатура.ЕдиницаХраненияОстатков
.
А вылетает с той же ошибкой, вот если убрать МАКСИМУМ(Остатки.ДокументОприходования) КАК ДокументОприходования
тогда работает. Вчем проблема ?
4 Ursus maritimus
 
16.10.07
07:00
А что по твоему должна возвращать функция МАКСИМУМ(Остатки.ДокументОприходования)???
5 Wins_1
 
16.10.07
07:13
При проведении по партиям количество списывается по документам оприходования(Поступления), т.е. например в реализации одна строка с количеством 10 может провесись по партиям 2-мя строками с разным количеством, например, 2 и 8 (2 поступления в одном кол-во 2 в другом 8 и более).
6 SnarkHunter
 
16.10.07
07:14
08S01 Communication link failure

Причина в потере связи сервера приложений и скл-сервера , у тебя сервер приложений и скуль на разных компах стоят?

ЗЫ. Помогает рестарт сервера 1С...
7 Wins_1
 
16.10.07
07:24
Все стоит на одном серваке, но сервар мощьный. А рестарт сделать нельзя, т.к. на нем работают и другие пользователи, сервак ргузят не сильно, но прерывать их работу крайне не желательно.
8 katrin
 
16.10.07
08:07
по мнению фирмы 1с сервера это не те железяки которые не требуют перезагрузки... сталкивались, делали запрос на горячую линию рекомендации: переодически перезагружать сервера в период неактивности пользователей...
9 Wins_1
 
16.10.07
08:14
А всетаки в чем суть проблемы? И может кто подсказать рекоминдации по чтоб 1С так не вываливалась?
10 alexsy
 
16.10.07
09:41
(3)(4)+1 Какой смысл в МАКСИМУМ(Остатки.ДокументОприходования)?
11 Wins_1
 
16.10.07
10:02
Потаму что мне не нужна детализация по ДокументамОприходования, а необходимо получить последний по которому приходил товар.
12 alexsy
 
16.10.07
12:56
(11) а будет взят "последний" по уникальному идетификатору, и совсем не факт что это будет последний по дате
13 Wins_1
 
16.10.07
13:05
Скорее всего да, но есть сомнения.
Всетаки хотелось бы понять в чем суть проблемы?
14 masky
 
16.10.07
13:28
ты таки посмотришь в профайлер или нет?
15 Wins_1
 
16.10.07
13:55
Заметил такую особенность если в ПартииТоваровНаСкладах.ОстаткиИОбороты(, &ДатаТек, ...) указать период, т.е. ПартииТоваровНаСкладах.ОстаткиИОбороты(&ДатаНач, &ДатаТек, ...) , то если сразу указать большой период, то запрос валится, а есть сначала указать дней 5, а затем увеличивать и в последнем случае выполнить первоначальный запрос, то он выполняется а спустя некоторое время опять валится.
16 Wins_1
 
19.10.07
10:18
Нашел решение проблемы, на 18-ом ядре все заработало.
Кто-нибудь может подсказать все-таки из за чего вылетала ошибка?