VB.net pos收据打印 [英] VB.net pos receipt print
问题描述
您好!
我有这样的datagridview:
ID | Items Name | QYT |价格|总和|
--------------------------------------
1 |可口可乐| 2 | 3.5 | 7.00 |
2 | chesseburger | 2 | 6.0 | 12.00 |
。
。
。
。
我想在收据中加入这个吗?
i有代码但是这样做:
1 |可口可乐| 2 | 3.5 | 7.00 |
2 | chesseburger | 2 | 6.0 | 12.00 |
Hello !
i have a datagridview like this:
ID |Items Name | Qyt.|Price| Sum|
--------------------------------------
1 |Coca cola | 2 | 3.5 | 7.00|
2 |chesseburger | 2 | 6.0 |12.00|
.
.
.
.
I want to brint this in a receipt?
i have a code but what is doing is this:
1 |Coca cola | 2 | 3.5 | 7.00|
2 |chesseburger | 2 | 6.0 |12.00|
Dim line As String
Dim c As Integer = 70
For Each row As DataGridViewRow In DataGridView.Rows
line = String.Empty
For Each cell As DataGridViewCell In row.Cells
line += cell.Value.ToString() & vbTab
Next
c = c + 20
g.DrawString(line, myfont, Brushes.Black, 10, c)
Next
i想要这样的收据:
项目字符串mus最多15个字符,价格4个字符,数量。 4个字符加4个字符!
但我不知道怎么做!
plz帮助我!
抱歉我的英文!
i want to make a receipt like this:
that the item string mus have maximum 15 characters, price 4 caracters,qty. 4 caracters sum 4 caracters !
but i dont know how!
plz Help me!
sorry for my english!
推荐答案
在这里你去...... (我推荐这个)
如何使用VB.Net打印POS打印机的收据。 [ ^ ]
Here you go...(I recommend this)
How to Print Receipt by POS Printer using VB.Net.[^]
亲爱的你有答案吗?我正在使用datagridview1。请回复我如何使用datagridview1打印收据。我不理解这个链接。它说
Dear Have you got answer for that? I am using datagridview1. Please reply me how do I print receipt by using datagridview1. I am not understanding the link. it says there
If CType(dgTransactionList.Item(k, 0), System.String) = "True"
没有想法 dgTransactionList
它是什么意思。
请用datagridview1回复我收据打印。
我的电子邮件ID< REMOVED> @ gmail.com
等待您的快速回复
No Idea of "dgTransactionList
" what it mean.
Please reply me with the datagridview1 to receipt print.
my email id <REMOVED>@gmail.com
waiting for your quick reply
尝试
Dim displayString As String
Dim ESC As String = Chr(&H1B)+a+ Chr(0 )
Dim ESC2 As String = Chr(&H1B)+@
Dim ESC1 As String = Chr(&H1B)+a+ Chr(1)'Allign中间
Dim ESC4 As String = Chr(&H1B)+a+ Chr(2)'Allign right
Dim ESC5 As String = Chr(&H1B)+! + Chr(17)'双高字体模式
Dim ESC6 As String = Chr(&H1B)+! + Chr(1)'取消双高字体模式
strSQl =从vewSalesInvoice选择*,其中DocNo ='&strDocNo&'
Dim da As New SqlDataAdapter(strSQl,cnn)
Dim dt As New DataTable
da.Fill(dt)
Dim strCustomer作为String
Dim strMemo As String
strMemo = dt.Rows(0)(TokenNo)
strCustomer = dt.Rows(0 )(名称)
displayString = vbNewLine
displayString + = ESC1 + ESC5 + CNm + ESC6 + vbNewLine
displayString + = ESC1 + 班达拉加山拉特纳普拉路。 + vbNewLine
displayString + = ESC1 +Cash Receipt+ vbNewLine
displayString + =----------------- ----------------------
displayString + = vbNewLine
displayString + = ESC +Transaction #:+ strDocNo
displayString + = ESC + vbNewLine
displayString + =Date:+ Date.Today()+ vbTab.ToString()+Time:
displayString + = DateAndTime.Now()。ToLongTimeString()+ ESC
displayString + = ESC + vbNewLine
displayString + =Cashier:+ CStr(GlobalUserName)+ vbTab.ToString()
displayString + = vbNewLine
displayString + =Customer:+ strCustomer
displayString + = vbNewLine
displayString + =备注:+ strMemo
displayString + = vbNewLine
displayStri ng + =---------------------------------------
displayString + = vbNewLine
displayString + = ESC +#+Item+ vbTab.ToString()+Rate+ vbTab.ToString()+Qty+ vbTab.ToString ()+Total+ vbTab.ToString()+Desc。
displayString + = vbNewLine
displayString + =--------- ------------------------------
displayString + = vbNewLine
Dim dblGrossTot As Double
Dim dblDiscount As Double
Dim dblNetTotal As Double
Dim dblPaid As Double
Dim dblBalRetuned As Double
'为数据集的每一行迭代循环。
dblDiscount = dt.Rows(0)(LineDiscount)
dblNetTotal = dt.Rows(0)(TranValue)
dblPaid = dt。行(0)(付费)
dblBalRetuned = dt.Rows(0)(BalanceReturned)
如果dt.Rows.Count> 0然后
Dim k As Integer
Dim n As Integer
k = dt.Rows.Count - 1
n = 1
Do while not k< 0
Dim strItemCode As String
Dim strItemName As String
Dim dblRate As Double
Dim dblQty As Double
Dim dblLineTotal As Double
strItemCode = dt.Rows(k)(ItemNumber)
strItemName = dt.Rows(k)(Description)
dblRate = FormatNumber(dt.Rows(k)(RegPrice),2)
dblQty = -dt.Rows(k)(Qty)
dblLineTotal = dblQty * dblRate
dblGrossTot = dblGrossTot + dblLineTotal
displayString + = ESC4 + n.ToString +
displayString + = strItemCode +
displayString + = FormatNumber(dblRate。 ToString,2)++ dblQty.ToString + vbTab.ToString()+ vb Tab.ToString()+ FormatNumber(dblLineTotal.ToString,2)
displayString + = ESC + vbNewLine
displayString + = ESC + strItemName + vbTab.ToString()
displayString + = ESC + vbNewLine
k = k - 1
n = n + 1
循环
displayString + =---------------------------------------
displayString + = vbNewLine
displayString + = ESC4 +GROSS TOTAL:+ vbTab.ToString()+ vbTab.ToString()+ FormatNumber(dblGrossTot.ToString,2)
displayString + = vbNewLine
displayString + = ESC4 +DISCOUNT:+ vbTab.ToString()+ vbTab.ToString()+ FormatNumber(-dblDiscount.ToString,2)
displayString + = vbNewLine
displayString + = ESC4 +NET TOTAL:+ vbTab.ToString ()+ vbTab.ToString()+ FormatNumber(dblNetTotal.ToString,2)
displayString + = vbNewLine
displayString + =--------- ------------------------------
displayString + = vbNewLine
displayString + = ESC4 +PAID:+ vbTab.ToString()+ vbTab.ToString()+ FormatNumber(dblPaid.ToString,2)
displayString + = vbNewLine
displayString + = ESC4 +BAL。已恢复:+ vbTab.ToString()+ vbTab.ToString()+ FormatNumber(dblBalRetuned.ToString,2)
displayString + = vbNewLine
displayString + = vbNewLine
displayString + = ESC1 +感谢您购物
displayString + = vbNewLine
displayString + = vbNewLine
displayString + = vbNewLine
displayString + = vbNewLine
displayString + = vbNewLine
displayString + = vbNewLine
displayString + = vbNewLine
displayString + = vbNewLine
ADRport.Open()
ADRport.Write(displayString)
ADRport.Close()
结束如果
Catch ex As Exception
MsgBox(ex.ToString())
结束尝试
Try
Dim displayString As String
Dim ESC As String = Chr(&H1B) + "a" + Chr(0)
Dim ESC2 As String = Chr(&H1B) + "@"
Dim ESC1 As String = Chr(&H1B) + "a" + Chr(1) 'Allign Middle
Dim ESC4 As String = Chr(&H1B) + "a" + Chr(2) 'Allign right
Dim ESC5 As String = Chr(&H1B) + "!" + Chr(17) ' Double hight font mode
Dim ESC6 As String = Chr(&H1B) + "!" + Chr(1) ' Cancel Double hight font mode
strSQl = "Select * from vewSalesInvoice where DocNo ='" & strDocNo & "'"
Dim da As New SqlDataAdapter(strSQl, cnn)
Dim dt As New DataTable
da.Fill(dt)
Dim strCustomer As String
Dim strMemo As String
strMemo = dt.Rows(0)("TokenNo")
strCustomer = dt.Rows(0)("Name")
displayString = vbNewLine
displayString += ESC1 + ESC5 + CNm + ESC6 + vbNewLine
displayString += ESC1 + "Ratnapura Rd, Bandaragama." + vbNewLine
displayString += ESC1 + "Cash Receipt" + vbNewLine
displayString += "---------------------------------------"
displayString += vbNewLine
displayString += ESC + "Transaction #:" + strDocNo
displayString += ESC + vbNewLine
displayString += "Date: " + Date.Today() + vbTab.ToString() + "Time: "
displayString += DateAndTime.Now().ToLongTimeString() + ESC
displayString += ESC + vbNewLine
displayString += "Cashier: " + CStr(GlobalUserName) + vbTab.ToString()
displayString += vbNewLine
displayString += "Customer: " + strCustomer
displayString += vbNewLine
displayString += "Memo: " + strMemo
displayString += vbNewLine
displayString += "---------------------------------------"
displayString += vbNewLine
displayString += ESC + "# " + "Item" + vbTab.ToString() + "Rate" + vbTab.ToString() + "Qty" + vbTab.ToString() + "Total" + vbTab.ToString() + "Desc."
displayString += vbNewLine
displayString += "---------------------------------------"
displayString += vbNewLine
Dim dblGrossTot As Double
Dim dblDiscount As Double
Dim dblNetTotal As Double
Dim dblPaid As Double
Dim dblBalRetuned As Double
'Iterate loop for each row of the Data Set.
dblDiscount = dt.Rows(0)("LineDiscount")
dblNetTotal = dt.Rows(0)("TranValue")
dblPaid = dt.Rows(0)("Paid")
dblBalRetuned = dt.Rows(0)("BalanceReturned")
If dt.Rows.Count > 0 Then
Dim k As Integer
Dim n As Integer
k = dt.Rows.Count - 1
n = 1
Do While Not k < 0
Dim strItemCode As String
Dim strItemName As String
Dim dblRate As Double
Dim dblQty As Double
Dim dblLineTotal As Double
strItemCode = dt.Rows(k)("ItemNumber")
strItemName = dt.Rows(k)("Description")
dblRate = FormatNumber(dt.Rows(k)("RegPrice"), 2)
dblQty = -dt.Rows(k)("Qty")
dblLineTotal = dblQty * dblRate
dblGrossTot = dblGrossTot + dblLineTotal
displayString += ESC4 + n.ToString + " "
displayString += strItemCode + " "
displayString += FormatNumber(dblRate.ToString, 2) + " " + dblQty.ToString + vbTab.ToString() + vbTab.ToString() + FormatNumber(dblLineTotal.ToString, 2)
displayString += ESC + vbNewLine
displayString += ESC + strItemName + vbTab.ToString()
displayString += ESC + vbNewLine
k = k - 1
n = n + 1
Loop
displayString += "---------------------------------------"
displayString += vbNewLine
displayString += ESC4 + "GROSS TOTAL :" + vbTab.ToString() + vbTab.ToString() + FormatNumber(dblGrossTot.ToString, 2)
displayString += vbNewLine
displayString += ESC4 + "DISCOUNT :" + vbTab.ToString() + vbTab.ToString() + FormatNumber(-dblDiscount.ToString, 2)
displayString += vbNewLine
displayString += ESC4 + "NET TOTAL :" + vbTab.ToString() + vbTab.ToString() + FormatNumber(dblNetTotal.ToString, 2)
displayString += vbNewLine
displayString += "---------------------------------------"
displayString += vbNewLine
displayString += ESC4 + "PAID :" + vbTab.ToString() + vbTab.ToString() + FormatNumber(dblPaid.ToString, 2)
displayString += vbNewLine
displayString += ESC4 + "BAL. RETUNED :" + vbTab.ToString() + vbTab.ToString() + FormatNumber(dblBalRetuned.ToString, 2)
displayString += vbNewLine
displayString += vbNewLine
displayString += ESC1 + "Thank You for shopping"
displayString += vbNewLine
displayString += vbNewLine
displayString += vbNewLine
displayString += vbNewLine
displayString += vbNewLine
displayString += vbNewLine
displayString += vbNewLine
displayString += vbNewLine
ADRport.Open()
ADRport.Write(displayString)
ADRport.Close()
End If
Catch ex As Exception
MsgBox(ex.ToString())
End Try
这篇关于VB.net pos收据打印的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!