以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  关于修改其他表的数据  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=60324)

--  作者:信达
--  发布时间:2014/11/22 19:00:00
--  关于修改其他表的数据

Select e.DataCol.Name
    Case "项目","计划编号"
        If e.DataCol.Name = "项目" OrElse e.DataCol.Name = "计划编号" Then
            Dim dr As DataRow
            Dim Filter As String
            Filter = "[项目] = \'" & e.DataRow("项目") & "\' And [计划编号] = \'" & e.DataRow("计划编号") & "\'"
            dr = DataTables("订单").Find(Filter ) \'在行政区域表查找所输入项目和计划编号的行
            If dr IsNot Nothing Then \'如果找到
                \'将找到行的图号?部件名称?计划数量?单价?客户简称?内容填入到正在输入的行中.
                e.DataRow("图号") = dr("图号")
                e.DataRow("部件名称") = dr("部件名称")
                e.DataRow("计划数量") = dr("计划数量")
                e.DataRow("单价") = dr("单价")
                e.DataRow("客户简称") = dr("客户简称")
            Else
                \'否则清除图号?部件名称?计划数量?单价?客户简称的内容
                e.DataRow("图号") = Nothing
                e.DataRow("部件名称") = Nothing
                e.DataRow("计划数量") = Nothing
                e.DataRow("单价") = Nothing
                e.DataRow("客户简称") = Nothing
            End If
        End If
    Case "同意修改"  \'如果订单修改审批通过
        DataTables("订单").ReplaceFor("计划数量", e.DataRow("修改计划数量"), "[同意修改] = True")
End Select

 

哪位高手指点一下,倒数第二句是不是有问题?为什么显示找不到“同意修改”列?

我想进行的动作是:当订单修改审批通过,锁定的订单行“计划数量”将变成“修改计划数量”


--  作者:y2287958
--  发布时间:2014/11/22 21:31:00
--  
请问“订单”表中存在“同意修改”这列吗
--  作者:有点甜
--  发布时间:2014/11/23 9:24:00
--  
 订单表必须有此列,才能此条件的 "[同意修改] = True"
--  作者:信达
--  发布时间:2014/11/23 20:56:00
--  

开始我以为可能不认逻辑列,就删除改为字符列,结果还是不认。所以,如果不是程序写的问题,会不会是有Bug?


图片点击可在新窗口打开查看此主题相关图片如下:spximage.jpg
图片点击可在新窗口打开查看

--  作者:有点甜
--  发布时间:2014/11/23 20:57:00
--  

 不可能是bug。

 

 如果你改成了字符列,就这样写 "[同意修改] = \'True\'"

 

 再不行,你做个例子上传上来


--  作者:信达
--  发布时间:2014/11/23 21:40:00
--  

例子已上传。就是修改订单表格,在给修改订单列打勾的时候出错。

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目12.table


--  作者:信达
--  发布时间:2014/11/23 21:45:00
--  
还有一个问题就是在给订单添加新行,而子表检测到没有记录的时候,自动新添行。也执行不了。请老师帮忙看看。
--  作者:有点甜
--  发布时间:2014/11/23 21:45:00
--  
    Case "同意修改"  \'如果订单修改审批通过
        DataTables("订单").ReplaceFor("计划数量",e.DataRow("修改计划数量"),"计划编号 = \'" & e.DataRow("计划编号") & "\'")

--  作者:信达
--  发布时间:2014/11/23 21:56:00
--  
报错的问题是解决了。但是订单中的计划数量并没有被修改。我希望的动作是,修改订单审批通过,修改计划数量将写入订单的计划数量中。
--  作者:有点甜
--  发布时间:2014/11/23 22:00:00
--  
有改啊,根据计划编号改啊