2016-08-02 72 views
0

基于一定的条件,我不得不创建一个表达式,显示2或3小数点。请参阅我的代码已经使用如何根据条件更改小数位?

=Format(IIf(Fields!checkamt.Value>0,Fields!checkamt.Value * Fields!ExchangeRate.Value,""),"#,##0.F"+CStr(Fields!DecimalPlaces.Value)) 

输出10000F2或10000F3,这应该是10000.56或者基于小数 这是不工作10000.561 。有人可以帮忙吗?

+0

你的问题是不理解,请参阅如何提高你的问题,并得到了快速的answers..https此链接: //spaghettidba.com/2015/04/24/how-to-post-at-sql-question-on-a-public-forum/ – TheGameiswar

+0

现在看看它 – Rinu

+0

您正在使用哪些DBMS?在你的问题中没有有效的SQL。 –

回答

1

从我对这个问题的理解中我们可以按照以下步骤进行; 1.获取表格中的小数位数列(如果不存在) 2.使用

left(cast(round(cost,decimal_number) as char(32)),decimal_number) as R 
+0

我必须计算工资*汇率。对于一些国家来说,小数点是3,而另一些则是2。例如9561 * 3.65 = 34961.772如果您正在计算科威特的价值,而美国的价值则变为9561 * 3.65 = 34961.77。第一个有3个小数点,第二个只有2个。我需要一个基于上面的公式。请参阅我原来的方程式= IIf(Fields!checkamt.Value> 0,Fields!checkamt.Value * Fields!ExchangeRate.Value,“”) – Rinu

+0

该国家可以在本专栏找到cfgCurrencySymbol – Rinu

+0

做你在问什么@ Rinu:编写一些代码(或存储该值)以将decimal_number设置为正确的大小。这个答案解决了你的舍入问题;你试图解决这个SO问题提供的更大问题是什么? –