AXForum  
Вернуться   AXForum > Microsoft Dynamics AX > DAX: Программирование
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 09.09.2008, 10:55   #1  
igorian is offline
igorian
Участник
 
59 / 12 (1) ++
Регистрация: 01.06.2004
AxaptaCOMConnector, Axapta4, метод Logon
Подскажите что ему нужно передать в параметре objectServer ?

AxaptaCOMConnector.Axapta3Class.Logon(Object company, Object language, Object objectServer, Object configuration)

При передаче пустой строки или Null Logon не проходит
Старый 09.09.2008, 12:26   #2  
Eldar9x is offline
Eldar9x
MCTS
Аватар для Eldar9x
Oracle
MCBMSS
 
1,064 / 166 (8) ++++++
Регистрация: 29.09.2006
Адрес: Казань
Пробовал как-то соединяться из самописного приложения на с++ - может поможет. Все работало и данные нормально выводились прямо на консоль. Вот кусок кода:
X++:
	cout << "Init Axapta..." << endl;
	CAxInterface axapta;

	if (!axapta.Create())
		return 0;

	cout << "Logon..." << endl;	
	if (!axapta.Logon(L"", L"", L"cl_ax40_sp02fp00_test@DELTA:27461", L"")){
		cout << "Logon error" << endl;
		return 0;					
	}
3-й параметр брал из файла настройки ярлыка запуска аксапты - то что в папке Axc лежит.

Последний раз редактировалось Eldar9x; 09.09.2008 в 18:21.
Старый 09.09.2008, 12:49   #3  
igorian is offline
igorian
Участник
 
59 / 12 (1) ++
Регистрация: 01.06.2004
Цитата:
3-й параметр брал из файла настройки ярлыка запуска аксапты - то что в папке Axc лежит
... поподробнее, откуда вы его взяли?

я собственно могу сделать логин из Visual Basic если опущу 3-й параметр

Set axapta = New AxaptaCOMConnector.Axapta3
axapta.Logon companyName, "", , configName - вот так работает

но у меня проблема, я хочу сделать вызов из кода С#, из IIS
Axapta = new AxaptaCOMConnector.Axapta3();
Axapta.Logon(companyName, "", "", configName); - не работет
Старый 09.09.2008, 12:58   #4  
Eldar9x is offline
Eldar9x
MCTS
Аватар для Eldar9x
Oracle
MCBMSS
 
1,064 / 166 (8) ++++++
Регистрация: 29.09.2006
Адрес: Казань
На сервере (там же, где приложение лежит) в папке Clients\Axc лежат файлы *.ini. У нас ax настроен таким образом, что запускается с ярлыков, которые находятся так же на сервере. Каждому ярлыку соответствует свой файл.
Хотя у вас может быть все по другому.
В любом случае, видимо этот параметр должен иметь вид <имя_приложения>@<сервер_приложения>:порт.

Ну вот, в c# тоже все работает:
X++:
try
            {
                Axapta3 axapta = new AxaptaCOMConnector.Axapta3();

                axapta.Logon("", "", "cl_ax40_sp02fp01_dev@DELTA:27461", "");

                MessageBox.Show("Succesful");
            }
            catch
            {
                MessageBox.Show("error");
            }

Последний раз редактировалось Eldar9x; 09.09.2008 в 18:21.
Старый 09.09.2008, 13:12   #5  
egorych is offline
egorych
Участник
Самостоятельные клиенты AX
Oracle
 
761 / 154 (7) ++++++
Регистрация: 09.11.2006
Адрес: Краснодарский край
Цитата:
Сообщение от igorian Посмотреть сообщение
...но у меня проблема, я хочу сделать вызов из кода С#, из IIS...
Я могу ошибаться, но вроде на C# не так просто вызов COM объектов делается? Коннектор от 3 .NET напрямую не поддерживет.
Старый 09.09.2008, 13:45   #6  
Eldar9x is offline
Eldar9x
MCTS
Аватар для Eldar9x
Oracle
MCBMSS
 
1,064 / 166 (8) ++++++
Регистрация: 29.09.2006
Адрес: Казань
Цитата:
Я могу ошибаться, но вроде на C# не так просто вызов COM объектов делается? Коннектор от 3 .NET напрямую не поддерживет.
так обращение идет к сборке, а не к COM объекту, и версия аксапты 4.
Старый 09.09.2008, 13:59   #7  
igorian is offline
igorian
Участник
 
59 / 12 (1) ++
Регистрация: 01.06.2004
Цитата:
cl_ax40_sp02fp01_dev
это вы откуда взяли - из конф. утилиты списали?
Старый 09.09.2008, 14:03   #8  
Eldar9x is offline
Eldar9x
MCTS
Аватар для Eldar9x
Oracle
MCBMSS
 
1,064 / 166 (8) ++++++
Регистрация: 29.09.2006
Адрес: Казань
это название приложения, запустите аксапту обычным образом, в которую хотите залогинится. В заголовке главного окна будет название приложения.
Старый 09.09.2008, 15:41   #9  
igorian is offline
igorian
Участник
 
