Переключение на Главную Страницу Страницы: 1 ОтправитьПечать
Обычная тема Узнать имя ИБ (число прочтений - 2016 )
Утюг
Junior Member
**
Отсутствует



Сообщений: 56
Местоположение: Ростов-на-Дону
Зарегистрирован: 25. Июля 2006
Пол: Мужской
Узнать имя ИБ
16. Февраля 2010 :: 07:20
Печать  
Извините, туплю. Как узнать имя ИБ, как оно прописано в списке выбора баз, находясь в этой базе?
  
Наверх
 
IP записан
 
Eprst
God Member
*****
Отсутствует



Сообщений: 3397
Зарегистрирован: 08. Октября 2007
Re: Узнать имя ИБ
Ответ #1 - 16. Февраля 2010 :: 07:27
Печать  
Найти в реестре по каталогу ИБ
  
Наверх
 
IP записан
 
Утюг
Junior Member
**
Отсутствует



Сообщений: 56
Местоположение: Ростов-на-Дону
Зарегистрирован: 25. Июля 2006
Пол: Мужской
Re: Узнать имя ИБ
Ответ #2 - 16. Февраля 2010 :: 07:33
Печать  
Гениально. Блин, не подумал об этом. Спасибо.
  
Наверх
 
IP записан
 
Eprst
God Member
*****
Отсутствует



Сообщений: 3397
Зарегистрирован: 08. Октября 2007
Re: Узнать имя ИБ
Ответ #3 - 16. Февраля 2010 :: 07:39
Печать  
Раньше еще вк была - Accel.dll ... в ней было реализовано получение спискаИБ
  
Наверх
 
IP записан
 
Eprst
God Member
*****
Отсутствует



Сообщений: 3397
Зарегистрирован: 08. Октября 2007
Re: Узнать имя ИБ
Ответ #4 - 16. Февраля 2010 :: 07:47
Печать  
Так можешь еще получить все базы с реестра..и имя твоё:


Код
Выбрать все
Процедура Сформировать()

	сз = СоздатьОбъект("СписокЗначений");
	Попытка
		scriptCtrl=СоздатьОбъект("MSScriptControl.ScriptControl");
		scriptCtrl.Language="vbscript";
		scriptCtrl.AddCode("
		|Function Get1CV77Titles()
		|	const HKEY_CURRENT_USER = &H80000001
		|	Set egProv"")
		|	strKeyPath = ""Software\1C\1Cv7\7.7\Titles""
		|	oReg.EnumValues HKEY_CURRENT_USER, strKeyPath, arrValues
		|	strInfo=vbNullString
		|	For i = LBound(arrValues) To UBound(arrValues)
		|		call oReg.GetStringValue(HKEY_CURRENT_USER,strKeyPath,arrValues(i),Value)
		|		strInfo=strInfo & arrValues(i) & vbTab & Value & vbCrLf
		|	Next
		|	Get1CV77Titles = strInfo
		|End Function
		|");
		текст = СокрЛП(scriptCtrl.Run("Get1CV77Titles"));
	Исключение
		Сообщить("Ошибка: " + ОписаниеОшибки());
	КонецПопытки;

	Для инд = 1 по СтрКоличествоСтрок(текст) Цикл
		стрБазы = СтрПолучитьСтроку(Текст, инд);
		поз = Найти(стрБазы, СимволТабуляции);
		сз.ДобавитьЗначение(Лев(стрБазы, поз - 1), Прав(стрБазы, СтрДлина(стрБазы) - поз));
	КонецЦикла;
	сз.СортироватьПоПредставлению();
	имяБазы="";
	сз.ПолучитьЗначение(сз.НайтиЗначение(КаталогИБ()),имяБазы);
	Сообщить(имяБазы);

КонецПроцедуры
 

  
Наверх
 
IP записан
 
Утюг
Junior Member
**
Отсутствует



Сообщений: 56
Местоположение: Ростов-на-Дону
Зарегистрирован: 25. Июля 2006
Пол: Мужской
Re: Узнать имя ИБ
Ответ #5 - 16. Февраля 2010 :: 07:52
Печать  
Ну да, я примерно так и представлял, но за "разжевывание" все-равно спасибо.
  
Наверх
 
IP записан
 
Переключение на Главную Страницу Страницы: 1
ОтправитьПечать