Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Неопознанная ошибка Microsoft OLE DB Provider for SQL Server  [new]
Mavr
Member

Откуда:
Сообщений: 41
В приложении (1С) делается запрос к сторонней БД на SQL сервере, с помощью ADO DB. Давно это работает и работало без проблем до недавнего времени. Последнюю неделю стала возникать неопознанная ошибка Microsoft OLE DB Provider for SQL Server. Причем возникает, через какое-то время пропадает, потом опять. Причем в процедуре делается почти подряд два таких запроса, они одинаковые по сути там просто во втором меняется маленько условие (разделы select from group by остаются те же), и ошибка возникает всегда на втором запросе. Вот только что ошибка возникала, запустил отладку поставил точку останова, и запрос выполнился без ошибки. Фигня какая-то. Не знаю на что грешить. Проблема возникает у всех пользователей и пропадает у всех как мне кажется одновременно (а запрос делается именно со стороны клиента а не со стороны сервера 1С).

Что можете посоветовать ?
3 апр 15, 08:21    [17467386]     Ответить | Цитировать Сообщить модератору
 Re: Неопознанная ошибка Microsoft OLE DB Provider for SQL Server  [new]
Winnipuh
Member [заблокирован]

Откуда: Київ
Сообщений: 10428
Елси вы приведете какие-то подробности, то может найдется кто-то, способный подсказать.
3 апр 15, 09:02    [17467501]     Ответить | Цитировать Сообщить модератору
 Re: Неопознанная ошибка Microsoft OLE DB Provider for SQL Server  [new]
Mavr
Member

Откуда:
Сообщений: 41
Какие именно подробности ?

SQL Server - 2008R2 with SP2 x64 работает под Win 2008 R2
Клиенты работают под Win7 Pro with SP1 x64 + последние обновления раскатываются WSUS'ом

У меня подозрение что какое-то обновление могло на клиентах или на сервере привести к такому поведению, но вроде последние виндовые были недели 2 назад, а проблема вот последние дня 3.

Что-то еще если нужно то могу сообщить.

Переписал этот блок на VBA, такое же поведение, т.е. от 1С это не зависит. Отсюда вывод либо на сервере SQL что-то стало приводить к такому поведению, либо на клиентах что-то в системе.
3 апр 15, 11:28    [17468323]     Ответить | Цитировать Сообщить модератору
 Re: Неопознанная ошибка Microsoft OLE DB Provider for SQL Server  [new]
Winnipuh
Member [заблокирован]

Откуда: Київ
Сообщений: 10428
что в логах ОС клиента и сервера, SQL server во время облома на клиенте?
3 апр 15, 11:31    [17468344]     Ответить | Цитировать Сообщить модератору
 Re: Неопознанная ошибка Microsoft OLE DB Provider for SQL Server  [new]
Mavr
Member

Откуда:
Сообщений: 41
В журналах тишина
3 апр 15, 12:47    [17468873]     Ответить | Цитировать Сообщить модератору
 Re: Неопознанная ошибка Microsoft OLE DB Provider for SQL Server  [new]
Mavr
Member

Откуда:
Сообщений: 41
Попробую еще копию базы сделать к которой запрос идет и проверить запрос на копии. Это Report база от Project Server, может как-то Project Server влияет на это.
3 апр 15, 12:49    [17468885]     Ответить | Цитировать Сообщить модератору
 Re: Неопознанная ошибка Microsoft OLE DB Provider for SQL Server  [new]
felix_ff
Member

Откуда: Moscow
Сообщений: 1726
Mavr
Попробую еще копию базы сделать к которой запрос идет и проверить запрос на копии. Это Report база от Project Server, может как-то Project Server влияет на это.


Привести код запроса ADO DB можете?
3 апр 15, 13:57    [17469323]     Ответить | Цитировать Сообщить модератору
 Re: Неопознанная ошибка Microsoft OLE DB Provider for SQL Server  [new]
Mavr
Member

Откуда:
Сообщений: 41
SELECT * FROM (SELECT
								P.ProjectUID, MAX(P.ProjectName) AS ProjectName, CAST(MAX(P.[элк_№ проекта]) AS Numeric(7,2))*1 AS ProjectNum,
								MAX(P.ProjectOwnerName) AS ProjectOwnerName, MAX(P.[элк_Руководитель направления]) AS ProjectSaler,
								MAX(P.[элк_Статус проекта]) AS ProjectStatus, MAX(P.[элк_Группа проекта]) AS ProjectGroup, 
  		                    	T.[элк_Вид работ] AS TypeWork, 
								R.ResourceUID, MAX(R.ResourceName) AS ResourceName, MAX(R.ResourceType) AS ResourceType,
								MAX(R.ResourceGroup) AS ResourceGroup, MAX(R.СДРес) AS СДРес, 
								SUM(ADay.AssignmentActualWork) AS AssignmentActualWork, 
  		                    	SUM(ADay.AssignmentActualWork * (CASE WHEN DATEPART(dw, ADay.TimeByDay) IN (6, 7) THEN 0 ELSE 1 END)) AS AssignmentActualWork_WorkDay, 
  		                    	SUM(ADay.AssignmentActualWork * (CASE WHEN DATEPART(dw, ADay.TimeByDay) IN (6, 7) THEN 1 ELSE 0 END)) AS AssignmentActualWork_SunDay, 
  		                    	SUM(ADay.AssignmentActualRegularWork) AS AssignmentActualRegularWork,
  		                    	SUM(ADay.AssignmentActualRegularWork * (CASE WHEN DATEPART(dw, ADay.TimeByDay) IN (6, 7) THEN 0 ELSE 1 END)) AS AssignmentActualRegularWork_WorkDay,
								SUM(ADay.AssignmentActualRegularWork * (CASE WHEN DATEPART(dw, ADay.TimeByDay) IN (6, 7) THEN 1 ELSE 0 END)) AS AssignmentActualRegularWork_SunDay,
								SUM(ADay.AssignmentActualOvertimeWork) AS AssignmentActualOvertimeWork,
								SUM(ADay.AssignmentActualOvertimeWork * (CASE WHEN DATEPART(dw, ADay.TimeByDay) IN (6, 7) THEN 0 ELSE 1 END)) AS AssignmentActualOvertimeWork_WorkDay,
								SUM(ADay.AssignmentActualOvertimeWork * (CASE WHEN DATEPART(dw, ADay.TimeByDay) IN (6, 7) THEN 1 ELSE 0 END)) AS AssignmentActualOvertimeWork_SunDay,
								SUM(ADay.AssignmentWork) AS AssignmentWork, 
  		                    	SUM(ADay.AssignmentWork * (CASE WHEN DATEPART(dw, ADay.TimeByDay) IN (6, 7) THEN 0 ELSE 1 END)) AS AssignmentWork_WorkDay, 
  		                    	SUM(ADay.AssignmentWork * (CASE WHEN DATEPART(dw, ADay.TimeByDay) IN (6, 7) THEN 1 ELSE 0 END)) AS AssignmentWork_SunDay, 
  		                    	SUM(ADay.AssignmentRegularWork) AS AssignmentRegularWork, 
  		                    	SUM(ADay.AssignmentRegularWork * (CASE WHEN DATEPART(dw, ADay.TimeByDay) IN (6, 7) THEN 0 ELSE 1 END)) AS AssignmentRegularWork_WorkDay, 
  		                    	SUM(ADay.AssignmentRegularWork * (CASE WHEN DATEPART(dw, ADay.TimeByDay) IN (6, 7) THEN 1 ELSE 0 END)) AS AssignmentRegularWork_SunDay, 
  		                    	SUM(ADay.AssignmentOvertimeWork) AS AssignmentOvertimeWork, 
  		                    	SUM(ADay.AssignmentOvertimeWork * (CASE WHEN DATEPART(dw, ADay.TimeByDay) IN (6, 7) THEN 0 ELSE 1 END)) AS AssignmentOvertimeWork_WorkDay, 
  		                    	SUM(ADay.AssignmentOvertimeWork * (CASE WHEN DATEPART(dw, ADay.TimeByDay) IN (6, 7) THEN 1 ELSE 0 END)) AS AssignmentOvertimeWork_SunDay, 
  		                    	SUM(ADay.AssignmentRemainingWork) AS AssignmentRemainingWork,
								SUM(ADay.AssignmentRemainingWork * (CASE WHEN DATEPART(dw, ADay.TimeByDay) IN (6, 7) THEN 0 ELSE 1 END)) AS AssignmentRemainingWork_WorkDay,
								SUM(ADay.AssignmentRemainingWork * (CASE WHEN DATEPART(dw, ADay.TimeByDay) IN (6, 7) THEN 1 ELSE 0 END)) AS AssignmentRemainingWork_SunDay,
								SUM(ADay.AssignmentRemainingRegularWork) AS AssignmentRemainingRegularWork, 
								SUM(ADay.AssignmentRemainingRegularWork * (CASE WHEN DATEPART(dw, ADay.TimeByDay) IN (6, 7) THEN 0 ELSE 1 END)) AS AssignmentRemainingRegularWork_WorkDay, 
								SUM(ADay.AssignmentRemainingRegularWork * (CASE WHEN DATEPART(dw, ADay.TimeByDay) IN (6, 7) THEN 1 ELSE 0 END)) AS AssignmentRemainingRegularWork_SunDay,
								SUM(ADay.AssignmentRemainingOvertimeWork) AS AssignmentRemainingOvertimeWork,
								SUM(ADay.AssignmentRemainingOvertimeWork * (CASE WHEN DATEPART(dw, ADay.TimeByDay) IN (6, 7) THEN 0 ELSE 1 END)) AS AssignmentRemainingOvertimeWork_WorkDay,
								SUM(ADay.AssignmentRemainingOvertimeWork * (CASE WHEN DATEPART(dw, ADay.TimeByDay) IN (6, 7) THEN 1 ELSE 0 END)) AS AssignmentRemainingOvertimeWork_SunDay, 
								SUM(ADay.AssignmentBaseline0Work) AS AssignmentBaseline0Work, 
								SUM(ADay.AssignmentBaseline0Work * (CASE WHEN DATEPART(dw, ADay.TimeByDay) IN (6, 7) THEN 0 ELSE 1 END)) AS AssignmentBaseline0Work_WorkDay, 
	  	       	             	SUM(ADay.AssignmentBaseline0Work * (CASE WHEN DATEPART(dw, ADay.TimeByDay) IN (6, 7) THEN 1 ELSE 0 END)) AS AssignmentBaseline0Work_SunDay, 
								SUM(ADay.AssignmentBaseline1Work) AS AssignmentBaseline1Work, 
  		       	             	SUM(ADay.AssignmentBaseline1Work * (CASE WHEN DATEPART(dw, ADay.TimeByDay) IN (6, 7) THEN 0 ELSE 1 END)) AS AssignmentBaseline1Work_WorkDay, 
  	   	    	             	SUM(ADay.AssignmentBaseline1Work * (CASE WHEN DATEPART(dw, ADay.TimeByDay) IN (6, 7) THEN 1 ELSE 0 END)) AS AssignmentBaseline1Work_SunDay, 
								SUM(ADay.AssignmentBaseline2Work) AS AssignmentBaseline2Work, 
  	   		                 	SUM(ADay.AssignmentBaseline2Work * (CASE WHEN DATEPART(dw, ADay.TimeByDay) IN (6, 7) THEN 0 ELSE 1 END)) AS AssignmentBaseline2Work_WorkDay, 
  	   	    	             	SUM(ADay.AssignmentBaseline2Work * (CASE WHEN DATEPART(dw, ADay.TimeByDay) IN (6, 7) THEN 1 ELSE 0 END)) AS AssignmentBaseline2Work_SunDay, 
								SUM(ADay.AssignmentBaseline3Work) AS AssignmentBaseline3Work, 
  	           		         	SUM(ADay.AssignmentBaseline3Work * (CASE WHEN DATEPART(dw, ADay.TimeByDay) IN (6, 7) THEN 0 ELSE 1 END)) AS AssignmentBaseline3Work_WorkDay, 
  	            	        	SUM(ADay.AssignmentBaseline3Work * (CASE WHEN DATEPART(dw, ADay.TimeByDay) IN (6, 7) THEN 1 ELSE 0 END)) AS AssignmentBaseline3Work_SunDay, 
								SUM(ADay.AssignmentBaseline4Work) AS AssignmentBaseline4Work, 
  	    	                	SUM(ADay.AssignmentBaseline4Work * (CASE WHEN DATEPART(dw, ADay.TimeByDay) IN (6, 7) THEN 0 ELSE 1 END)) AS AssignmentBaseline4Work_WorkDay, 
  	       		             	SUM(ADay.AssignmentBaseline4Work * (CASE WHEN DATEPART(dw, ADay.TimeByDay) IN (6, 7) THEN 1 ELSE 0 END)) AS AssignmentBaseline4Work_SunDay, 
								SUM(ADay.AssignmentBaseline5Work) AS AssignmentBaseline5Work, 
   	       	            	SUM(ADay.AssignmentBaseline5Work * (CASE WHEN DATEPART(dw, ADay.TimeByDay) IN (6, 7) THEN 0 ELSE 1 END)) AS AssignmentBaseline5Work_WorkDay, 
   	       	            	SUM(ADay.AssignmentBaseline5Work * (CASE WHEN DATEPART(dw, ADay.TimeByDay) IN (6, 7) THEN 1 ELSE 0 END)) AS AssignmentBaseline5Work_SunDay, 
								SUM(ADay.AssignmentBaseline6Work) AS AssignmentBaseline6Work, 
   	       	            	SUM(ADay.AssignmentBaseline6Work * (CASE WHEN DATEPART(dw, ADay.TimeByDay) IN (6, 7) THEN 0 ELSE 1 END)) AS AssignmentBaseline6Work_WorkDay, 
								SUM(ADay.AssignmentBaseline6Work * (CASE WHEN DATEPART(dw, ADay.TimeByDay) IN (6, 7) THEN 1 ELSE 0 END)) AS AssignmentBaseline6Work_SunDay, 
								SUM(ADay.AssignmentBaseline7Work) AS AssignmentBaseline7Work, 
   	       	            	SUM(ADay.AssignmentBaseline7Work * (CASE WHEN DATEPART(dw, ADay.TimeByDay) IN (6, 7) THEN 0 ELSE 1 END)) AS AssignmentBaseline7Work_WorkDay, 
								SUM(ADay.AssignmentBaseline7Work * (CASE WHEN DATEPART(dw, ADay.TimeByDay) IN (6, 7) THEN 1 ELSE 0 END)) AS AssignmentBaseline7Work_SunDay, 
								SUM(ADay.AssignmentBaseline8Work) AS AssignmentBaseline8Work, 
	      	                	SUM(ADay.AssignmentBaseline8Work * (CASE WHEN DATEPART(dw, ADay.TimeByDay) IN (6, 7) THEN 0 ELSE 1 END)) AS AssignmentBaseline8Work_WorkDay, 
  	    	                	SUM(ADay.AssignmentBaseline8Work * (CASE WHEN DATEPART(dw, ADay.TimeByDay) IN (6, 7) THEN 1 ELSE 0 END)) AS AssignmentBaseline8Work_SunDay, 
								SUM(ADay.AssignmentBaseline9Work) AS AssignmentBaseline9Work, 
  	    	                	SUM(ADay.AssignmentBaseline9Work * (CASE WHEN DATEPART(dw, ADay.TimeByDay) IN (6, 7) THEN 0 ELSE 1 END)) AS AssignmentBaseline9Work_WorkDay, 
  	    	                	SUM(ADay.AssignmentBaseline9Work * (CASE WHEN DATEPART(dw, ADay.TimeByDay) IN (6, 7) THEN 1 ELSE 0 END)) AS AssignmentBaseline9Work_SunDay, 
								SUM(ADay.AssignmentBaseline10Work) AS AssignmentBaseline10Work, 
  	    	                	SUM(ADay.AssignmentBaseline10Work * (CASE WHEN DATEPART(dw, ADay.TimeByDay) IN (6, 7) THEN 0 ELSE 1 END)) AS AssignmentBaseline10Work_WorkDay, 
	  	     	               	SUM(ADay.AssignmentBaseline10Work * (CASE WHEN DATEPART(dw, ADay.TimeByDay) IN (6, 7) THEN 1 ELSE 0 END)) AS AssignmentBaseline10Work_SunDay
							FROM         
								dbo.MSP_EpmAssignment_UserView AS A INNER JOIN
          		            	dbo.MSP_EpmProject_UserView AS P ON A.ProjectUID = P.ProjectUID INNER JOIN
       	   	 	           	dbo.MSP_EpmTask_UserView AS T ON A.TaskUID = T.TaskUID INNER JOIN
								dbo.MSP_EpmResource_UserView AS R ON A.ResourceUID = R.ResourceUID INNER JOIN
          	    	        	dbo.MSP_EpmAssignmentByDay_UserView AS ADay ON A.AssignmentUID = ADay.AssignmentUID
							WHERE
								(ISNUMERIC(P.[элк_№ проекта]) = 1) AND
								(ADay.TimeByDay BETWEEN CONVERT(DATETIME, '2010-12-31 23:59:59', 102) AND CONVERT(DATETIME, '2030-12-31 23:59:59', 102)) 
							GROUP BY 
								P.ProjectUID, R.ResourceUID, T.[элк_Вид работ]
							HAVING (SUM(ADay.AssignmentBaseline0Work) > 0) ) AS D       
 							WHERE (ProjectNum = 1428.00)
							ORDER BY 
								ProjectNum, ProjectUID, ResourceName, ResourceUID, TypeWork
