Прошу помочь!!!
При входе в систему выдает : Ошибка открытия конфигурации Named Pipes Provider: Could not open a connection to SQL Server [53]
На ноуте уст Windows 8 (64).

Нравится

24 комментария

Проверьте корректность заполненных данных:

  • Название SQL сервера
  • Название БД

Так же убедитесь, что на Вашей машине отключен firewall, и антивирус не блокирует порт 1433 (по умолчанию для SQL сервера)

Дополнительные ссылки на эту же тему:

Проверили корректность заполненных данных. Все в норме. Порт 1433 также не блокируется. Может еще какие варианты возможны?

Выполните такую последовательность действий:

  • Запустите Terrasoft на сервере, для исключения неисправностей в сети
  • При появление проблемы с подключением, необходимо проверить настройки SQL сервера
  • При успешном подключение, необходимо проверить firewall на самом сервере
  • Запустите Terrasoft на другой машине и попытайтесь выполнить вход в приложение
  • При появлении проблемы, необходимо проверить настройки сети и настройки firewall
  • При успешном подключение, необходимо посмотреть какие установлены настройки на текущей машине и перенести их на проблемую машину
  • Установить на на проблемной машине SQL Management Studio или командную строку MS SQL и с помощью их выполнить подключение к БД

Ок. Это все проверим. Пока вот что заметил. Если запускать программу на сервере под терминальным доступом, то тоже ошибка, но если войти под другим пользователем, то все нормально работает и без проблем. Но под этим проблемным пользователем никак.

И еще. Остальные пользователи работают с других машин и под терминальным доступом без проблем.

Необходимо проверить на ограничения доступа проблемного пользователя

А не подскажете какие именно ограничения, т.к. права пользователя в ОС мы проверили сразу же. Там все ок.

Не смогу подсказать, т.к. это связно с администрированием системы и ни как не связано с Terrasoft.
Вам необходимо проверять связку: MS SQL + Проблемный пользовать.
Terrasoft только выдает сообщение, которое ему пришло в ответ

Понял. Спасибо. Будем все проверять.

Итак пользователь проверен по доступу. Но вот в чем вопрос: если попробовать зайти под проблемным пользователем с другого ПК (на котором другой пользователь работает с terrasoft без проблем).

Если под проблемным пользователем вошли в Terrasoft на другом пк и все работает, значит, проблема в окружении.
Если лицензии конкуренты, то проверьте настройки конфигурации на проблемной машине, они должны быть идентичны с теми, которые указаны на машине где генерировались лицензии

Извините не дописал. В смысле на другой машине проблемный пользователь тоже не работает.

"Прошко Алексей Анатольевич" написал:

Извините не дописал. В смысле на другой машине проблемный пользователь тоже не работает.


доменный пользователь что ли?

Нет. Обычный пользователь.

Может профиль пользователя в базе поврежден?

При повреждении профиля, была бы другая ошибка.
Запустите SQL Server Profiler и посмотрите на чем произойдет свал и попробуйте ее устранит.
Если возникнут сложности с запросами, можете обратиться в службу поддержки support@terrasoft.ru, для более оптимального и быстрого решения вопроса.

Большое спасибо. После проверки отпишусь о результатах.

"Прошко Алексей Анатольевич" написал:В смысле на другой машине проблемный пользователь тоже не работает

Вот это самое странное, так как ошибка в первом посте у вас 100% транспортного уровня. И связана она с конкретным пользователем Terrasoft ну никак не может быть.
Еще вариант включить для sql сервера в настройках протокол named pipes не предлагали?

А вообще наверное оптимально - удаленно суппорта пустите, все вам и настроят :)

Это тоже вариант. Как это лучше сделать и в какое время?

На этот вопрос смогут ответить в службе поддержки (support@terrasoft.ru)

Вообщем по совету техподдержки обновил бинарники и обновил заново лицензии. Все равно при входе проблемного пользователя выскакивает ошибка "Требуется объект..."

С Вами ведем общение в рамках обращения.
Это был только первый этап устранения проблемы.

Проблема решена.
Ее суть заключалась в том, что у Контакта пользователя не было заполнено поле [Часовой пояс]
Для выяснения выполняем загрузку окна wnd_Main или нет, была залогирована функция wnd_MainOnPrepare:

function wnd_MainOnPrepare(Window) {
	Log.Write(1, 'wnd_MainOnPrepare: begin');
/* MODULE WORKFLOW */
	DatasetTriggers.Load();
	SetServicesEvents();
/* ENDMODULE WORKFLOW */
	Log.Write(1, 'wnd_MainOnPrepare: CheckTimeZone');	
	CheckTimeZone();
	Log.Write(1, 'wnd_MainOnPrepare: ReadSystemSettings');				
	ReadSystemSettings();
	Initialize();
	InitializeUserSettings(true);
	InitializeCallClient();
	FillReferencesDictionary();
	CheckAnniversary();
	if (!CheckWorkspacesAllowed()) {
		return;
	}
 
	IntitializeTimer();
	ActivateHyperlink();
	InitializeJumpActions();
	Log.Write(1, 'wnd_MainOnPrepare: end');
}

После вывода сообщения: Log.Write(1, 'wnd_MainOnPrepare: CheckTimeZone'); мы не получили вывод сообщения Log.Write(1, 'wnd_MainOnPrepare: ReadSystemSettings');. Что и обозначило причину возникновения проблемы.
Функция CheckTimeZone() сервиса scr_Main, отвечают за установку текущему пользователю часовой пояс.

Решение:

function CheckTimeZone() {
	var UserTimeZone = Connector.CurrentUser.TimeZone;
	var SystemTimeZone = System.GetSystemTimeZone();
 
	var TimeZoneEnum = GetSingleItemByCode('enm_TimeZone');
	var EnmUserTimeZone = TimeZoneEnum.ItemsByCode(UserTimeZone);	
	if (IsEmptyValue(EnmUserTimeZone)) {
		UserTimeZone = '';
	}
 
	if (!UserTimeZone) {
		UserTimeZone = SystemTimeZone;
		Connector.CurrentUser.TimeZone = UserTimeZone;
	}
	if (UserTimeZone == SystemTimeZone) {
		return;
	}
	var Message = FormatStr(
		"Часовой пояс системы: %1\rЧасовой пояс текущего контакта: %2\rИспользовать часовой пояс системы?",
		GetTimeZoneFullCaption(SystemTimeZone), GetTimeZoneFullCaption(UserTimeZone));			
	if (ShowConfirmationDialog(Message) != wmrYes) {
		return;
	}	
	Connector.CurrentUser.TimeZone = SystemTimeZone;
	var UpdateQuery = GetSingleItemByCode('uq_ContactTimeZone');
	UpdateRecordField(UpdateQuery, Connector.CurrentUser.ContactID, 
		Array('TimeZone'), Array(SystemTimeZone));		
}
Показать все комментарии