Axapta AX基数据类型验证

Axapta AX基数据类型验证,axapta,x++,dynamics-ax-2009,Axapta,X++,Dynamics Ax 2009,我正在寻找更多关于如何验证AX 2009中的基本数据类型的信息,以便扩展该系统 我们知道,AX中几乎所有的基本数据类型都会进行某种数据验证,最明显的是日期字段,这是因为您可以使用一些快捷方式来利用这一点:例如,如果您在日期字段中只键入数字4,系统自动将其转换为表示当前月份和年份的第四天的日期。我正在寻找是否有任何类似的字符串功能,我可以覆盖或控制 由于字符串目前显然没有像日期那样因内容而被修改,所以我想自己设置一个字符串。我目前的方法是重写少数表的modifiedField方法来调用自定义类,这

我正在寻找更多关于如何验证AX 2009中的基本数据类型的信息,以便扩展该系统

我们知道,AX中几乎所有的基本数据类型都会进行某种数据验证,最明显的是日期字段,这是因为您可以使用一些快捷方式来利用这一点:例如,如果您在日期字段中只键入数字4,系统自动将其转换为表示当前月份和年份的第四天的日期。我正在寻找是否有任何类似的字符串功能,我可以覆盖或控制


由于字符串目前显然没有像日期那样因内容而被修改,所以我想自己设置一个字符串。我目前的方法是重写少数表的modifiedField方法来调用自定义类,这将清除数据,使其不包含有问题的字符,例如\r\n或\t(当然,某些字段将被排除)。是否有更好的方法,最好是一种更全局的方法?

没有可以访问的低级字符串或日期重载。能够在全球范围内操纵每一个字符串对于我们能够访问的东西来说是没有意义的

如果存在这种情况,那么您可能会引入的潜在开销将是天文数字


日期
赋值的工作方式很可能是
=
符号的内核(或编译器?)。它只在变量赋值时执行,而不是像您建议的那样进行数据验证。

AX会自动删除\r\n或\t字符。尾随空间也是如此。换行符(\n)保存在原因的多行字符串控件中。这不是我的经验。事实上,我以前在项目编号的开头有过\r\n(我认为有人复制/粘贴了错误的编号)。我们只是通过从Item Details屏幕导出到Excel来捕获它。还有一些其他问题与这3个字符有关,这导致我们实现了这一点(这导致了其他问题,事实证明),我认为这是数据导入问题。无法在AX中输入\r字符。这是正确的,除了在备忘录样式的文本框中,您不能从键盘实际输入它。但是,通过从其他来源(如记事本或电子邮件)复制/粘贴字符,您可以轻松地在其他字段中获取该字符。我自己做过好几次。