自动编号字段

问题描述 投票:-1回答:1

我想在帐户实体上创建自动编号插件。如果帐户名称= Morgan Stanely然后帐号= MORG00001,如果帐户名称=摩根汽车,则帐号= MORG00002,如果帐户名称为ABC Tech,则帐号应为ABCT00001。

帐号接受帐户名的前4个字符并附加4个零,如果已存在具有相同4个字符的帐户名,则将其递增1。

方法名称:newaccounname()

我写的代码:

    public void updaterecord(EntityCollection account)
    {
        int totalrecords = account.Entities.Count;
        string[] name = new string[totalrecords];
        string append = "0000";
        string value = "1";
        int number = int.Parse(value);

        string[] accountnumber = new string[totalrecords];
        for (int i = 0; i < totalrecords; i++)
        {
            ////check the accountname and take first 4 characters from it.

            name[i] = account.Entities[i].Attributes["name"].ToString();
            string partialstring = name[i].Substring(0, 4);
            if (entity.Attributes.Contains("accountnumber") == false)
            {

                string anumber = string.Concat(partialstring, append, value);
                entity.Attributes.Add("accountnumber", anumber.ToString());
            }
            else if (entity.Attributes.Contains("accountnumber") == true)
            {
                newaccountname(account);
            }

        }
    }
    public void newaccountname(EntityCollection account)
    {
        int totalrecords = account.Entities.Count;
        string[] name = new string[totalrecords];
        string[] accountnumber = new string[totalrecords];
        for (int i = 0; i < totalrecords; i++)
        {
            string accountNumber = entity.GetAttributeValue<string>("accountnumber");
            accountnumber[i] = account.Entities[i].Attributes["accountnumber"].ToString();
            name[i] = account.Entities[i].Attributes["name"].ToString();
            string paccountnumber = accountnumber[i].Substring(0, 4);
            if(name[i] == paccountnumber)
            {
                //
            }
        }


    }
}
c# plugins dynamics-crm dynamics-crm-online
1个回答
1
投票

好吧,我不打算为你解决测验:),但这里有一些提示

  • 您需要先从名称中删除所有空格
  • 你需要比较你所拥有的名字中的4个字符(删除空格后),只需要列表中每个字符的4个字符,这样当你将“MORG00001”和“摩根电机”进行比较时,你要比较“MORG”和“MORG”在这种情况下,你给了你真实的
  • 计算你有多少“MORG”和新帐户[First4Letters] [0000] [Count + 1]
© www.soinside.com 2019 - 2024. All rights reserved.