pb 如何用USB的小票打印机打印

ilearn 2012-03-27 05:19:18
现在用LPT的小票打印机越来越少,都改用USB的了,除了映射端口,还有什么办法实现?

if li_printer = 1 then //POS58打印机
//*************** 逐行打印***********// -------ylx 2003.04.21
li_FileNum = FileOpen("LPT1",LineMode!, Write!, LockWrite!, Append!)
FileWrite(li_FileNum,char(27)+char(112)+char(48)+char(49)+char(49))
FileWrite(li_FileNum,char(27)+char(33)+char(48)+str_com_name)
FileWrite(li_FileNum,char(27)+char(33)+char(0))
PDStr_w='收银员:'+print.made_name+'单号:'+print.list_no
FileWrite(li_FileNum,PDStr_w)
FileWrite(li_FileNum,'产品编号/名称/规格/生产企业/批号')
FileWrite(li_FileNum,'销售数量 单价(元) 金额(元)')
FileWrite(li_FileNum,'================================')
for i=1 to dw_2.rowcount()
FileWrite(li_FileNum,dw_2.getitemstring(i,'prod_no')+'/'+dw_2.getitemstring(i,'prod_name')+'/'+dw_2.getitemstring(i,'prod_size')+'/'+dw_2.getitemstring(i,'inv_sub_prod_add')+'/'+dw_2.getitemstring(i,'batch_no'))
// FileWrite(li_FileNum,'批号: '+ dw_2.getitemstring(i,'inv_sub_prod_add'))
FileWrite(li_FileNum,f_space(string(dw_2.getitemnumber(i,'inv_num'),"0.0"))+' '+f_space2(string(dw_2.getitemnumber(i,'sell_price'),"0.00"))+' '+f_space2(string(dw_2.getitemnumber(i,'je'),"0.00")))
if i<dw_2.rowcount() then
FileWrite(li_FileNum,'----------------------------')
end if
next
FileWrite(li_FileNum,'================================')
FileWrite(li_FileNum,'原价金额:(RMB) '+string(print.rj_money, "0.00" )+'元')
FileWrite(li_FileNum,'实收金额:(RMB) '+string(print.All_money , "0.00" )+'元')
FileWrite(li_FileNum,'付款金额:(RMB) '+string(double(sle_2.text) , "0.00" )+'元')
FileWrite(li_FileNum,'找回金额:(RMB) '+string(double(sle_3.text) , "0.00" )+'元')

FileWrite(li_FileNum,String(Today(), "m/d/yy hh:mm"))
FileWrite(li_FileNum,str_com_tel)
FileWrite(li_FileNum,str_com_add)
for i =1 to 4
FileWrite(li_FileNum,'')
next
FileClose(li_FileNum)
//*************** 逐行打印***********//
elseif li_printer= 2 then //TM-U210A打印机
//*************** 逐行打印***********// -------ylx 2003.04.21
pdstr=char(2)+char(77)
com_send(pdstr,len(pdstr))
li_FileNum = FileOpen("LPT1",LineMode!, Write!, LockWrite!, Append!)
FileWrite(li_FileNum,char(27)+char(112)+char(48)+char(49)+char(49))
FileWrite(li_FileNum,char(27)+char(75)+char(48))
FileWrite(li_FileNum,char(27)+char(75)+char(48))
FileWrite(li_FileNum,char(27)+char(75)+char(48))
FileWrite(li_FileNum,char(28)+char(33)+char(12)+str_com_name)
FileWrite(li_FileNum,char(28)+char(33)+char(0))
PDStr_w=' 收银员:'+print.made_name+' 单号:'+print.list_no
FileWrite(li_FileNum,char(28)+char(33)+char(0)+PDStr_w)
FileWrite(li_FileNum,' 日期:'+String(Today(), "m/d/yy hh:mm"))
FileWrite(li_FileNum,'产品编号/名称/规格/生产企业/批号')
FileWrite(li_FileNum,'销售数量 单价(元) 金额(元)')
FileWrite(li_FileNum,'========================================')
for i=1 to dw_2.rowcount()
FileWrite(li_FileNum,dw_2.getitemstring(i,'prod_no')+'/'+dw_2.getitemstring(i,'prod_name')+'/'+dw_2.getitemstring(i,'prod_size')+'/'+dw_2.getitemstring(i,'inv_sub_prod_add')+'/'+dw_2.getitemstring(i,'batch_no'))
FileWrite(li_FileNum,f_space(string(dw_2.getitemnumber(i,'inv_num'),"0.0"))+' '+f_space2(string(dw_2.getitemnumber(i,'sell_price'),"0.00"))+' '+f_space2(string(dw_2.getitemnumber(i,'je'),"0.00")))
if i<dw_2.rowcount() then
FileWrite(li_FileNum,'-----------------------------------')
end if
next
FileWrite(li_FileNum,'========================================')
FileWrite(li_FileNum,' 应收金额(RMB): '+string(print.All_money , "0.00" )+'元')
FileWrite(li_FileNum,' 付款金额(RMB): '+string(double(sle_2.text) , "0.00" )+'元')
FileWrite(li_FileNum,' 找回金额(RMB): '+string(double(sle_3.text) , "0.00" )+'元')
...全文
1119 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
阿斯克 2013-05-02
  • 打赏
  • 举报
回复
想看下有人回答,结果没看到,╮(╯▽╰)╭
zhangyangziwo 2013-04-15
  • 打赏
  • 举报
回复
谁有好的解决方案?
huwenfeng2001hf 2012-12-09
  • 打赏
  • 举报
回复
一个是以字符打印,一个是图形打印,速度是不一样的。不过我习惯是建立打印任务
txchen 2012-04-24
  • 打赏
  • 举报
回复
dw.print()?
你比较一下两种方式打印的速度和效果吧。别开玩笑了。
wangjunshcn 2012-03-29
  • 打赏
  • 举报
回复
dw.print()
北京大丸子 2012-03-29
  • 打赏
  • 举报
回复
用dw的打印很方便,如果你的打印机是像银行那种专业的打印设备,就要看设备api了
ych12333 2012-03-28
  • 打赏
  • 举报
回复
对头。
SKY_4K_PPM 2012-03-28
  • 打赏
  • 举报
回复
没有这么复杂吧
dw_1.print()就搞定了
打印机设定的话,主要纸张的设定。
winnet 2012-03-27
  • 打赏
  • 举报
回复
为什么不用DW打呢?

1,075

社区成员

发帖
与我相关
我的任务
社区描述
PowerBuilder 相关问题讨论
社区管理员
  • 基础类社区
  • WorldMobile
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