3 апр 15, 14:34    [17469594]     Ответить | Цитировать Сообщить модератору
 Re: Неопознанная ошибка Microsoft OLE DB Provider for SQL Server  [new]
Winnipuh
Member [заблокирован]

Откуда: Київ
Сообщений: 10428
лучше бы не приводил
3 апр 15, 14:54    [17469727]     Ответить | Цитировать Сообщить модератору
 Re: Неопознанная ошибка Microsoft OLE DB Provider for SQL Server  [new]
Владислав Колосов
Member

Откуда:
Сообщений: 8494
Mavr,

если изменился язык подключения, то будет вылетать при попытке автоматического преобразования строки в дату.
3 апр 15, 14:56    [17469739]     Ответить | Цитировать Сообщить модератору
 Re: Неопознанная ошибка Microsoft OLE DB Provider for SQL Server  [new]
Владислав Колосов
Member

Откуда:
Сообщений: 8494
Сорри, невнимательно посмотрел.
3 апр 15, 14:57    [17469748]     Ответить | Цитировать Сообщить модератору
 Re: Неопознанная ошибка Microsoft OLE DB Provider for SQL Server  [new]
felix_ff
Member

Откуда: Moscow
Сообщений: 1726
Winnipuh
лучше бы не приводил

даааа


Mavr,
так а он вам код HRESULT выдает? дословно как выглядит сообщение об ошибке?
3 апр 15, 15:04    [17469815]     Ответить | Цитировать Сообщить модератору
 Re: Неопознанная ошибка Microsoft OLE DB Provider for SQL Server  [new]
