Страница 1 из 1

Рубли без копеек

Добавлено: 19 июн 2012, 12:45
IVC
Здравствуйте.
Нужно выводить прописью сумму (тип денежный) с копейками, если они есть, без копеек в противном случае (2,50 - "Два рубля 50 копеек", 2,00 - "Два рубля").
Сейчас с помощью функции ToCurrencyWordsRu() получаем: 2,00 - "Два рубля 00 копеек".
Можно, конечно, использовать функцию Func.Ru.CurrToStr():
Func.Ru.CurrToStr(summa, summa - (int)summa != 0)

Есть ли способ проще?

Рубли без копеек

Добавлено: 20 июн 2012, 07:00
Ivan
Здравствуйте.

Вы можете, например, на закладке Code добавить в тело отчета свою функцию, например

Код: Выделить всё

		private string ToCurrencyWordsRuMy(decimal summa)
		{
			return Func.Ru.CurrToStr(summa, summa - (int)summa != 0);	
		}
а затем вызывать эту функцию в выражении:

Код: Выделить всё

{ToCurrencyWordsRuMy(2.0)}
Спасибо.

Рубли без копеек

Добавлено: 20 июн 2012, 07:30
IVC
Спасибо

Рубли без копеек

Добавлено: 21 июн 2012, 05:10
Andrew
Здравствуйте,

Всегда рады помочь Вам.

Спасибо.

Re: Рубли без копеек

Добавлено: 31 июл 2012, 11:40
IVC
здравствуйте.
предыдущий пример отчета работает не на всех данных

Re: Рубли без копеек

Добавлено: 31 июл 2012, 11:41
IVC
пример

Re: Рубли без копеек

Добавлено: 31 июл 2012, 14:47
Aleksey
Здравствуйте,

Пожалуйста, скорректируйте дополнительные функции следующим образом:

Код: Выделить всё

private string ToCurrencyWordsRuMy(decimal summa)
{
	return Func.Ru.CurrToStr(summa, summa - (int)summa != 0);   
}
private string ToCurrencyWordsRuMy(double summa)
{
	return Func.Ru.CurrToStr(summa, summa - (int)summa != 0);   
}
private string ToCurrencyWordsRuMy(long summa)
{
	return Func.Ru.CurrToStr(summa, false);   
}
Спасибо.

Re: Рубли без копеек

Добавлено: 31 июл 2012, 15:56
IVC
Все понятно, спасибо большое

Re: Рубли без копеек

Добавлено: 31 июл 2012, 17:15
Aleksey
Всегда рады помочь.