CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
英特尔®游戏设计大赛100美元现金周周送 专题改版:Java Web 专题
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  Delphi >  VCL组件开发及应用

报表中的大小金额的转换

楼主cat8162(碧雅情天)2003-12-03 08:59:41 在 Delphi / VCL组件开发及应用 提问

请问怎样在报表中实现汇总金额和转换成大写金额?在线等待!!(我用的是FastReport) 问题点数:20、回复次数:1Top

1 楼47522341(睡到8:30)回复于 2003-12-03 18:51:05 得分 20

财务软件中总少不了大写的金额表示方式,如下为一个简单的小写金额转换为大写的函数,其思路简单(可以说烂吧,居然利用了位置来转换),但是它却几乎可以无限制的转换,只要你能读得出来和写得进去:  
  function   Tform1.SmallTOBig(small:real):string;  
  var   SmallMonth,BigMonth:string;  
  wei1,qianwei1:string[2];  
  wei,qianwei,dianweizhi,qian:integer;  
  begin  
  {-------   修改参数令值更精确   -------}  
  {小数点后的位数,需要的话也可以改动该值}  
  qianwei:=-2;  
   
  {转换成货币形式,需要的话小数点后加多几个零}  
  Smallmonth:=formatfloat('0.00',small);  
  {---------------------------------}  
   
  dianweizhi   :=pos('.',Smallmonth);{小数点的位置}  
   
  {循环小写货币的每一位,从小写的右边位置到左边}  
  for   qian:=length(Smallmonth)   downto   1   do  
  begin  
  {如果读到的不是小数点就继续}    
  if   qian<>dianweizhi   then  
  begin  
   
  {位置上的数转换成大写}  
  case   strtoint(copy(Smallmonth,qian,1))   of  
   
  1:wei1:='壹';   2:wei1:='贰';  
  3:wei1:='叁';   4:wei1:='肆';  
  5:wei1:='伍';   6:wei1:='陆';  
  7:wei1:='柒';   8:wei1:='捌';  
  9:wei1:='玖';   0:wei1:='零';  
  end;  
   
  {判断大写位置,可以继续增大到real类型的最大值,可是谁有那么多钱}  
  case   qianwei   of  
  -3:qianwei1:='厘';  
  -2:qianwei1:='分';  
  -1:qianwei1:='角';  
  0   :qianwei1:='元';  
  1   :qianwei1:='拾';  
  2   :qianwei1:='佰';  
  3   :qianwei1:='千';  
  4   :qianwei1:='万';  
  5   :qianwei1:='拾';  
  6   :qianwei1:='佰';  
  7   :qianwei1:='千';  
  8   :qianwei1:='亿';  
  9   :qianwei1:='十';  
  10:qianwei1:='佰';  
  11:qianwei1:='千';  
  end;  
   
  inc(qianwei);  
  BigMonth   :=wei1+qianwei1+BigMonth;{组合成大写金额}  
  end;  
   
  end;  
   
  SmallTOBig:=BigMonth;  
   
  end;  
   
  程序调用如下“edit1.text:=SmallTOBig(1234567890.1234);”他自动默认小数点后两位  
   
  Top

相关问题

  • 金额大小写转换???
  • 大小写金额转换
  • 金额的大小写转换请教!!
  • 求大小写金额转换的函数
  • 紧急求救!!!大小写金额转换
  • 在sql中大小写金额的转换
  • 跪求jsp金额大小写转换代码!谢谢
  • 求水晶报表下将数字转换成金额大写的公式,UP有分
  • 50分求修改金额大小写转换程序中一个错误
  • 求:VB.net版的金额大小写转换源码!(找了好多,都是C#版的,郁闷!)

关键词

  • 转换
  • qianwei
  • wei
  • smallmonth
  • 小数点
  • bigmonth
  • 金额
  • dianweizhi
  • smalltobig
  • qian

得分解答快速导航

  • 帖主:cat8162
  • 47522341

相关链接

  • Delphi类图书
  • Delphi类源码下载
  • Delphi控件下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
世纪乐知(北京)网络技术有限公司 版权所有, 京 ICP 证 020026 号
北京创新乐知广告有限公司 提供技术支持
Copyright © 2000-2007, CSDN.NET, All Rights Reserved
GongshangLogo