Reporting services SSRS报告中取消播放金额的自定义格式
我想将122030000的印度格式金额/货币显示为“12,20,30000.00”。我尝试在表达式中使用自定义格式(如##,##,##,##,##,##0.00)来解决此问题,但它不起作用。因为如果我的值很小,比如25000,我会得到“,,25000”这样的格式。有人能帮我吗?(我想在ssrs中使用这个表达式)我认为您需要使用代码以您的特殊格式生成字符串 您需要创建一个循环并检查数字,以计算逗号的位置 比如:Reporting services SSRS报告中取消播放金额的自定义格式,reporting-services,formatting,currency-formatting,Reporting Services,Formatting,Currency Formatting,我想将122030000的印度格式金额/货币显示为“12,20,30000.00”。我尝试在表达式中使用自定义格式(如##,##,##,##,##,##0.00)来解决此问题,但它不起作用。因为如果我的值很小,比如25000,我会得到“,,25000”这样的格式。有人能帮我吗?(我想在ssrs中使用这个表达式)我认为您需要使用代码以您的特殊格式生成字符串 您需要创建一个循环并检查数字,以计算逗号的位置 比如: FUNCTION iMONEY(ByVal MONEY AS STRING) AS S
FUNCTION iMONEY(ByVal MONEY AS STRING) AS STRING 'by Bryan
DIM CHECK AS INTEGER
DIM SEPARATE AS BOOLEAN
CHECK = INSTR(MONEY, ".")
IF CHECK > 0 THEN
iMONEY = MID(MONEY, CHECK, LEN(MONEY))
MONEY = LEFT(MONEY, CHECK - 1)
END IF
FOR CHECK = LEN(MONEY) TO 1 STEP -1
iMONEY = MID(MONEY, CHECK, 1) & iMONEY
IF SEPARATE AND CHECK <> 1 THEN iMONEY = "," & iMONEY
SEPARATE = NOT SEPARATE
NEXT CHECK
END FUNCTION
您将得到:
我认为您需要使用代码以特殊格式生成字符串 您需要创建一个循环并检查数字,以计算逗号的位置 比如:
FUNCTION iMONEY(ByVal MONEY AS STRING) AS STRING 'by Bryan
DIM CHECK AS INTEGER
DIM SEPARATE AS BOOLEAN
CHECK = INSTR(MONEY, ".")
IF CHECK > 0 THEN
iMONEY = MID(MONEY, CHECK, LEN(MONEY))
MONEY = LEFT(MONEY, CHECK - 1)
END IF
FOR CHECK = LEN(MONEY) TO 1 STEP -1
iMONEY = MID(MONEY, CHECK, 1) & iMONEY
IF SEPARATE AND CHECK <> 1 THEN iMONEY = "," & iMONEY
SEPARATE = NOT SEPARATE
NEXT CHECK
END FUNCTION
您将得到:
通常情况下,报表服务器使用其区域/区域设置的格式,但您可以将其更改为使用用户的区域/区域设置 在“报告属性”的“语言”属性中,将其设置为:
=User!Language
然后在整个报告中使用
格式
属性。在您的示例中,C2
将以用户希望看到的方式为您提供适当的货币格式。假设用户有适当的文化设置,这应该是您需要做的全部工作 通常,报表服务器使用其区域/区域设置的格式,但您可以将其更改为使用用户的区域/区域设置
在“报告属性”的“语言”属性中,将其设置为:
=User!Language
然后在整个报告中使用格式
属性。在您的示例中,C2
将以用户希望看到的方式为您提供适当的货币格式。假设用户有适当的文化设置,这应该是您需要做的全部工作