Foxtable(狐表)用户栏目专家坐堂 → 请专家帮忙看一下这段代码该如何修改


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

主题:请专家帮忙看一下这段代码该如何修改

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


加好友 发短信
等级:幼狐 帖子:142 积分:1000 威望:0 精华:0 注册:2014/2/20 13:25:00
请专家帮忙看一下这段代码该如何修改  发帖心情 Post By:2014/6/5 9:56:00 [只看该作者]

对于一个表我之前为字段“到货日期”自定义了两种样式,“近期”和“逾期”,分别用黄色和红色标识,代码如下:

If e.Col.Name = "到货日期" Then
    If e.Row.IsNull("到货日期") = False Then
        If e.Row("到货日期") < = Date.Today Then
            e.Style = "逾期"
        Else
            If e.Row("到货日期") < Date.Today.AddDays(7) Then
                e.Style = "近期"
            End If
        End If
    End If
End If

但如果想加一种样式进去,即:逻辑列“是否核销”如果为“TRUE”,到货日期的样式为“已核销”,用蓝色标识,样式已经定义好,请问专家如何修改上述代码?谢谢



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


加好友 发短信
等级:贵宾 帖子:35433 积分:178530 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2014/6/5 9:59:00 [只看该作者]

If e.Col.Name = "到货日期" Then
    if e.row("是否核销") then
         e.Style =“已核销”
    else
    If e.Row.IsNull("到货日期") = False Then
        If e.Row("到货日期") < = Date.Today Then
            e.Style = "逾期"
        Else
            If e.Row("到货日期") < Date.Today.AddDays(7) Then
                e.Style = "近期"
            End If
        End If
    End If
   end if
End If

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


加好友 发短信
等级:幼狐 帖子:142 积分:1000 威望:0 精华:0 注册:2014/2/20 13:25:00
  发帖心情 Post By:2014/6/5 10:47:00 [只看该作者]

谢谢专家,试成了,挺好用的,另外想请请教一个问题,请问以下这种情况应该如何写代码:

有两个表:[采购订单主表]和[入库主表]
采购订单主表(含字段"采购合计"&"采购订单号",如:P2014001)
入库主表(含字段"入库合计"&"采购订单号"&"入库单号",如:S0001)
设计想:一个"采购订单号"可能对应多个"入库单号",如:

[入库主表]下有两条记录分别为:S0001(入库合计:5),S0002(入库合计:5),这两条记录对应的"采购订单"号均为:P2014001(采购合计:10)

我的问题是:如何在[入库主表]下"采购订单"为P2014001的若干条记录"入库合计"= [采购订单主表]下"采购订单"为P2014001的"采购合计"后,[采购订单主表]的"是否核销"自动打勾
请问是在哪个事件中实现,代码如何编写

不知道描述得够清楚吗?谢谢



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


加好友 发短信
等级:贵宾 帖子:35433 积分:178530 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2014/6/5 10:53:00 [只看该作者]

请上例子. 描述看得头晕.

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


加好友 发短信
等级:幼狐 帖子:142 积分:1000 威望:0 精华:0 注册:2014/2/20 13:25:00
  发帖心情 Post By:2014/6/5 10:57:00 [只看该作者]

好的,上传
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:boc库存及订单管理项目.zip


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


加好友 发短信
等级:幼狐 帖子:142 积分:1000 威望:0 精华:0 注册:2014/2/20 13:25:00
  发帖心情 Post By:2014/6/5 11:04:00 [只看该作者]

如果要求密码,是8888,几乎忘了

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


加好友 发短信
等级:贵宾 帖子:35433 积分:178530 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2014/6/5 11:06:00 [只看该作者]

搞不清楚你的对应关系.

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2014/6/5 11:11:00 [只看该作者]

 采购订单明细表,datacolchanged事件,代码

 

Select Case e.DataCol.Name
    Case "采购数量"
        Dim pdr As DataRow = e.DataRow.GetParentRow("采购订单主表")
        If pdr IsNot Nothing Then
            pdr("是否核销") = pdr("采购合计") = e.DataTable.Compute("sum(入库数量)", "采购订单号='" & e.DataRow("采购订单号") & "'")
        End If
End Select


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


加好友 发短信
等级:幼狐 帖子:142 积分:1000 威望:0 精华:0 注册:2014/2/20 13:25:00
  发帖心情 Post By:2014/6/5 11:12:00 [只看该作者]

就是【采购订单主表】中的一个"采购订单号",可能在采购入库【入库主表】时对应多个"入库单号",当有着同一个"采购订单号"的一个或多个"入库单号"的"入库合计"之和等于对应"采购订单号"的"采购合计"时, 【采购订单主表】中"是否核销"自动打勾

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2014/6/5 11:16:00 [只看该作者]

还需要写一下,入库明细表,datacolchanged事件,代码

 

Select Case e.DataCol.name
    Case "采购入库日期", "销售出库日期"
        If e.DataRow.isnull("采购入库日期") = False Then
            If e.DataRow.isnull("销售出库日期") = False Then
                e.DataRow("钢瓶状态") = "销售出库"
            Else
                e.DataRow("钢瓶状态") = "采购入库"
            End If
        Else
            e.DataRow("钢瓶状态") = Nothing
        End If
    Case "入库数量"
        DataTables("采购订单明细表").DataCols("采购数量").RaiseDataColChanged(e.DataRow.GetParentRow("采购订单明细表"))
End Select


 回到顶部
总数 16 1 2 下一页