Форум: "Базы";
Текущий архив: 2002.05.16;
Скачать: [xml.tar.bz2];
ВнизСумма прописью. Подскажите плиз, где можно взять данную Найти похожие ветки
← →
Бульбаш (2002-04-18 09:49) [0]функцию (русскую конечно). Или кто может поделиться наработкой.
← →
Johnmen (2002-04-18 09:52) [1]Я могу...
← →
Lusha (2002-04-18 09:53) [2]Опять же VGLib...
← →
Alexandr (2002-04-18 09:54) [3]да валом таких
← →
Sergey13 (2002-04-18 10:22) [4]Если надо для D5 то есть например в SohoLib, если для Оракла то сходи на http://oraclub.trecom.tomsk.su/ там несколько вариантов.
← →
Бульбаш (2002-04-18 10:41) [5]Надо для D5. А можно глупый вопрос? Я в делфях недавно, можно поподробнее, что есть VGlib и SohoLib, насколько я понимаю доп.компоненты. (если так, то где можно взять???)
← →
Alexandr (2002-04-18 10:42) [6]www.torry.net
← →
Explorer (2002-04-18 11:08) [7]есть такая
← →
Оул (2002-04-18 13:55) [8]У меня есть.
← →
@andrew (2002-04-18 15:14) [9]Если еще надо, то могу скинуть на мыло dll-ку с описанием.
Токма отпишись на мыло о той самой надобности, ибо на форуме бываю не часто :))
← →
Alexander Vasjuk (2002-04-18 16:30) [10]Вот.
Сам написал :)
На самом деле короче я не видел.
function MoneyToText(Money: Double): String;
type
TN125 = (n1, n2, n5);
TSex = (m, f);
const
N125: Array[0..9] of TN125 = (n5, n1, n2, n2, n2, n5, n5, n5, n5, n5);
ST: Array[0..6, TN125] of String =
(("гривна", "гривны", "гривен"),
("тысяча", "тысячи", "тысяч"),
("миллион", "миллиона", "миллионов"),
("миллиард", "миллиарда", "миллиардов"),
("трилион", "трилиона", "трилионов"),
("квадрильон", "квадрильона", "квадрильонов"),
("квинтильон", "квинтильона", "квинтильонов"));
Sex: Array[0..6] of TSex = (f, f, m, m, m, m, m);
SI: Array[TSex, 0..9] of String = (("", "один", "два", "три", "четыре", "пять", "шесть", "семь", "восемь", "девять"),
("", "одна", "две", "три", "четыре", "пять", "шесть", "семь", "восемь", "девять"));
SIi: Array[0..9] of String = ("десять", "одинадцать", "двенадцать", "тринадцать", "четырнадцать", "пятнадцать",
"шестнадцать", "семнадцать", "восемнадцать", "девятнадцать");
SIo: Array[0..9] of String = ("", "десять", "двадцать", "тридцать", "сорок", "пятьдесят",
"шестьдесят", "семдесят", "восемьдесят", "девяносто");
SIoo: Array[0..9] of String = ("", "сто", "двести", "триста", "четыреста", "пятьсот",
"шестьсот", "семьсот", "восемьсот", "девятьсот");
function Get_T(N: Int64; No: Integer): Integer;
var
I: Integer;
begin
for I := 1 to No do N := N div 1000;
Result := N - N div 1000 * 1000;
end;
function Get_T_Str(N, No: Integer): String;
var
Ioo, Io, I: Integer;
begin
Ioo := N div 100;
Io := (N - Ioo * 100) div 10;
I := N - Ioo * 100 - Io * 10;
Result := SIoo[Ioo];
if Io = 1 then
Result := Result + " " + SIi[I] else
Result := Result + " " + SIo[Io] + " " + SI[Sex[No], I];
if Io = 1 then I := 5;
Result := Result + " " + ST[No, N125[I]];
end;
var
i, N, T: Integer;
begin
Result := "";
Money := Round(Money * 100) / 100;
N := Trunc(Money);
for i := 0 to 6 do
begin
T := Get_T(N, i);
if T <> 0 then
Result := Get_T_Str(T, i) + " " + Result else
if i = 0 then Result := " гривен";
end;
Result := Format("%s %2.2d коп.", [Result, Round((Money - N) * 100)]);
end;
← →
Бульбаш (2002-04-18 16:46) [11]Всем спасибо, действительно есть из чего выбрать+ рассматриваю вариант процедуры на оракловском сервере, тоже вроде бы ничего работает...
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2002.05.16;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.006 c