VB.net pos收据打印 [英] VB.net pos receipt print

查看:82
本文介绍了VB.net pos收据打印的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

您好!



我有这样的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屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