亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > C# > 正文

RDLC報表中使用自定義函數

2023-05-17 11:41:59
字體:
來源:轉載
供稿:網友

在RDLC中,可以使用自定義方法來擴充報表功能。比如常見的,把數字轉換為大寫中文的需求。按如下方法操作。

1、在報表空白處先一點,確保沒點中任何報表對象。然后點擊菜單欄上的“報表”。

選“報表屬性”,在彈出的小窗口上,切換到“代碼”標簽頁。

在文本框內輸入你的函數,我們這里輸入了一個CNMoney函數。

注意:

(1)嵌入代碼中的方法必須以 Microsoft Visual Basic 語法進行編寫

(2)代碼塊可以包含多個方法。

(3)無法向函數傳遞數據值集,不支持自定義聚合。一般用于簡單數據類型。

(4)此方法可在該報表中多次使用,但是不能脫離報表使用。即不能在報表中共享這一函數。

 其他報表中要用到該方法,需在報表中創建同樣的代碼段。

2、在報表上拖一個文本框,在上面點右鍵,選“表達式”,在彈出的表達式界面上,輸入

code.CNMoney(16)

注意:以code+.+函數名稱的方式引用之前定義的方法

下圖為操作流程示意

下面為文中用到的函數體,可在項目中實際使用。

  1. '#############################################################################     
  2. '貨幣轉換為中文漢字表述     
  3. '     
  4. '函數名稱:CNMoney     
  5. '參數:ls     
  6. '返回值:轉換后的字符串     
  7. '     
  8. '整理人:阿泰     
  9. '版本歷史     
  10. '2010-04-20:首次編譯,修正0參數,修正小于10的值不能正常顯示的BUG     
  11. '     
  12. '本文函數來源于 feng442624978,原帖地址:     
  13. 'http://topic.csdn.net/u/20100303/15/0f0ceca7-d29d-4269-b0f5-17ea09d0f139.html     
  14. '#############################################################################     
  15.      
  16. Shared Function CNMoney(ls As LongAs String     
  17.     Dim dx_sz As String     
  18.     Dim dx_dw As String     
  19.     Dim str_int As String     
  20.     Dim str_dec As String     
  21.     Dim dx_str As String     
  22.     Dim fu As String     
  23.     Dim a As String     
  24.     Dim b As String     
  25.     Dim c As String     
  26.     Dim d As String     
  27.     Dim b2 As String     
  28.     Dim num_int As Long    
  29.     Dim num_dec As Long    
  30.     Dim len_int As Long    
  31.     Dim i As Long    
  32.     Dim a_int As Long    
  33.     Dim pp As Long    
  34.      
  35.     dx_sz = "零壹貳叁肆伍陸柒捌玖"     
  36.     dx_dw = "萬仟佰拾億仟佰拾萬仟佰拾圓"     
  37.          
  38.     If ls = 0 Then     
  39.         CNMoney = "零圓整"     
  40.         Exit Function     
  41.     End If     
  42.          
  43.     If ls < 0 Then     
  44.         ls = Abs(ls)     
  45.         fu = "負"     
  46.     Else     
  47.         fu = ""     
  48.     End If     
  49.      
  50.     dx_str = CStr(ls)     
  51.     dx_str = Replace(dx_str, "¥""")     
  52.     dx_str = Replace(dx_str, ",""")     
  53.     If (ls >= 0) And (ls < 1) Then dx_str = "0" + dx_str     
  54.          
  55.     pp = InStr(dx_str, ".")     
  56.     If pp > 0 Then     
  57.         str_int = Mid(dx_str, 1, InStr(dx_str, ".") - 1)     
  58.     Else     
  59.         str_int = dx_str     
  60.     End If     
  61.      
  62.     num_int = CLng(str_int)     
  63.      
  64.     If (ls > 0) And (ls < 1) Then     
  65.         num_dec = ls * 100     
  66.     Else     
  67.         num_dec = (ls - num_int) * 100     
  68.     End If     
  69.      
  70.     str_dec = CStr(num_dec)     
  71.     str_dec = Replace(str_dec, "¥""")     
  72.      
  73.     len_int = Len(str_int)     
  74.     dx_str = ""     
  75.     For i = 1 To len_int     
  76.         a = Mid(str_int, i, 1)     
  77.         a_int = CLng(a)     
  78.         b = Mid(dx_sz, (a_int + 1), 1)     
  79.         c = Mid(dx_dw, (13 - len_int + i), 1)     
  80.         If dx_str <> "" Then     
  81.             d = Mid(dx_str, Len(dx_str) - 1, 1)     
  82.         Else     
  83.             d = ""     
  84.         End If     
  85.         If (b = "零"And ((d = "零"Or (b = b2) Or (c = "圓"Or (c = "萬"Or (c = "億")) Then b = ""     
  86.         If (a = "0"And (c <> "圓"And (c <> "萬"And (c <> "億"Then c = ""     
  87.         If ((c = "圓"Or (c = "萬"Or (c = "億")) And (d = "零"And (a = "0"Then     
  88.             dx_str = Mid(dx_str, 1, Len(dx_str) - 2)     
  89.             d = Mid(dx_str, Len(dx_str) - 1, 2)     
  90.             If ((c = "圓"And (d = "萬")) Or ((c = "萬"And (d = "億")) Then c = ""     
  91.         End If     
  92.         dx_str = dx_str + b + c     
  93.         b2 = b     
  94.     Next i     
  95.      
  96.     '處理金額小于1的情況     
  97.     If Len(dx_str) < 2 Then dx_str = ""     
  98.     If (num_dec < 10) And (ls > 0) Then     
  99.         a_int = CLng(str_dec)     
  100.         b = Mid(dx_sz, (a_int + 1), 1)     
  101.         If num_dec = 0 Then dx_str = dx_str + "整"     
  102.         If num_dec > 0 Then dx_str = dx_str + "零" + b + "分"     
  103.     End If     
  104.     If num_dec >= 10 Then     
  105.         a_int = CLng(Mid(str_dec, 1, 1))     
  106.         a = Mid(dx_sz, (a_int + 1), 1)     
  107.         a_int = CLng(Mid(str_dec, 2, 1))     
  108.         b = Mid(dx_sz, (a_int + 1), 1)     
  109.         If a <> "零" Then a = a + "角"     
  110.         If b <> "零" Then b = b + "分" Else b = ""     
  111.         dx_str = dx_str + a + b     
  112.     End If     
  113.              
  114.     dx_str = fu + dx_str     
  115.      
  116.     dx_str = Replace(dx_str, "零億""億")     
  117.     dx_str = Replace(dx_str, "零萬""萬")     
  118.     dx_str = Replace(dx_str, "零千""千")     
  119.     dx_str = Replace(dx_str, "零圓""圓")     
  120.      
  121.      
  122.     CNMoney = dx_str     
  123. End Function    

如果函數有錯誤,在編譯時會出現類似的提示信息

可根據提示進行修正

注:本文為在報表中使用自定義函數的方法之一,之后有時間補充其他方法。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
国产日韩欧美成人| 九九九久久国产免费| 2019亚洲男人天堂| 久久的精品视频| 精品国产福利在线| 在线精品国产欧美| 日韩av在线电影网| 久久久久久国产三级电影| 日韩视频免费在线观看| 久久视频免费观看| 国产日韩欧美日韩| 国产丝袜一区视频在线观看| 成人在线视频网| 久久香蕉频线观| 在线观看视频亚洲| 日韩精品小视频| 在线午夜精品自拍| 亚洲福利视频网站| 最近中文字幕mv在线一区二区三区四区| 大伊人狠狠躁夜夜躁av一区| 亚洲电影免费观看高清完整版在线| 91成人福利在线| 亚洲欧美日韩另类| 亚洲bt天天射| 日韩免费观看视频| 国产极品jizzhd欧美| 久久6免费高清热精品| 国产精品美女在线观看| 欧美激情视频网站| 国产精品丝袜白浆摸在线| 欧美制服第一页| 夜夜躁日日躁狠狠久久88av| 国产丝袜精品第一页| 91中文字幕在线观看| 96sao精品视频在线观看| 久久久久在线观看| 欧美精品电影免费在线观看| 亚洲第一色中文字幕| 茄子视频成人在线| 亚洲国产小视频| 亚洲人午夜色婷婷| 国产女人18毛片水18精品| 亚洲免费一在线| 欧美一级bbbbb性bbbb喷潮片| 超碰精品一区二区三区乱码| 欧美精品在线第一页| 国产精品成人观看视频国产奇米| 国产一区红桃视频| 国产精品美女久久久久久免费| 亚洲精品在线观看www| 日韩欧美精品网址| 亚洲欧美国产精品久久久久久久| 国产精品久久久久久久久免费看| 欧美多人乱p欧美4p久久| 日韩中文字幕不卡视频| 亚洲精品美女网站| 日韩在线免费高清视频| 精品视频在线播放| 播播国产欧美激情| 国产一区深夜福利| 欧美又大粗又爽又黄大片视频| 国产精品视频地址| 久久免费成人精品视频| 九九热精品视频| 国产亚洲成av人片在线观看桃| 欧美肥臀大乳一区二区免费视频| 国产精品99久久久久久久久| 国产精品免费福利| 51ⅴ精品国产91久久久久久| 国产精品网站视频| 久久久久久亚洲| 97超碰色婷婷| 亚洲激情在线观看视频免费| 国产欧美在线看| 亚洲精品久久久久久久久久久久| 欧美日本在线视频中文字字幕| 成人444kkkk在线观看| 亚洲国产精久久久久久| 亚洲精品一二区| 亚洲中国色老太| 亚洲专区国产精品| 欧美视频在线观看免费网址| 狠狠躁夜夜躁人人爽天天天天97| 国产亚洲激情在线| 国产精品福利在线观看网址| 在线激情影院一区| 国产一区二区三区直播精品电影| 精品美女国产在线| 亚洲精品中文字幕av| 亚洲自拍偷拍色片视频| 日韩黄色在线免费观看| 亚洲综合中文字幕68页| 欧美一级免费视频| 奇米影视亚洲狠狠色| 福利二区91精品bt7086| 九九九热精品免费视频观看网站| 亚洲高清免费观看高清完整版| 俺去啦;欧美日韩| 在线观看亚洲区| 亚洲成人久久网| 91精品国产91久久久久久吃药| 亚洲欧美国产一区二区三区| 97久久精品国产| 国产91色在线播放| 亚洲黄色片网站| 亚洲老头同性xxxxx| 成人av色在线观看| 亚洲高清免费观看高清完整版| 亚洲成人网久久久| 亚洲**2019国产| 黄色成人在线播放| 欧美精品电影免费在线观看| 久久精品电影网| 日韩黄色在线免费观看| 国产精品久久综合av爱欲tv| 亚洲国产精品小视频| 国产欧美日韩精品专区| 国产精品海角社区在线观看| 国产精品999| 日韩美女毛茸茸| 国内揄拍国内精品| 欧美在线视频观看免费网站| 中文字幕日韩欧美在线| 神马久久久久久| 国产精品亚洲视频在线观看| 欧美日韩激情美女| 亚洲a∨日韩av高清在线观看| 69国产精品成人在线播放| 久久全球大尺度高清视频| 日韩av免费在线播放| 欧美激情中文网| 亚洲精品www久久久久久广东| 成人免费福利在线| 午夜精品理论片| 亚洲欧美另类自拍| 久久久久国产一区二区三区| 正在播放欧美一区| 国产日韩精品在线观看| 国产精品人成电影在线观看| 免费99精品国产自在在线| 日本久久久久久久久久久| 亚洲淫片在线视频| 91精品久久久久久久久不口人| 国产精品入口夜色视频大尺度| 久久久久久久久久av| 欧美精品在线免费播放| 九九热在线精品视频| 亚洲精品福利视频| 午夜精品99久久免费| 国产免费久久av| 亚洲精品日韩激情在线电影| 川上优av一区二区线观看| 亚洲欧美中文另类| 久热精品视频在线观看| 欧美激情国产日韩精品一区18| 尤物yw午夜国产精品视频明星| 国产精品国产三级国产aⅴ9色| 综合欧美国产视频二区| 国产热re99久久6国产精品| 日韩一级裸体免费视频| 久久影院资源网| 国内成人精品一区| 成人精品视频在线| 国产成人精品视|