felix_ff
Member

Откуда: Moscow
Сообщений: 1726
и еще в чем именно кардинальное различие первого запроса от второго? меняются какие поля в операторе SELECT
3 апр 15, 15:08    [17469854]     Ответить | Цитировать Сообщить модератору
 Re: Неопознанная ошибка Microsoft OLE DB Provider for SQL Server  [new]
Mavr
Member

Откуда:
Сообщений: 41
Нет, абсолютно все тоже самое меняется маленько условие вот здесь (по дате и в разделе WHERE и в HAVING поле другое):
WHERE
	(ISNUMERIC(P.[элк_№ проекта]) = 1) AND
	(ADay.TimeByDay BETWEEN CONVERT(DATETIME, '2015-03-01 00:00:00', 102) AND CONVERT(DATETIME, '2020-12-31 23:59:59', 102)) 
GROUP BY 
	P.ProjectUID, R.ResourceUID, T.[элк_Вид работ]
HAVING (SUM(ADay.AssignmentWork) > 0) ) AS D


В остальном все тоже самое.
Сделал копию БД что бы Project Server исключить. На копии тоже самое.
3 апр 15, 15:24    [17469992]     Ответить | Цитировать Сообщить модератору
 Re: Неопознанная ошибка Microsoft OLE DB Provider for SQL Server  [new]
felix_ff
Member

Откуда: Moscow
Сообщений: 1726
Mavr
Нет, абсолютно все тоже самое меняется маленько условие вот здесь (по дате и в разделе WHERE и в HAVING поле другое):
WHERE
	(ISNUMERIC(P.[элк_№ проекта]) = 1) AND
	(ADay.TimeByDay BETWEEN CONVERT(DATETIME, '2015-03-01 00:00:00', 102) AND CONVERT(DATETIME, '2020-12-31 23:59:59', 102)) 
GROUP BY 
	P.ProjectUID, R.ResourceUID, T.[элк_Вид работ]
HAVING (SUM(ADay.AssignmentWork) > 0) ) AS D


В остальном все тоже самое.
Сделал копию БД что бы Project Server исключить. На копии тоже самое.


Тип полей:
[MSP_EpmAssignmentByDay_UserView].[AssignmentBaseline0Work]
[MSP_EpmAssignmentByDay_UserView].[AssignmentWork]
[MSP_EpmAssignmentByDay_UserView].[TimeByDay]

какой?
3 апр 15, 15:42    [17470157]     Ответить | Цитировать Сообщить модератору
 Re: Неопознанная ошибка Microsoft OLE DB Provider for SQL Server  [new]
felix_ff
Member

Откуда: Moscow
Сообщений: 1726
и вы про HRESULT не уточнили.

