繁体   English   中英

编号顺序AX 2012

[英]Number sequence AX 2012

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

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

我尝试了以下方法(还有很多其他方法,但这是最近的解决方案);

static void myTestJob(Args _args)
{
    NumberSeq  num;

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

     info(num.num())  ;
}

它针对某些数字序列代码生成数字序列,但对于其他一些数字序列则会引发错误;

“数字序列不存在。”

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

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

我可以使用以下命令抑制异常;

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

作为,NumberSeq :: newGetNumFromCode(,,, true)的第四个可选参数; 说不要对丢失的引用抛出异常。

boolean _dontThrowOnMissingRefSetUp = false,

如前所述,我是在不编写任何代码(EDT,类,参数表等内容)的情况下从组织管理机构创建的编号序列,因此未生成任何引用,因此我认为自己正在获得例外。

请查看您设置的电话号码顺序。 我认为这与数字序列范围有关。

确保编号序列的范围在您呼叫的公司内有效。

这是可行的,但没有raice结果:凭证未生成。

工作方式:

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

当我的数字顺序-范围设置为共享时,我可以使用以下代码:

numSequence = NumberSeq::newGetNumFromCode(<<someNumberSequenceCode>>, NumberSeqScopeFactory::createDataAreaScope(curext()), true, true);

当我的“数字顺序-范围”设置为“ 公司”时,我可以使用以下代码:

numSequence = NumberSeq::newGetNumFromCode(<<someNumberSequenceCode>>);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM