Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / PowerBuilder [игнор отключен] [закрыт для гостей] / Число прописью / 10 сообщений из 10, страница 1 из 1
26.07.2007, 17:38
    #34686946
Dimas_Verbatim
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Число прописью
Может у когото есть функция которая переводит число с учетом после комы, в пропись? Поделитесь пожалуйста!
...
Рейтинг: 0 / 0
26.07.2007, 17:54
    #34687014
Dim2000
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Число прописью
Dimas_Verbatim wrote:

> Может у когото есть функция которая переводит число с учетом после комы

После чего-чего???
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
26.07.2007, 18:09
    #34687057
Dimas_Verbatim
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Число прописью
ой!!! Запятой! это на укр!
...
Рейтинг: 0 / 0
26.07.2007, 18:11
    #34687064
Dim2000
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Число прописью
Dimas_Verbatim wrote:

> ой!!! Запятой! это на укр!

А-а-а... Поищи по форуму "сумма прописью". Не верю, что не было.
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
27.07.2007, 08:10
    #34687694
Andreev V. Pavel
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Число прописью
Имеется ДЛЛка для перевода сумм прописью, но переводит только целые числа. Поэтому копейки пишем числом :-)
Если интересует - давай мыло.
...
Рейтинг: 0 / 0
27.07.2007, 09:41
    #34687826
Локшин Марк
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Число прописью
Andreev V. PavelИмеется ДЛЛка для перевода сумм прописью, но переводит только целые числа. Поэтому копейки пишем числом :-)
У меня на сайте лежит на PB написаная. Копейки переводить не проблема - вызвал 2 раза, к первому результату приписал руб, ко второму коп. Проблема будет - если числа не деньги...
...
Рейтинг: 0 / 0
27.07.2007, 09:51
    #34687862
Estets
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Число прописью
Если нужны именноо алгоритмы преобразования, то можно заглянуть на форум MS SQL там я на это натыкался.
...
Рейтинг: 0 / 0
27.07.2007, 10:09
    #34687910
Dimas_Verbatim
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Число прописью
Локшин Марк Andreev V. PavelИмеется ДЛЛка для перевода сумм прописью, но переводит только целые числа. Поэтому копейки пишем числом :-)
У меня на сайте лежит на PB написаная. Копейки переводить не проблема - вызвал 2 раза, к первому результату приписал руб, ко второму коп. Проблема будет - если числа не деньги...
Спасибо! Уже нашел!
...
Рейтинг: 0 / 0
27.07.2007, 11:45
    #34688341
Andreev V. Pavel
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Число прописью
Локшин МаркУ меня на сайте лежит на PB написаная. Копейки переводить не проблема - вызвал 2 раза, к первому результату приписал руб, ко второму коп. Проблема будет - если числа не деньги...
Так, но не совсем. Когда встала задача, мы так и сделали - вызывали два раза.
Но тогда сумма не очень хорошо выглядит, не по-русски как-то :-)
Например, если перевести 2.02, то должно получиться два руб. две коп. А получалось, естественно, два руб. два коп.
Вообщем, бухгалтерия зарубила, пришлось копейки числом писать.
...
Рейтинг: 0 / 0
27.07.2007, 13:02
    #34688736
ИвановНН
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Число прописью
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
92.
93.
94.
95.
96.
97.
98.
99.
100.
101.
102.
103.
104.
105.
106.
107.
108.
109.
110.
111.
112.
113.
114.
115.
116.
117.
118.
119.
120.
public function string of_amountinwords (readonly decimal ac_amount);/*
Функция для прописи суммы (в рублях и копейках)
ac_Amount - сумма
*/
String ls_AmountString

if (  999999999999 . 99  < ac_Amount ) then
	//сумма ограничена классом миллиардов
	ls_AmountString = String( ac_Amount, '###,###,###,###,###,###,###,###,###,###,###,###,###,##0.00' )
	return ls_AmountString
end if

/*
	k - копейки
	e - единицы
	d - десятки
	c - сотни
	t - тысячи
	m - милионы
	M - миллиарды
*/

String ls_ReplaceTable[ ] = { &
	'$$$$$$', 'eM', &
	'$$$$$', 'em', &
	'$$$$', 'et', &
	'$$$', 'e', &
	'$$', 'd', &
	'$', 'c', &
	&	
	'0c0d0et', '', &
	'0c0d0em', '', &
	'0c0d0eM', '', &
	&	
	'0c', '', &
	'1c', 'сто ', &
	'2c', 'двести ', &
	'3c', 'триста ', &
	'4c', 'четыреста ', &
	'5c', 'пятьсот ', &
	'6c', 'шестьсот ', &
	'7c', 'семьсот ', &
	'8c', 'восемьсот ', &
	'9c', 'девятьсот ', &
	&
	'1d0e', 'десять ', &
	'1d1e', 'одиннадцать ', &
	'1d2e', 'двенадцать ', &
	'1d3e', 'тринадцать ', &
	'1d4e', 'четырнадцать ', &
	'1d5e', 'пятнадцать ', &
	'1d6e', 'шестнадцать ', &
	'1d7e', 'семьнадцать ', &
	'1d8e', 'восемнадцать ', &
	'1d9e', 'девятнадцать ', &
	&
	'0d', '', &
	'2d', 'двадцать ', &
	'3d', 'тридцать ', &
	'4d', 'сорок ', &
	'5d', 'пятьдесят ', &
	'6d', 'шестьдесят ', &
	'7d', 'семьдесят ', &
	'8d', 'восемьдесят ', &
	'9d', 'девяносто ', &
	&
	'0e', '', &
	'5e', 'пять ', &
	'6e', 'шесть ', &
	'7e', 'семь ', &
	'8e', 'восемь ', &
	'9e', 'девять ', &
	&
	'1e.', 'один рубль ', &
	'2e.', 'два рубля ', &
	'3e.', 'три рубля ', &
	'4e.', 'четыре рубля ', &
	'1et', 'одна тысяча ', &
	'2et', 'две тысячи ', &
	'3et', 'три тысячи ', &
	'4et', 'четыре тысячи ', &
	'1em', 'один миллион ', &
	'2em', 'два миллиона ', &
	'3em', 'три миллиона ', &
	'4em', 'четыре миллиона ', &
	'1eM', 'один милиард ', &
	'2eM', 'два милиарда ', &
	'3eM', 'три милиарда ', &
	'4eM', 'четыре милиарда ', &
	&
	'11k', '11 копеек', &
	'12k', '12 копеек', &
	'13k', '13 копеек', &
	'14k', '14 копеек', &
	'1k', '1 копейка', &
	'2k', '2 копейки', &
	'3k', '3 копейки', &
	'4k', '4 копейки', &
	&
	'.', 'рублей ', &
	't', 'тысяч ', &
	'm', 'миллионов ', &
	'M', 'милиардов ', &
	'k', ' копеек', &
	'-', 'минус ' &
}

ls_AmountString = String( ac_Amount,'#$#$$#$$$$$$#$#$$#$$$$$#$#$$#$$$$#$#$$#$$$.##k;-#$#$$#$$$$$$#$#$$#$$$$$#$#$$#$$$$#$#$$#$$$.##k' )
if  0  < Pos( ls_AmountString, ',' ) then ls_AmountString = Replace( ls_AmountString, Pos( ls_AmountString, ',' ),  1 , '.' )

int i
for i =  1  to UpperBound( ls_ReplaceTable[ ] ) step  2 
	do while (  0  < Pos( ls_AmountString, ls_ReplaceTable[ i ] ) ) 
		ls_AmountString = Replace( ls_AmountString, Pos( ls_AmountString, ls_ReplaceTable[ i ] ), Len( ls_ReplaceTable[ i ] ), ls_ReplaceTable[ i +  1  ] )
	loop
next

ls_AmountString = Trim( Upper( Left( ls_AmountString,  1  ) ) + Lower( Mid( ls_AmountString ,  2  ) ) )

return ls_AmountString
end function
...
Рейтинг: 0 / 0
Форумы / PowerBuilder [игнор отключен] [закрыт для гостей] / Число прописью / 10 сообщений из 10, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]