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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 08.07.2005, 17:08   #1  
whoami is offline
whoami
Участник
 
30 / 10 (1) +
Регистрация: 07.07.2005
ошибка на logon comconnector'а
на строке
Axapta.Logon2 "MyUser", "MyPassword", , , , , "MyProfile"
возникает ошибка (см. атач) диспетчера ODBC а том, что связь с MS SQL сервером уже используется
может кто знает как лечить?
thx
Изображения
 
Старый 08.07.2005, 17:52   #2  
BVN is offline
BVN
Участник
 
88 / 13 (1) ++
Регистрация: 07.04.2005
Адрес: г. Королёв МО
А в настройках Business Connector зарегистрил как COM or DCOM or COM+, если не зарегистрить то может ругаться и так вы сказали.
>> (см. атач) диспетчера ODBC --? и где же
Старый 11.07.2005, 11:48   #3  
whoami is offline
whoami
Участник
 
30 / 10 (1) +
Регистрация: 07.07.2005
уточнение
Законектился...

теперь пишет ошибку

Run-time error '-2147213251 (8004203d)':
Ошибка времени выполнения. : Object Объект не имеет метода 'name'.

Трассировка стека:
\Classes\Object\name
\Classes\SysSetupFromRun\new - line 10
\Classes\ClassFactorv\formRunClassOnClient - line 5
Изображения
 
Старый 11.07.2005, 12:21   #4  
BVN is offline
BVN
Участник
 
88 / 13 (1) ++
Регистрация: 07.04.2005
Адрес: г. Королёв МО
Параметры в вызове поставь и должно быть тебе счастье , пример на *.vbs
Set Axapta = CreateObject("AxaptaCOMConnector.Axapta")
Можно так сделать
Axapta.Logon2 "admin","MY_PASSWOD","dat","ru","","DBFULL","test"
или
Axapta.Logon2 "admin","","dat","ru","","DBFULL","test"
можно и так
Axapta.Logon "admin","DBFULL","","test"
Старый 11.07.2005, 12:34   #5  
whoami is offline
whoami
Участник
 
30 / 10 (1) +
Регистрация: 07.07.2005
у меня уже коннектится нормально
при вызове функции

Axapta.CallStaticClassMethod "MyClass", "RunForm"

где RunForm - static метод класса, который отображает форму на экране
Старый 11.07.2005, 12:39   #6  
whoami is offline
whoami
Участник
 
30 / 10 (1) +
Регистрация: 07.07.2005
запущена аксапта (клиент) или не запущена, зарегистрирован или нет axapta business connector - все одну и ту же ошибку выдает (см. предыдущее сообщение)
Старый 11.07.2005, 12:57   #7  
sukhanchik is offline
sukhanchik
Administrator
Аватар для sukhanchik
MCBMSS
Злыдни
Лучший по профессии 2015
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
3,317 / 3547 (125) ++++++++++
Регистрация: 13.06.2004
Адрес: Москва
нельзя извне запустить форму Аксапты, даже скрытую. Остальное - все что хошь
Старый 11.07.2005, 13:05   #8  
whoami is offline
whoami
Участник
 
30 / 10 (1) +
Регистрация: 07.07.2005
т.е. нельзя сделать следующее:

на клиентской машине запущена аксапта и эксель
в экселе макрос через com connector вызывает static метод класса, который в аксапте отображает нужную форму

это можно сделать?
Старый 11.07.2005, 13:43   #9  
sukhanchik is offline
sukhanchik
Administrator
Аватар для sukhanchik
MCBMSS
Злыдни
Лучший по профессии 2015
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
3,317 / 3547 (125) ++++++++++
Регистрация: 13.06.2004
Адрес: Москва
1. Запущенные сессии Аксапты через COM и не через COM - разные (см Администрирование-Активные пользователи)
2. (Следствие) Запустить форму - как описано в задачке - нельзя. Единственное, что можно - поиграться с WinApi и нужное окно активизировать. Но для этого форма д.б. запущена
Старый 11.07.2005, 14:34   #10  
whoami is offline
whoami
Участник
 
30 / 10 (1) +
Регистрация: 07.07.2005
мне не обязательно чтобы окно с формой становилось активным
я сам могу переключится alt tab'ом
главное чтобы внутри аксапты запустилась нужная мне форма
Старый 11.07.2005, 14:38   #11  
whoami is offline
whoami
Участник
 
30 / 10 (1) +
Регистрация: 07.07.2005
понял. т.е. фактически сессии разные.
а как нить повлиять на уже запущенную сессию можно?
т.е. послать ей сигнал - запустить такую-то форму...
Старый 11.07.2005, 15:16   #12  
sukhanchik is offline
sukhanchik
Administrator
Аватар для sukhanchik
MCBMSS
Злыдни
Лучший по профессии 2015
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
3,317 / 3547 (125) ++++++++++
Регистрация: 13.06.2004
Адрес: Москва
Теоретически - наверное можно. Идея такова - при запуске аксапты запускается некий класс который сканирует некую табличку (табличка не должны кешироваться). Если в табличке изменилась запись - то класс запускает форму. Запись должна изменяться извне.

Но это изврат. Ибо во-первых, скажется на производительности, во-вторых трудоемкость сего исследования несопоставима с убеждением пользователя проделать сие самостоятельно (все-таки Аксапта - это система, а не среда разработки).

Стандартно, используя минимальные трудозатраты этого сделать нельзя.
Старый 11.07.2005, 15:42   #13  
whoami is offline
whoami
Участник
 
30 / 10 (1) +
Регистрация: 07.07.2005
а в аксапте есть что-то аналогичное unix'овому IPC (inter process communications - межпроцессное взаимодействие)
семафоры, очереди сообщений или еще что?
Старый 11.07.2005, 16:07   #14  
Антон Солдатов is offline
Антон Солдатов
Соучастник
Аватар для Антон Солдатов
 
386 / 27 (1) +++
Регистрация: 29.12.2002
Адрес: Новосибирск
Forms/Tutorial_Battleship - хороший пример реализации взаимодействия между сессиями.
Forms/Tutorial_Thread - пример того, как запустить фоновый процесс.
Classes/Application/startUpPost - инициализируйте запуск фонового процесса.

На производительность периодического фонового select-a(который, я так понял нужно запускать, только когда пользователь меняет фокус с клиентского приложения Axapta на 3-rd party) по маленькой индексированной табличке(число записей не превышает кол-во активных сессий) не снизит производительность системы.
Старый 11.07.2005, 16:12   #15  
sukhanchik is offline
sukhanchik
Administrator
Аватар для sukhanchik
MCBMSS
Злыдни
Лучший по профессии 2015
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
3,317 / 3547 (125) ++++++++++
Регистрация: 13.06.2004
Адрес: Москва
По большому счету нет. Есть класс \System Documentation\Classes\Thread, который позволяет запускать несколько ветвей. Но это внутри одной аксапты. Документации на него нет (или по крайней мере я не видел). И это появилось только в 3.0 - т.е. возможно сыроватое.
Поэтому проще сказать - что нет.
Старый 11.07.2005, 16:13   #16  
sukhanchik is offline
sukhanchik
Administrator
Аватар для sukhanchik
MCBMSS
Злыдни
Лучший по профессии 2015
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
3,317 / 3547 (125) ++++++++++
Регистрация: 13.06.2004
Адрес: Москва
уже опередили ... Ну значит я заблуждался
Старый 11.07.2005, 16:23   #17  
Антон Солдатов is offline
Антон Солдатов
Соучастник
Аватар для Антон Солдатов
 
386 / 27 (1) +++
Регистрация: 29.12.2002
Адрес: Новосибирск
в остутствии семафоров не заблуждались, в морском бое все взаимодействие через таблицу, как вы и говорили.

а про целесообразность - работа на день-два. зато для пользователя - "линки" в ячейках экселя к нужным формам(и даже записям). по-моему идея имеет право на жизнь.

правда если поьзователей много и у каждого COM клиенты - это дополнительные пользователи, что довольно дороговато. но это уже другой вопрос. это скорее делают для руководства.
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Ошибка (?) при печати приходного ордера в DAX 4.0 SP2 Ivanhoe DAX: Программирование 7 19.01.2021 14:13
Ошибка в формате числа. 36AC DAX: Программирование 7 19.10.2006 10:04
Ошибка: "Ошибка в суммы в валюте XXX. Необходимо округлить до '0.00'. Std DAX: Функционал 3 18.07.2006 11:22
Ошибка при сохранении поставщика Filip DAX: Функционал 19 24.02.2004 08:32
Русская локализация Axapta 3 ? SlavaK DAX: Администрирование 59 01.07.2003 22:38

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

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

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