prg1.prg
上传用户:ythdf520
上传日期:2020-10-07
资源大小:1477k
文件大小:1k
- ***将金额由小写变为英文大写
- func tranupper1
- PARAMETERS nAmount
- PRIVATE ALL LIKE L_*
- L_S1='零壹贰叁肆伍陆柒捌玖'
- L_S2='亿仟佰拾万仟佰拾亿仟佰拾万仟佰拾元角分'
- nAmount=LTRIM(STR(nAmount*100,LEN(L_S2)/2))
- L_LEN=LEN(nAmount)
- L_SS2=RIGH(L_S2,2*L_LEN)
- L_DX=''
- L_0JS=0 &&连续零的个数
- L_N=0
- DO WHILE L_N<L_LEN
- L_N=L_N+1
- L_SZ=SUBSTR(nAmount,L_N,1)
- L_SZ=SUBSTR(L_S1,2*VAL(L_SZ)+1,2)
- L_DW=SUBSTR(L_SS2,2*L_N-1,2)
- IF L_SZ='零'
- L_SZ=''
- DO CASE
- CASE L_DW$'亿元'
- CASE L_DW='万'
- IF RIGH(L_DX,2)='亿'
- L_DW=''
- ENDIF
- OTHERWISE
- L_DW=''
- ENDCASE
- L_0JS=L_0JS+1
- ELSE
- IF L_0JS>0
- L_SZ='零'+L_SZ
- ENDIF
- L_0JS=0
- ENDIF
- L_DX=L_DX+L_SZ+L_DW
- ENDDO
- L_DX=L_DX+IIF(RIGH(nAmount,1)='0','整','')
- RETURN L_DX
- PROCEDURE errhand
- PARAMETER errnum,MESSAGE
- IF errnum=12
- WAIT '' NOWAIT
- ELSE
- MESSAGEBOX(MESSAGE,0+16,'错误提示')
- MESSAGEBOX('错误号: '+ ALLTRIM(STR(errnum)),0+16,'错误提示')
- ENDIF
- RETURN