| 
			
			 | 
		#1 | 
| 
			
			 Участник 
		
			
	 | 
	
	
	
		
		
			
			
			COM коннектор на 4-й аксапте
			 
			
			здравствуйте, 
		
		
		
		
		
		
		
	подскажите пожалуйста как правильно проинициализировать COM-коннектор в 4-й аксапте, при вызове метода ax.Logon('Admin','','',''); вылетает ошибка "Failed to initialize Business Connector". Подключиться пытаюсь из Delphi 2007. Полный код подключения: uses SysUtils, ComObj, ActiveX; var ax, ret: Variant; begin try CoInitialize(nil); ax:=CreateOleObject('AxaptaCOMConnector.Axapta3.1'); ax.Logon('Admin','','',''); ... Все примеры которые я смотрел в основном написаны для 3-й версии аксапты. Отзовитесь пожалуйста кто уже решал данную задачу.  | 
| 
	
 | 
| 
			
			 | 
		#2 | 
| 
			
			 Участник 
		
			
	 | 
	
	
	
		
		
			
			 
			
			Vot takoj primer est v oficialnom kurse MS (on, pravda na VB, no vpolne nagladny): 
		
		
		
		
		
		
		
	Dim company As String 
		Dim language As String Dim objectServer As String Dim configuration As String Dim axapta1 As New Axapta company = "dmo" language = "en-us" objectServer = "objectServerName" configuration = "configurationName" axapta1.Logon(company, language, objectServer, configuration) Mogu predpolozhit, chto vy ne mozhete zakonnectitsa iz-za togo chto ne ukazali ostalnye parametry - naprimer objectServer i configuration. Poprobujte peredat vse 4 parametra.  | 
| 
	
 | 
| 
			
			 | 
		#3 | 
| 
			
			 Участник 
		
			
	 | 
	
	
	
		
		
			
			 
			
			esli ne pomoget - poprobujte eshe zaloginitsia ot imeni Business Connector Proxy User: 
		
		
		
		
		
		
		
	Dim company As String 
		Dim language As String Dim objectServer As String Dim configuration As String Dim axapta1 As Axapta Dim bcProxyCredentials As New NetworkCredential("proxyUsername","proxyPassword","domain") Dim username As String Dim domain As String company = "dmo" language = "en-us" objectServer = "objectServerName" configuration = "configurationName" username = "proxyUsername" domain = "domain" axapta1.LogonAs(username, domain, bcProxyCredentials, company, language, objectServer, configuration)  | 
| 
	
 | 
| 
			
			 | 
		#4 | 
| 
			
			 Участник 
		
			
	 | 
	
	
	
		
		
		
		 
			
			да всё оказалось гораздо проще, сработала вот какая конструкция 
		
		
		
		
		
		
		
	... uses SysUtils, ComObj, ActiveX; var ax, ret: Variant; begin try CoInitialize(nil); ax:=CreateOleObject('AxaptaCOMConnector.Axapta3.1'); ax.Logon(); ... все параметры берутся из настроек клиента спасибо за ответ  | 
| 
	
 | 
| 
			
			 | 
		#5 | 
| 
			
			 Участник 
		
			
	 | 
	
	
	
		
		
			
			 Цитата: 
	
Такая же ошибка тоже в 4-ке. уже все логоны перепробовал. и все одно и тоже, запускал и на сервере и на клиенте. Может как то нужно зарегистрировать axcom.dll ? пробовал только вручную через regsvr32. непомгло  
		 | 
| 
	
 | 
| 
			
			 | 
		#6 | 
| 
			
			 Участник 
		
			
	 | 
	
	
	
		
		
		
		 
			
			Поищите на msdn примеры на C#, там все толково сделано.
		 
		
		
		
		
		
		
			
				__________________ 
		
		
		
		
	http://www.axdevposts.blogspot.com Пришел, уведел.... отойди, дай другому увидеть!  | 
| 
	
 | 
| 
			
			 | 
		#7 | 
| 
			
			 Участник 
		
			
	 | 
	
	
	
		
		
		
		 
			
			искал. там только на .Net коннектор. 
		
		
		
		
		
		
		
	но я думаю дело даже не в том как я напишу логон. видимо как то нужно зарегистрировать или права дать.  | 
| 
	
 | 
| 
			
			 | 
		#8 | 
| 
			
			 Участник 
		
			
	 | 
	
	
	
		
		
		
		 
			
			Проблема все-таки видимо в том, как вызывается ax.Logon(...) 
		
		
		
		
		
		
			Цитата: 
	
		
			Developers Help  
IAxapta::Logon Method HRESULT Logon ( [in, optional] VARIANT user, [in, optional] VARIANT serverManager, [in, optional] VARIANT objectServer, [in, optional] VARIANT configuration, ) IAxapta3 :: LogonAs Method HRESULT LogonAs( [in] VARIANT userName, [in] VARIANT domain, [in, optional] VARIANT bcProxyUserName, [in, optional] VARIANT bcProxyDomain, [in, optional] VARIANT bcProxyPassword, [in, optional] VARIANT company, [in, optional] VARIANT language, [in, optional] VARIANT objectServer, [in, optional] VARIANT configuration ) И по всей видимости, для DAX 4.0 Logon выглядит следующим образом (содержит просто 4 последних параметра фукции LogonAs(...)) Цитата: 
	HRESULT Logon( [in, optional] VARIANT company, [in, optional] VARIANT language, [in, optional] VARIANT objectServer, [in, optional] VARIANT configuration ) Цитата: 
	
Если нужен вход под пользователем 'Admin', то нужно использовать функцию logonAs(...). P.S. К примеру, на AX_TAP3(образ диска от MS с установленной AX 4.0) установил Delphi 2007, после чего попытался запустить код Цитата: 
	
		
			... 
uses SysUtils, ComObj, ActiveX; var ax, ret: Variant; begin try CoInitialize(nil); ax:=CreateOleObject('AxaptaCOMConnector.Axapta3.1'); ax.Logon('Admin', '', '', ''); ... ax.Logon('Admin', '', '', '') на ax.Logon() - ошибка исчезла 
				__________________ 
		
		
		
		
	Sergey Nefedov  | 
| 
	
 | 
|
| За это сообщение автора поблагодарили: cherv (1). | |
| 
			
			 | 
		#9 | 
| 
			
			 Участник 
		
			
	 | 
	
	
	
		
		
			
			 
			
			Имеется job в Аксапте 4 к ней же пытаюсь подцепится комконнектором 
		
		
		
		
		
		
		
		
			X++: static void TestCom_v2(Args _args) { COM Axapta; COM axaptaCustTable; COM axaptafield; ; Axapta = new COM("AxaptaCOMConnector.Axapta3.1"); Axapta.logon(); axaptaCustTable = Axapta.CreateRecord("CustTable"); while (axaptaCustTable.found()) { axaptafield = axaptaCustTable.field("AccountNum"); info(axaptafield.bStr()); axaptaCustTable.next(); } Axapta.logoff(); Axapta.finalize(); Axapta = null; } Метод "logon" в COM-объекте класса "AxaptaCOMConnector.Axapta3.1" возвратил код ошибки 0x80041011 (<неизвестно>), который означает: The server is unavailable. Microsoft Dynamics will try to connect to other servers in your configuration. Кто сталкивался с такой ошибкой? перепробовал уже все logonы ничего не помогает. Не понимаю причем тут сервер недоступен. ![]() ******* Dron AKA andy: объединил темы. Прошу не дублировать и пользоваться поиском перед созданием новой темы. ******* Последний раз редактировалось Dron AKA andy; 05.08.2009 в 19:17. Причина: объединил темы  | 
| 
	
 | 
| 
			
			 | 
		#10 | 
| 
			
			 MCTS 
		
			
	 | 
	
	
	
		
		
		
		 
			
			logon() в свое время пробовал - ничего не получалось... 
		
		
		
		
		
		
		
	В итоге logonAs решил все проблемы - прописал полностью все параметры - только после этого получилось... А так тоже постоянно сыпалась ошибка The server is unavailable....  | 
| 
	
 | 
| 
			
			 | 
		#11 | 
| 
			
			 Участник 
		
			
	 | 
	
	
	
		
		
		
		 Цитата: 
	
		
			Сообщение от propeller
			 
 
			при выполнении logon() вылетает ошибка: Метод "logon" в COM-объекте класса "AxaptaCOMConnector.Axapta3.1" возвратил код ошибки 0x80041011 (<неизвестно>), который означает: The server is unavailable. Microsoft Dynamics will try to connect to other servers in your configuration. 
		
	Не понимаю причем тут сервер недоступен. ![]()  | 
| 
	
 | 
| 
			
			 | 
		#12 | 
| 
			
			 Участник 
		
			
	 | 
	
	
	
		
		
			
			 Цитата: 
	
Попробовал через логонAS все параметры внес. X++: Axapta.logonAs("ax", "office", "fw1", "k1", "en-us", "instance_axsvrt@AXSVRT:2712", "\\\\axapta\\axaptaconfig\\Axapta_4.0\\40New.axc"); Ошибка точно такая же! (правда не потянет 3 параметр, вроде как прокси сервер, но если не указываешь то выдает ошибку о том что не заполнен параметр.) Пользователь ax числится админом на сервере axsvrt. то есть с правами все нормально. P.S. в лицензионных условиях на COM Clients нет лицензий. но насколько я знаю по умолчанию бесплатно идет лицензия на одно соединение COM. Последний раз редактировалось propeller; 06.08.2009 в 14:41.  | 
| 
	
 | 
| 
			
			 | 
		#13 | 
| 
			
			 MCTS 
		
			
	 | 
	
	
	
		
		
		
		 Цитата: 
	
А по поводу числится админом - тут надо не админ, а смотреть в настройки Администрирование\Настройка\Контроль доступа\Business Connector Proxy Тут и прописывается пользователь из AD под которым можно будет ходить...  | 
| 
	
 | 
| 
			
			 | 
		#14 | 
| 
			
			 Участник 
		
			
	 | 
	
	
	
		
		
		
		 
			
			Вроде разобрался , дело в лицензии было.  
		
		
		
		
		
		
		
	Logon() проходит. Но теперь пытаюсь из 1с зайти через LogonAs(_userName, _domain, _bcProxyAccountUsername, _bcProxyAccountDomain, _bcProxyAccountPassword, _company, _language, _objectServer, _configuration); и не получается "Произошла исключительная ситуация (AxaptaCOMConnector.Axapta3.1):" интересно userName и bcProxyAccountUsername могут совпадать? пишу туда то что забито в Business Connector Proxy , у меня этот пользователь есть и в аксапте. configuration - ? имя конфигурации или файл. пробовал и так и так. всеравно ошибка. domain и bcProxyAccountDomain у меня тоже совпадают. objectServer писал и имя аоса и instancet@AOS  ort  всеравно не помогло.language - ru, пробовал en-us. никаких изменений. Ужасно мудренный коннектор))) в 3 Акс все было просто )  | 
| 
	
 | 
| 
			
			 | 
		#15 | 
| 
			
			 MCTS 
		
			
	 | 
	
	|
| 
	
 | 
| 
			
			 | 
		#16 | 
| 
			
			 Участник 
		
			
	 | 
	
	
	
		
		
			
			 | 
| 
	
 | 
| 
			
			 | 
		#17 | 
| 
			
			 MCTS 
		
			
	 | 
	
	
	
		
		
		
		 
			
			хм... Трудно сказать... 
		
		
		
		
		
		
		
	Знаю только одно что из 1Ски получилось увидеть только при следующих условиях: 
 Вот собственно те пункты, которые влияли на работу коннектора - из моих наблюдений!  | 
| 
	
 |