将参数传递给Map AX 2012中的方法

时间:2014-10-09 11:26:03

标签: axapta x++ dynamics-ax-2012-r3

如何在map中将参数传递给方法?

我正在尝试使用表中的动态值创建excel文件。在map中我有一些像BOM.BOMid这样的表中记录的引用,我想把它像这个函数的参数一样传递给str:

Map  map = new Map(Types::Integer, Types::Container);
MapEnumerator en = new MapEnumerator(map); 

map.insert(1, bom.ItemId);

xlsWorkSheet.cells().item(row,column).value(<value from map>);column++;

1 个答案:

答案 0 :(得分:4)

如果您使用map.insert(1, bom.ItemId);向地图添加元素,则可以按如下方式检索值:

Map map = new Map(Types::Integer, Types::String);
ItemId value;
...
if (map.exists(1))
{
    value = map.lookup(1);
}

您还可以按如下方式使用MapEnumerator

//int key;
...
MapEnumerator en = map.getEnumerator();
while (enum.moveNext())
{
    //key = enum.currentKey();
    value = enum.currentValue();
    ...
}