по конструкции запроса для ADODB, используются отдельные экземпляры Command для этих двух запросов или исполняется одним экземпляром?
3 апр 15, 15:46    [17470196]     Ответить | Цитировать Сообщить модератору
 Re: Неопознанная ошибка Microsoft OLE DB Provider for SQL Server  [new]
Mavr
Member

Откуда:
Сообщений: 41
felix_ff,
Первые два - decimal(25, 6)
Последний - datetime
3 апр 15, 15:52    [17470252]     Ответить | Цитировать Сообщить модератору
 Re: Неопознанная ошибка Microsoft OLE DB Provider for SQL Server  [new]
Mavr
Member

Откуда:
Сообщений: 41
Mavr,

Запросы формируется в функции, которая вызывается с разными параметрами, от них и зависит это изменение условия:

В этой функции каждый раз делается следующее:
Функция GetDataFromProjectServer(парметры)

ТекстЗапроса = ПодготовитьТекстЗапроса(праметры)

Попытка
Data = Новый COMОбъект("ADODB.Recordset");
ADODBConnect = ConnectToProjectServer(Version);
Data.ActiveConnection = ADODBConnect;
Data.Open (ТекстЗапроса);
Data.ActiveConnection = Неопределено;
Исключение
Попытка
Data.Close();
ADODBConnect.Close();
Исключение

КонецПопытки;
Возврат False;
КонецПопытки;

.......... алгоритм обработки данных
Data.Close();
ADODBConnect.Close();
КонецФункции;
3 апр 15, 16:04    [17470364]     Ответить | Цитировать Сообщить модератору
 Re: Неопознанная ошибка Microsoft OLE DB Provider for SQL Server  [new]
felix_ff
Member

Откуда: Moscow
Сообщений: 1726
Mavr
felix_ff,
Первые два - decimal(25, 6)
Последний - datetime


ну по большей части грешить на SQL Server конечно можно, но я больше склоняюсь к версии что проблема в доступе к данным через ADO.
У вас версия MDAC какая?

И попробуйте прикрутить блоки Try Catch.
Нужно понимать источник ошибки.
Одновременно можно запустить трассировку наличия ошибок по классам: Exception, Excecution Warnings, Sort Warnings, User Error Message на SQL Server при выполении данных инструкций
3 апр 15, 16:09    [17470401]     Ответить | Цитировать Сообщить модератору
 Re: Неопознанная ошибка Microsoft OLE DB Provider for SQL Server  [new]
felix_ff
Member

Откуда: Moscow
Сообщений: 1726
Mavr
Mavr,

Запросы формируется в функции, которая вызывается с разными параметрами, от них и зависит это изменение условия:

В этой функции каждый раз делается следующее:
Функция GetDataFromProjectServer(парметры)

ТекстЗапроса = ПодготовитьТекстЗапроса(праметры)

Попытка
Data = Новый COMОбъект("ADODB.Recordset");
ADODBConnect = ConnectToProjectServer(Version);
Data.ActiveConnection = ADODBConnect;
Data.Open (ТекстЗапроса);
Data.ActiveConnection = Неопределено;
Исключение
Попытка
Data.Close();
ADODBConnect.Close();
Исключение

КонецПопытки;
Возврат False;
КонецПопытки;

.......... алгоритм обработки данных
Data.Close();
ADODBConnect.Close();
КонецФункции;


о да! обожаю синтаксис 1С >_<

попробуйте вкорячить обработку исключения:
Функция GetDataFromProjectServer(парметры)

     ТекстЗапроса = ПодготовитьТекстЗапроса(праметры)

	Попытка
		Data = Новый COMОбъект("ADODB.Recordset");
		ADODBConnect = ConnectToProjectServer(Version);
		Data.ActiveConnection = ADODBConnect;
	     Data.Open (ТекстЗапроса);
		Data.ActiveConnection = Неопределено;
	Исключение
	          Сообщить(ОписаниеОшибки());
               Инфо = ИнформацияОбОшибке();
               Сообщить("Описание='" + Инфо.Описание + "'");
               Сообщить("ИмяМодуля='" + Инфо.ИмяМодуля + "'");
		    Попытка
			      DВata.Close();
				 ADODBConnect.Close();
		    Исключение
		    КонецПопытки;
		Возврат False;
	КонецПопытки;

..........  алгоритм обработки данных
	Data.Close();
	ADODBConnect.Close();
КонецФункции;
3 апр 15, 16:14    [17470442]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить