以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  [求助]自动复制行时数据格式错误?  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=100288)

--  作者:samlzc
--  发布时间:2017/5/8 22:15:00
--  [求助]自动复制行时数据格式错误?
对于订单表有以下DataColChanged代码

Dim dr As DataRow = e.DataRow
Select Case e.DataCol.Name 
    Case "内部产品","成本单价","成本数量"
        If e.DataRow("内部产品") <> 0 AndAlso e.DataRow("成本单价") >=0 AndAlso e.DataRow("成本数量") >0 Then

Dim nma() As String = {"内部产品","日期","客户编号","订单编号","成本数量","成本单价","产品名称"} \'A表数据来源列
    Dim nmb() As String = {"内部产品","日期","客户编号","订单编号","成本数量","成本单价","产品名称"} \'B表数据接收列
    dr  = DataTables("出库明细").AddNew
    For i As Integer = 0 To nma.Length - 1
        dr(nmb(i)) = e.DataRow(nma(i))
    Next
End If
End Select

"内部产品","日期","客户编号","订单编号","成本数量","成本单价","产品名称"的数据格式分别有字符、单精度小数、日期

执行时显示错误
.NET Framework 版本:2.0.50727.5472
Foxtable 版本:2017.3.18.1
错误所在事件:表,cbb,DataColChanged
详细错误信息:
调用的目标发生了异常。
从字符串“鸭”到类型“Double”的转换无效。(其中鸭时内部产品的输入值)
输入字符串的格式不正确。

以上问题如何修改。

请问如果对于当前行,复制完成后,修改数据。如何对于表B的复制行进行实时修改,使其等于当前表当前行?

谢谢!





--  作者:有点蓝
--  发布时间:2017/5/8 22:29:00
--  
If e.DataRow.isnull("内部产品") = false AndAlso e.DataRow("成本单价") >=0 AndAlso e.DataRow("成本数量") >0 Then
--  作者:samlzc
--  发布时间:2017/5/9 0:55:00
--  
谢谢版主,那对于复制成功的行,如何保持与原始行一致。即原来行数据修改后,同步更改复制出来的行


--  作者:有点色
--  发布时间:2017/5/9 8:38:00
--  
以下是引用samlzc在2017/5/9 0:55:00的发言:
谢谢版主,那对于复制成功的行,如何保持与原始行一致。即原来行数据修改后,同步更改复制出来的行

 

参考设计

 

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