在FastReport中编写金额数字转换大写自定义函数

function MoneyToCharacter(Money:real):string; //数字转换为中文大写
var
    temp:string;
    resu:string;
    i,j:integer;
    len:integer;
    Num:array[0..9] of string;
    A:array[0..13] of string;
begin
     Num[0]:='零';
     num[1]:='壹';
     Num[2]:='贰';
     num[3]:='叁';
     Num[4]:='肆';
     num[5]:='伍';
     Num[6]:='陆';
     num[7]:='柒';
     Num[8]:='捌';
     num[9]:='玖';
     a[0]:='分';
     a[1]:='角';
     a[2]:='元';
     a[3]:='拾';
     a[4]:='佰';
     a[5]:='仟';
     a[6]:='万';
     a[7]:='拾';
     a[8]:='佰';
     a[9]:='仟';
     a[10]:='亿';
     a[11]:='拾';
     a[12]:='佰';
     a[13]:='仟';
     temp:=trim(inttostr(round(money*100)));
     len:=length(temp);
     resu:='';
     if (len>13) or (len=0) then
       begin
         exit;
       end;
     for i:=1 to len do
     begin
         j:=strtoint(copy(temp,i,1));
         resu:=resu+num[j]+a[len-i];
     end;
     len:=length(resu);          
     result:=copy(resu,0,len-8);
end;

四舍五入,取整数

调用函数

procedure Memo41OnAfterData(Sender: TfrxComponent);
begin
   memo41.text:='总金额(大写):'+MoneyToCharacter(Round(SUM(<加工."发货金额">,MasterData1)))+'整';
    TfrxMemoView(Sender).Font.Size:=12;
   while ((TfrxMemoView(Sender).CalcHeight-TfrxMemoView(Sender).LineSpacing)-TfrxMemoView(Sender).Height>0) do
  begin
    TfrxMemoView(Sender).Font.Size := TfrxMemoView(Sender).Font.Size-1;
  end;       
end;

如下显示:

显示浮点数属性设置 displayFormat    Formatstr  %2.2n

FastReport 金额大小写转换自定义函数相关推荐

  1. 随心所欲大小写转换自定义函数

    无论是在工作表中,还是VBA编程中,经常需要使用英文字母大小写转换功能.Excel函数中提供了UPPER,LOWER,PROPER三个函数,VBA中提供了UCASE,LCASE两个函数,为什么还要开发 ...

  2. 人民币金额大小写转换函数

    [转帖]人民币金额大小写转换函数 Function NtoC( n0 :Extended) :wideString; //人民币金额大小写转换函数(如发现更为精简的,请告诉我) //作者:方小庆(上海 ...

  3. C#人民币金额大小写转换

    C#人民币金额大小写转换 在财务相关的软件的时候,常常设计到大小写金额的转换,小编整理了自己常用的数字金额大小写转换的方法代码 给大家参考如下: /// <summary> /// 金额小 ...

  4. 金额大小写转换工具类

    /***金额大小写转换工具类*/public class MoneyUtil {/** 大写数字 */private static final String[] NUMBERS = { "零 ...

  5. 六,iOS中的金额格式化和金额大小写转换

    1,金额格式化 (1)需要注意当金额或者数字为负数是需要单独处理 代码如下: /*string 金额格式化(整数部分为NSNumberFormatter,小数部分为手动)*/ + (NSString ...

  6. oracle十进制函数语法,Oracle 十进制、二进制互相转换自定义函数

    Oracle 十进制.二进制相互转换自定义函数 create or replace function number_2_bit(v_num number) return varchar is v_rt ...

  7. 金额大小写转换(1)

    create or replace function smalltobig(smallmoney varchar2) return varchar2 is bigwrite varchar2(54); ...

  8. VB 金额大小写转换(两种方法)

    ' 本模块生成汉字大写的金额 ' Option Explicit ' 名称: CCh ' 得到一位数字 N1 的汉字大写 ' 0 返回 "" Function CCh(N1) As ...

  9. 金额大小写转换(4)

    create or replace function l2u -- 小写金额转换成大写 (n_lowermoney in number) return varchar2 as v_lowerstr v ...

最新文章

  1. WCF部署:让IIS有权限访问证书文件
  2. 《深入浅出设计模式-中文版》读书笔记-工厂模式(五)
  3. 【高并发解决方案】6、数据库水平切分的实现原理解析
  4. [jQuery] jQuery与jQuery UI有啥区别?
  5. 【Python学习】 - 解决DataFrame占用内存过大问题
  6. linux标准I/O——标准I/O介绍
  7. LLVM每日谈之三 如何创建一个LLVM工程
  8. 程序员“不会”修电脑的原因
  9. 第二单元总结——多线程设计
  10. redis copy-on-write机制
  11. 使用「Bartender」创建简洁的Mac菜单栏
  12. android app后台运行
  13. Windows Media Player 播放.WMV文件破解许可证
  14. 固态硬盘启动计算机时间,固态硬盘如何做到10秒快速开机
  15. TARA-Asset穷举
  16. 敏捷-《如何准备ACP考试》知识图谱
  17. ASP.NET全套视频教程
  18. Raspberry-Pi-PICO系列--第八篇 高级篇使用SWD接口下载和调试(第一章)
  19. android和MTKP60区别,联发科P60和高通骁龙660哪个好?骁龙660与联发科P60区别对比详细评测...
  20. ESXi6.5补丁更新

热门文章

  1. 去除文件系统、只读等属性
  2. 从今天起用2个月时间,学好PYTHON
  3. SpringBoot最佳实践,它来了,它来了
  4. 微信支付 APP端 后端 第四-五弹 退款定时任务 账单下载
  5. 【机器学习】模型评估
  6. Python爬虫|豆瓣图书Top250
  7. SQL Server获取姓名拼音
  8. 某程序员发现 CSDN官方“漏洞”,立省¥10000+,抓紧薅吧
  9. IO流总结(基础知识)
  10. adobe photoshop2021中文完整直装版