编号规则 AX 2012

Bil*_*eed 1 ax x++ dynamics-ax-2012 dynamics-ax-2012-r2

我已经阅读了 msdn 文章,阅读了有关数字序列的白皮书,并制作了很多次数字序列。但在这种情况下我需要一些帮助。

场景是;我想通过 x++ 代码仅使用数字序列代码而不使用引用等来获取下一个序列号。

我尝试过以下(以及许多其他解决方案,但这是最接近的解决方案);

static void myTestJob(Args _args)
{
    NumberSeq  num;

    num = NumberSeq::newGetNumFromCode('SAO-Y');

     info(num.num())  ;
}
Run Code Online (Sandbox Code Playgroud)

它针对某些数字序列代码生成数字序列,但对于其他数字序列,它会抛出错误:

“编号规则不存在。”

我已经尝试了许多其他博客中提到的许多其他选项,并尝试探索 AX,但现在需要一些帮助。

PS 我不是使用 x++ 代码而是从前端(组织管理)创建数字序列。

Bil*_*eed 5

我可以通过使用以下内容来抑制异常;

num = NumberSeq::newGetNumFromCode(<<someNumberSequenceCode>>, NumberSeqScopeFactory::createDefaultScope(), true, true);

如,NumberSeq::newGetNumFromCode(,,,true)的第四个可选参数;表示不要因缺少引用而引发异常。

boolean _dontThrowOnMissingRefSetUp = false,

正如我之前所说,我已经从组织管理中创建了编号序列,而没有编写任何代码(EDT、类、参数表等),因此没有生成任何引用,我认为我因此而遇到了异常。