zoukankan      html  css  js  c++  java
  • Dynamic 365 中创建编码规则

     

    Dynamic 365中创建编码规则与Dynamic Ax 2012 基本一致。以下几个步骤,就当温习一下吧。

    1.创建扩展类型,将此字段添加到需要创建编码的表中。

    2.在对应添加编码模块下的编码类中添加LoadModel,以下以库存管理模块为例:

    [ExtensionOf(classstr(NumberSeqModuleInventory))]//扩展库存管理编码类
    final class  NumberSeqModuleInventory_Extension
    {
        protected void loadModule()
        {
            NumberSeqDatatype datatype = NumberSeqDatatype::construct();

            next loadModule();

            datatype.parmDatatypeId(extendedTypeNum(TestAccount));//要加编码字段对应的扩展类型
            datatype.parmReferenceHelp(literalStr("测试账号"));//扩张类型标签
            datatype.parmWizardIsContinuous(false);
            datatype.parmWizardIsManual(NoYes::No);
            datatype.parmWizardFetchAheadQty(10);
            datatype.parmWizardIsChangeDownAllowed(NoYes::No);
            datatype.parmWizardIsChangeUpAllowed(NoYes::No);
            datatype.parmWizardHighest(999999);
            datatype.parmSortField(2006);
            datatype.addParameterType(NumberSeqParameterType::DataArea, true, false);
            this.create(datatype);
        }

    }

    3.生成编号逻辑(在对应模块下的参数表中新建静态方法)

    [ExtensionOf(tableStr(InventParameters))]//扩展库存表
    final class InventParameters_Extension
    {
        public server static NumberSequenceReference numTestAcount()
        {
            return NumberSeqReference::findReference(extendedTypeNum(TestAccount));
        }

    }

    4.在字段所在表调用生成编号规则(在需要生成的时候直接调用此方法即可,一般在表新建初始化时就调用了)

    表中调用方法:

      public void initValue()
        {
            NumberSeq  numberseq;
            super();

      //第三步可省略,将这句直接替换成:numberseq = NumberSeq::newGetNum(NumberSeqReference::findReference(extendedTypeNum(TestAccount)));
            numberseq = NumberSeq::newGetNum(InventParameters::numTestAcount());

            numberseq.used();
            this.SubtenancyAccount = numberseq.num();
        }

    5. 运行Job加载Model(D365中,Jobbunen给直接运行,需要添加到按钮,放在界面,以此调用)

    class LodNumberSeq
    {        
        public static void main(Args _args)
        {        
            NumberSeqApplicationModule::loadAll();
            info("Finished");
        }

    }

    6.在前台界面配置生成规则:

    路径:组织管理-编号规则,新建,选到对应模块和自己调价的名称进行自定义设置OK

  • 相关阅读:
    (转)重识new
    【洛谷习题】连续自然数和
    【AHOI2005】约数研究
    【NOIP2003】麦森数
    康托展开
    【洛谷习题】南蛮图腾
    【洛谷习题】吃奶酪
    【NOIP2002】字串变换
    哈希表
    【NOIP2013】货车运输
  • 原文地址:https://www.cnblogs.com/lingdanglfw/p/15208818.html
Copyright © 2011-2022 走看看