Foxtable(狐表)用户栏目专家坐堂 → 若是"打印_记账"或"打印_现金"列选择了多行,应该怎么改代码?


  共有3330人关注过本帖树形打印复制链接

主题:若是"打印_记账"或"打印_现金"列选择了多行,应该怎么改代码?

帅哥哟,离线,有人找我吗?
有点甜
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2019/5/4 9:18:00 [显示全部帖子]

打印按钮,标记一下是否已经点击打印,如 vars("打印") = true

 

在你的代码那里,判断,如果打印了,就继续循环,否则,就退出循环,如

 

For Each r As Row In Tables("仓管表窗口_出库明细表").rows
    vars("打印") = False
    If r("打印_意和") = True Then
        r("出库日期") = Nothing
        r("出库编号") = Nothing
        Forms("意和打印窗口").open
    ElseIf r("打印_统正") = True Then
        r("出库日期") = Nothing
        r("出库编号") = Nothing
        Forms("统正打印窗口").open
    ElseIf r("打印_现金") = True Then
        r("出库日期") = Nothing
        r("出库编号") = Nothing
        Forms("现金打印窗口").open
    End If
    If vars("打印") = False Then
        Exit For
    End If
Next


 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2019/5/4 11:53:00 [显示全部帖子]

For Each r As Row In Tables("仓管表窗口_出库明细表").rows
    Dim r1 As Row = r
    If r1 Is Nothing Then Return
    Dim i As Integer = 0
    If r1("打印_意和") = True Then
        i += 1
    End If
    If r1("打印_统正") = True Then
        i += 1
    End If
    If r1("打印_现金") = True Then
        i += 1
    End If
   
    If i = 1 Then
        msgbox(r.index)
        vars("打印预览") = False
        If r("打印_意和") = True Then
            r("出库日期") = Nothing
            r("出库编号") = Nothing
            Forms("意和打印窗口").open
        ElseIf r("打印_统正") = True Then
            r("出库日期") = Nothing
            r("出库编号") = Nothing
            Forms("统正打印窗口").open
        ElseIf r("打印_现金") = True Then
            r("出库日期") = Nothing
            r("出库编号") = Nothing
            Forms("现金打印窗口").open
        End If
        If vars("打印预览") = False Then
            Exit For
        End If
    End If
Next

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2019/5/4 16:29:00 [显示全部帖子]

 

[此贴子已经被作者于2019/5/4 16:30:01编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2019/5/4 16:34:00 [显示全部帖子]

 

不理解你的意思。你的编号请自己根据你的逻辑去生成。

 

 

 

 


 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2019/5/4 16:42:00 [显示全部帖子]

编码参考啊

 

http://www.foxtable.com/webhelp/scr/2403.htm

 

根据自己的逻辑编码啊


 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2019/5/4 17:27:00 [显示全部帖子]

 

不理解你说的意思,请自己先理清上面代码是什么意思,然后自己改成自己所需要的。

 

加入msgbox弹出各行代码的值看一下,是否符合自己的逻辑。


 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2019/5/4 18:11:00 [显示全部帖子]

'意和打印选择表_出库明细表模拟关联表:
Dim t1 As Table = Tables("意和打印窗口_出库明细表")
With Tables("意和打印选择表")
    If .Current Is Nothing Then
        t1.Filter = "False"
    Else
        t1.Filter = "打印_意和 = '" & .Current("打印_意和") & "'"  '整数列与单精列的区别
    End If
End With
t1.OpenView("default")
'打开窗口后,Tables("意和打印窗口_出库明细表")只显示当前选定行.

Dim d As Date
If Tables("意和打印窗口_出库明细表").Rows.Count <> 0 AndAlso  Date.TryParse(Tables("意和打印窗口_出库明细表").Current("出库日期"), d) Then
    d = d.Date
    Dim bh As String = "YH" & Format(d, "yyMMdd")
    Dim max As String
    Dim idx As Integer
    Dim fdr As DataRow = DataTables("意和打印记录表").Find("日期 = #" & d & "#")
    If fdr Is Nothing Then
        fdr = DataTables("意和打印记录表").AddNew
        fdr("日期") = d
        fdr("次数") = 0
    End If
    e.Form.Controls("出库编号").Text = bh & Format(fdr("次数") + 1, "000")
End If

'Tables("意和打印选择表.入库明细表").SetHeaderRowHeight(12)
Tables("意和打印窗口_出库明细表").SetHeaderRowHeight(22,22)

'Tables("意和打印选择表.入库明细表").Sort = "出库日期"

'自动调整行高
Dim t As Table = Tables("意和打印窗口_出库明细表")
t.AutoSizeRows
t.AllowResizeSingleRow = True

'With Tables("意和打印窗口_出库明细表")
'    .Cols("出库数量_过磅").GrandTotal = True
'    .Cols("出库金额_应收").GrandTotal = True
'    .GrandTotal = True
'End With

e.Form.controls("出库日期").text = Date.Now
e.Form.controls("开piao人").text = user.name


 回到顶部