2017-07-04 87 views
0

我们正在使用Dynamics CRM 2016内部部署。当您创建自定义实体时,您会得到一个默认的“名称”字段,该字段是一个包含100个字符的字符串。您可以在实体创建期间更改该数据类型,但我们没有这样做。更改名称字段的长度

现在我们知道在我们的用例中有100个字符是不够的,我们需要120或150. 解决方案设计器允许更改字符串长度,但是当我们保存更改时,我们会得到一个通用数据库错误。

问题:是否有已知的解决方法来更改主字段的字符串长度?

很明显,可以创建一个新实体并将数据从旧实体复制到新实体。由于我们在实体之间有很多观点,形式和参考,所以这不是真的可行。

+0

你在做什么听起来像它应该工作。用户正在进行更新的安全角色是什么?你有没有尝试更新其他领域?此外,有趣的是去年其他人报告了类似的问题:https://community.dynamics.com/crm/f/117/t/167733 – Aron

+0

您可以打开跟踪(https:// support)。 microsoft.com/en-au/help/907490/how-to-enable-tracing-in-microsoft-dynamics-crm)并编辑错误的答案? –

+0

@Aron:用户是系统管理员,所以它不应该是一个许可的事情。我们一直在更新其他领域,所以没关系。 – Sparhawk

回答

0

由于数据库中的约束条件,使用任何传统解决方案(即通过UI)这是不可能的。默认名称字段是表的主键。我鼓励您重新创建实体并将现有数据迁移到新实体。

如果这实在不可行,那么您可以尝试直接在SQL DB中更改列的长度,但这不受支持,因此可能会破坏环境。如果你想尝试这个,一定要在一次性环境中测试这个。 我从来没有这样做,所以我不知道结果,但那是我会尝试的。