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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 18.08.2022, 13:13   #1  
Товарищ ♂uatr is offline
Товарищ ♂uatr
Участник
Аватар для Товарищ ♂uatr
MCBMSS
 
305 / 873 (30) +++++++
Регистрация: 23.10.2012
? Business Connector, Axapta Record to Map
Всем привет.
Карты соответствия прекрасно подходят для расположения некой функции в одном месте.
Потребителями данных могут быть и внешние системы.
В данном случае используется Business Connector.
Вопрос: как на стороне BC конвертировать Record в Map?
Попробовал изобрести "велосипед":
X++:
HRMVirtualNetworkMap = ax.CreateAxaptaRecord(8140);
HRMVirtualNetworkMap.ExecuteStmt("EmplTable c; select firstOnly * from c where c.EmplId; axTbl_0.data(c)");
Колёса оказались "квадратные" - при этом способе не присваивается нужный tableId.
При этом "axTbl_0 = c" - то же не вариант, "axTbl_0" это не ссылка на ссылку.
Старый 18.08.2022, 15:57   #2  
S.Kuskov is offline
S.Kuskov
Участник
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
 
3,440 / 1775 (66) ++++++++
Регистрация: 28.04.2007
Адрес: Калуга
.NET Business Connector for Dynamics AX и C#
Старый 19.08.2022, 09:47   #3  
Товарищ ♂uatr is offline
Товарищ ♂uatr
Участник
Аватар для Товарищ ♂uatr
MCBMSS
 
305 / 873 (30) +++++++
Регистрация: 23.10.2012
Не вижу в той теме хоть какого-либо упоминания по данному вопросу.
Старый 19.08.2022, 09:53   #4  
S.Kuskov is offline
S.Kuskov
Участник
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
 
3,440 / 1775 (66) ++++++++
Регистрация: 28.04.2007
Адрес: Калуга
Значит я не так понял ваш вопрос.
Цитата:
Сообщение от Товарищ ♂uatr Посмотреть сообщение
Вопрос: как на стороне BC конвертировать Record в Map?
Что вы называете стороной BC? Клиентский код который создаёт Business Connector или код аксапты x++, который выполняется при вызове методов Business Connector?
Старый 19.08.2022, 11:02   #5  
Товарищ ♂uatr is offline
Товарищ ♂uatr
Участник
Аватар для Товарищ ♂uatr
MCBMSS
 
305 / 873 (30) +++++++
Регистрация: 23.10.2012
Цитата:
Сообщение от S.Kuskov Посмотреть сообщение
Что вы называете стороной BC?
Внешнее ПО, код которого использует BC для взаимодействия с Аксаптой.
На стороне Аксапты можно добавить необходимые функции и вызвать их из BC - это вопросов не вызывает
Вопрос в конвертации Record в Map с сохранением значений системных полей (без сохранения приведенный мной способ вполне жинеспособен) без добавления каких-либо функций на стороне Аксапты.

Последний раз редактировалось Товарищ ♂uatr; 19.08.2022 в 11:28.
Старый 19.08.2022, 12:25   #6  
S.Kuskov is offline
S.Kuskov
Участник
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
 
3,440 / 1775 (66) ++++++++
Регистрация: 28.04.2007
Адрес: Калуга
Возможно в этом дело map tableId
Старый 19.08.2022, 17:29   #7  
Товарищ ♂uatr is offline
Товарищ ♂uatr
Участник
Аватар для Товарищ ♂uatr
MCBMSS
 
305 / 873 (30) +++++++
Регистрация: 23.10.2012
Дело точно в этом, но для BC этот вопрос не решает изложенным способом в той теме.
Старый 22.08.2022, 14:14   #8  
Товарищ ♂uatr is offline
Товарищ ♂uatr
Участник
Аватар для Товарищ ♂uatr
MCBMSS
 
305 / 873 (30) +++++++
Регистрация: 23.10.2012
Методом проб и ошибок решение было найдено.
Не смотря на то, что в карте соответствия функция не является статической, через BC к ней стоит обращаться именно таким способом.
X++:
...
ax = new Microsoft.Dynamics.BusinessConnectorNet.Axapta();
...
emplTable = ax.CreateAxaptaRecord(103); // таблица входящая в состав карты
emplTable.ExecuteStmt("...");
...
resultObj = ax.CallStaticRecordMethod('HRMVirtualNetworkMap', 'someFunction', emplTable);

Последний раз редактировалось Товарищ ♂uatr; 22.08.2022 в 14:39.
За это сообщение автора поблагодарили: S.Kuskov (5).
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
atinkerersnotebook: Creating Lifecycle Services Business Process Models Blog bot DAX Blogs 0 09.04.2014 15:11
Inside Dynamics AX 4.0: Working with the .NET Business Connector Blog bot DAX Blogs 0 04.10.2007 05:15
Inside Dynamics AX 4.0: Inside the Business Connector Blog bot DAX Blogs 0 04.10.2007 05:15
Types::Record в качестве ключа для класса Map Gad DAX: Программирование 12 11.07.2007 10:54
Что хранит map ? ссылки на Record или сам рекорд в упакованном виде ? Logger DAX: Программирование 9 15.10.2004 10:45

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

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

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