程序调用自身的编程技巧称为递归( recursion),对于开发人员这个概念并不陌生,同样Microsoft Dynamics AX X++语言环境中也可以实现递归算法。
下面的例程演示了如何在X++语言环境中编写递归算法,演示代码的功能为递归遍历“销售和市场营销-设置-销售管理-销售单元/团队”窗体中的树形结构数据。
static void Recursion(Args _args)
{
void getSalesUnitIdChildren(smmSalesUnitId _smmSalesUnitId)
{
smmSalesUnit m_smmSalesUnit;
;
while select m_smmSalesUnit
where m_smmSalesUnit.ParentId == _smmSalesUnitId
{
setprefix(m_smmSalesUnit.ParentId);
info(m_smmSalesUnit.SalesUnitId);
getSalesUnitIdChildren(m_smmSalesUnit.SalesUnitId);
}
}
;
getSalesUnitIdChildren('');
}
转载请注明:ww12345678 的部落格 | AX Helper » 在Microsoft Dynamics AX中实现递归算法