簡體   English   中英

如何生成包含文本代碼的遞增賬單號碼?

[英]How can I generate an incrementing Billing number that contains text codes?

我的 Winform 應用中有一個賬單表格。 我想在計費時自動增加賬單編號。 我有一個新按鈕可以清除所有內容並開始新的計費。 所以我在那個按鈕點擊事件中創建了一個代碼。

 SqlCommand cmd = new SqlCommand("SELECT TOP 1 Bill_No FROM POS order by Bill_No Desc", con);
            int a = Convert.ToInt32(cmd.ExecuteScalar());
            int b = a + 1;
            string Bill = "Bill";
            txt_BillNo.Text = Bill+b.ToString();

現在的問題是當我第二次單擊該按鈕時。 'a' 獲取 varchar 數據。 像比爾12。 對於下一次點擊,我想增加為 Bill13。 但是當它從數據庫中獲取數據作為 varchar 時,它不能單獨增加數字。 那么有沒有辦法從 varchar 中獲取數字? 像 bill12 中的 12?

您可以使用正則表達式從字符串中識別整數。\\d+ 是整數的正則表達式。 所以

 //System.Text.RegularExpressions.Regex

 resultString = Regex.Match(subjectString, @"\d+").Value;
 returns a string containing the first occurrence of a number in subjectString.

 Int32.Parse(resultString) will then give you the number.

您可以使用東西來替換前綴,這將為您提供數值

Select STUFF('Bill1',1,4,'')

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM