|
|
#1 |
|
Участник
|
Передать контейнер в job через COM
Здравствуйте! собственно проблема в заголовке.
Пытаюсь сделать так, но передача контейнера как параметра не проходит. в самом job args параметр убрал и поставил на вход контейнер. Код: Dim Axapta As Variant
Dim Container As Variant
Dim Args As Variant
Set Axapta = CreateObject("AxaptaCOMConnector.Axapta")
Axapta.Logon "MyUser", "", "", "MyConfiguration"
Set Container = Axapta.CreateContainer()
Container.Append "Element1", 2, 3.3
Axapta.CallJob "MyOtherJob", Container
Axapta.logoffКод: Set Args = Axapta.CreateObject("args")
‘ call "MyOtherJob" with args object
Axapta.CallJob "MyOtherJob", ArgsЗаранее спасибо. |
|
|
|
|
#2 |
|
Administrator
|
А Вы уверены что контейнер в VB и контейнер в Axapta - есть одно и тоже? Тут AndyD как-то даже расписывал структуру поля типа контейнер в Axapta.
Я бы советовал передавать аргументы через строку
__________________
Возможно сделать все. Вопрос времени |
|
|
|
|
#3 |
|
Microsoft Dynamics
|
Никак. Через объект класса Args в качестве параметра можно передать либо: а) объект (args.parmObject), б) значение перечислимого типа (args.parmEnum), в) строку (args.parm)
В Вашем случае, предпочтительнее последний вариант. |
|
|
|
|
#4 |
|
Участник
|
Цитата:
А Вы уверены что контейнер в VB и контейнер в Axapta - есть одно и тоже?
такое. но в хелпе написано:Цитата:
Creates a COM object of the IAxaptaContainer type. The Microsoft Axapta container corresponds to the container known from the Axapta X++ language.
Цитата:
Я бы советовал передавать аргументы через строку
|
|
|
|
|
#5 |
|
Участник
|
Можно попробовать черезКласс / SysAnyType и parmObject
|
|
|
|
|
#6 |
|
Участник
|
Сделал так:
1. Создал класс в аксапте qqq_CreateSale,
2. Код: Dim ax As Axapta
Dim salestable As Variant
Dim Container As IAxaptaContainer
Set ax = CreateObject("AxaptaCOMConnector.Axapta")
ax.Logon "myuser", "", "", "Myconfiguration"
Set Container = ax.CreateContainer
Container.Append "Element1", 2, 3.3
Set qqq_CreateSales = ax.CreateObject("qqq_CreateSales", Container)
qqq_CreateSales.Call "CreateSale"
ax.Logoff
qqq_CreateSales = nothing
ax = nothing |
|
|