Foxtable(狐表)用户栏目专家坐堂 → [求助]循环打印


  共有2007人关注过本帖平板打印复制链接

主题:[求助]循环打印

帅哥哟,离线,有人找我吗?
新航程小何
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:629 积分:4786 威望:0 精华:0 注册:2014/9/17 11:34:00
[求助]循环打印  发帖心情 Post By:2015/6/25 12:05:00 [只看该作者]

各位老师,我想实现的功能是每一个二维码对应一个文本说明,而文本说明是根据生成二维码的某一列的内容作为另一表的查询条件,去找到文本说明。也就是生成一个订单行的二维码,,通过订单中“用户编号”查找到用户表中对应的“用户姓名”,将“用户姓名”,作为二维码的说明文本。我写了如下代码,但是每次生成二维码的时候,都会生成多余的二维码。请老师指点,代码怎样修改?
Dim Result As DialogResult
Dim rs As List(of Row) = Tables("订单").GetCheckedRows()
If rs.Count > 0 Then
    Dim doc As New PrintDoc
    Dim rg As prt.RenderGraphics
    Dim Bar As New BarCodeBuilder
    Bar.Symbology = Barpro.Symbology.QRCode
    Doc.Stacking = prt.StackingRulesEnum.InlineLeftToRight
    For Each r As Row In rs
        Bar.Code = "【用户编号】" & r("用户编号") & vbcrlf & "【产品批次】" & r("产品批次") & vbcrlf & "【产品名称】" & r("产品名称") 
        Bar.TextFont = New Font("微软雅黑",10.5)
        Dim  b As String=r("用户编号")
        Dim ps As List( of String) =DataTables("用户").sqlgetvalues("用户姓名","","用户编号 = '" & b & "'")
        For Each  p As String In ps
            Bar.HumanReadableText="用户姓名:" &  dr("用户姓名")
        Next
        rg = new prt.RenderGraphics
        bar.DrawOnCanvas(rg.Graphics,0,0,1)
        rg.Style.Spacing.All = 1
        Doc.Body.Children.Add(rg)
    Next
    Doc.Preview()
Else
    messagebox.show("请选择打印二维码项?")
End If

 回到顶部