59 / 12 (1) ++
Регистрация: 01.06.2004
Чего-то не работает... ((((((((
на всякий случай а
Цитата:
DELTA
это у вас что?
а где вы узнали что именно так нужно 3-й параметр формировать?
Старый 09.09.2008, 17:51   #10  
igorian is offline
igorian
Участник
 
59 / 12 (1) ++
Регистрация: 01.06.2004
вообще - может дело в чем-то другом? в настройках прав в IIS?
почему совершенно идентичный вызов из VB работает а из С# не работает.. ?
Старый 09.09.2008, 18:13   #11  
Eldar9x is offline
Eldar9x
MCTS
Аватар для Eldar9x
Oracle
MCBMSS
 
1,064 / 166 (8) ++++++
Регистрация: 29.09.2006
Адрес: Казань
Ну если, вы можете залогиниться обычным образом, то и через коннектор должно работать. Delta - имя сервера приложения (имя компьютера)
Порт, кстати, не тот. Нужен - 27461
Цитата:
а где вы узнали что именно так нужно 3-й параметр формировать?
посмотрел в *ini файле. Вы бы лучше код свой показали, как содиняетесь?

Последний раз редактировалось Eldar9x; 09.09.2008 в 18:22.
Старый 09.09.2008, 18:49   #12  
igorian is offline
igorian
Участник
 
59 / 12 (1) ++
Регистрация: 01.06.2004
Axapta = new AxaptaCOMConnector.Axapta3();
Axapta.Logon(companyName, language, objectServerName, configName);

собственно вот..
Старый 09.09.2008, 19:19   #13  
Eldar9x is offline
Eldar9x
MCTS
Аватар для Eldar9x
Oracle
MCBMSS
 
1,064 / 166 (8) ++++++
Регистрация: 29.09.2006
Адрес: Казань
ну так а значения параметров companyName, language, objectservername, configname чему равны?
Старый 10.09.2008, 10:59   #14  
igorian is offline
igorian
Участник
 
59 / 12 (1) ++
Регистрация: 01.06.2004
из бейсика получилось вызвать как вы написали 3-й параметр "приложение@сервер:порт"

а вот IIS такую ошибку пишет

System.Runtime.InteropServices.COMException (0x80041011): The server is unavailable. Microsoft Dynamics will try to connect to other servers in your configuration. at AxaptaCOMConnector.Axapta3Class.Logon(Object company, Object language, Object objectServer, Object configuration) at AxXMLService.isAuthorised(String username) in c:\Inetpub\wwwroot\AxXMLCargoConnector2\App_Code\AxXMLService.cs:line 96
Старый 10.09.2008, 11:10   #15  
Eldar9x is offline
Eldar9x
MCTS
Аватар для Eldar9x
Oracle
MCBMSS
 
1,064 / 166 (8) ++++++
Регистрация: 29.09.2006
Адрес: Казань
а IIS и приложение на одном сервере?
Старый 10.09.2008, 11:12   #16  
igorian is offline
igorian
Участник
 
59 / 12 (1) ++
Регистрация: 01.06.2004
на разных
Старый 10.09.2008, 12:12   #17  
Eldar9x is offline
Eldar9x
MCTS
Аватар для Eldar9x
Oracle
MCBMSS
 
1,064 / 166 (8) ++++++
Регистрация: 29.09.2006
Адрес: Казань
а проект - ASP.NET Web Service (c#)?
Старый 11.09.2008, 16:05   #18  
igorian is offline
igorian
Участник
 
59 / 12 (1) ++
Регистрация: 01.06.2004
Собственно, получилось, спасибо Eldar9x -
Помогло указание objectServer как вы сказали,
плюс настройка прав IIS потребовалась (Application Pool там есть такие)
Старый 16.09.2008, 15:28   #19  
Eldar9x is offline
Eldar9x
MCTS
Аватар для Eldar9x
Oracle
MCBMSS
 
1,064 / 166 (8) ++++++
Регистрация: 29.09.2006
Адрес: Казань
оказалось, что приложение не обязательно указывать, т.е.
cl_ax40_sp02fp01_dev@DELTA:27461
равносильно
blabla@DELTA:27461
или DELTA:27461, что есть наиболее правильный вариант,
причем @DELTA:27461 уже не пройдет.
Главное - IP и порт.

Последний раз редактировалось Eldar9x; 16.09.2008 в 15:33.
Теги
ax4.0

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Как вызвать метод для поля в FormDataSource? Maxim Gorbunov DAX: Программирование 3 08.05.2007 11:28
Дисплей метод таблицы который вызывается из ГРИДА 3oppo DAX: Программирование 10 23.05.2006 06:47
Как вызвать нужный метод класса? Pawlik DAX: Программирование 5 12.01.2006 15:47
display метод с параметром Андре DAX: Программирование 5 11.01.2006 19:04
Передача массива VARIANTов в Automation метод Maximin DAX: Программирование 0 09.10.2002 19:31

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 10:57.