sorting - SSRS - 按字符串的数字部分排序
问题描述
我有一个将在 Dynamics 365 中使用的 SSRS 报表,因此我无法在数据集中使用 SQL 来提供帮助。
我有一个产品/版本代码列,它是字符串混合字母和数字。例如:
FF8、FF9、FF10、FFA
这些将进入列标题并形成一个列组,该列组也按代码排序。标准的字母排序是这样的:
FF10 - FF8 - FF9 - FFA
我很高兴在我的排序表达式中使用子字符串来删除前面的产品代码,但我想要升序数字格式的数字,后跟按字母顺序排列的文本版本:
FF8 - FF9 - FF10 - FFA
解决方案
我会在您的数据集中添加一个计算列,去除非数字字符并转换为数字。这将使排序更容易
像这样的公式可能会有所帮助
=System.Text.RegularExpressions.Regex.Replace(Fields!productcode.Value, "[^0-9]", "")
该^
符号表示“不是”,因此此正则表达式将删除所有不在 0 到 9 范围内的字符(即所有非数字字符)
据此,Regex.Replace
应在 CRM 的沙盒报告中得到支持
推荐阅读
- python-3.x - TensorFlow 中的多输入建模,带有生成器
- git - 在 GitHub 操作工作流中确定合并推送的源分支名称
- javascript - 在 JWPlayer 上禁用键盘快捷键
- excel-formula - 如何从excel的maxif结果的同一行中提取数据?
- python - 将列添加到现有 panas 数据框中,值为“顶部”和“底部”
- wxwidgets - 如何在 OS X 中将 2x 分辨率图像传递给 wxBitmapButton?
- r - 未使用 testthat 安装建议的依赖项时测试包的行为
- azure - Azure AD 应用程序:如何使用 microsoft graph API 删除上传的证书?
- gdb - 打印 gdb 中当前语句引用的所有变量符号的值,例如 assert(...) 失败
- bash - 计算时bash中的变量错误