以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  修改编码  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=17405)

--  作者:caoxy
--  发布时间:2012/3/12 18:16:00
--  修改编码

师傅你好:有A表和B表,下列代码是在B表编号列中输入A表产品编号后,自动输入A表其它需要的数据。现能不能增加代码解决在A表编号列中输入产品编号后,B表编号列自动输入。请师傅帮忙,谢谢!

 

If e.DataCol.Name = "产品编号" Then
    Dim
nms() As String = {"品名","型号","规格","单价"}
    If
e.NewValue Is Nothing Then

        For
Each nm As String In nms

            e
.DataRow(nm) = Nothing

        Next

    Else

        Dim
dr As DataRow

        dr
= DataTables("产品").Find("[产品编号] = \'" & e.NewValue &
"\'")
        If
dr IsNot Nothing
            For Each
nm As String In nms
               
e.DataRow(nm) = dr(nm)
            Next
        End If
    End If
End If


--  作者:狐狸爸爸
--  发布时间:2012/3/12 18:19:00
--  

A表代码:

 

If e.DataCol.Name = "产品编号" then

   Dim dr as datarow = datatables("表B").find("产品编号= \'"  & e.NewValue & "\'")

   if dr is nothing then

      dr = datatbles("表B").AddNew

      dr("产品编号") = e.datarow("产品编号")

   end if

end if


--  作者:caoxy
--  发布时间:2012/3/12 19:06:00
--  

师傅你好:

执行上述代码后,显示表B未声明


--  作者:布莱克朱
--  发布时间:2012/3/12 20:12:00
--  
改个表名噻!
--  作者:caoxy
--  发布时间:2012/3/13 7:46:00
--  

师傅你好:

在执行下列代码过程中发生错误,

If e.DataCol.Name = "产品编号" then

   Dim dr as datarow = datatables("表B").find("产品编号= \'"  & e.NewValue & "\'")

   if dr is nothing then

      dr = datatbles("表B").AddNew

      dr("产品编号") = e.datarow("产品编号")

   end if

end if

 

datatbles未声明名称

  dr = datatbles("表B").AddNew错误码代码

请师傅帮忙修改一下,谢谢!

 


--  作者:blackzhu
--  发布时间:2012/3/13 8:03:00
--  

If e.DataCol.Name = "产品编号" then

   Dim dr as datarow = datatables("表B").find("产品编号= \'"  & e.NewValue & "\'")

   if dr is nothing then

      dim r as datarow = datatbles("表B").AddNew

      r("产品编号") = e.datarow("产品编号")

   end if

end if


--  作者:caoxy
--  发布时间:2012/3/13 9:34:00
--  

师傅你好:

上述代码用在A表,在A表中输入产品编号,B表产品编号不能自动显示,还请师傅帮忙解决,谢谢!


--  作者:caoxy
--  发布时间:2012/3/13 15:35:00
--  

师傅你好:

A表引用下列代码:

If e.DataCol.Name = "产品编号" then

   Dim dr as datarow = datatables("表B").find("产品编号= \'"  & e.NewValue & "\'")

   if dr is nothing then

      dr = datatables("表B").AddNew

      dr("产品编号") = e.datarow("产品编号")

   end if

end if

在A表产品编号列输入编号,B表产品编号列没有显示,不知是什么原因,请师傅指点,谢谢!


--  作者:hwd1987
--  发布时间:2012/3/13 16:09:00
--  

额……我觉得你可以看看代码,再看看你的表名与列名是否正确


--  作者:caoxy
--  发布时间:2012/3/13 16:26:00
--  

师傅你好:

表名和列名都不错