以文本方式查看主题

-  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=91759)

--  作者:sdscen
--  发布时间:2016/10/18 14:34:00
--  加载失败

刚进入进销存第一次打开任何一个有加载的窗体回出现下面的错误

 

NET Framework 版本:2.0.50727.5485
Foxtable 版本:2016.7.29.1
错误所在事件:加载[销售收款单]失败!
详细错误信息:
未能启用约束。一行或多行中包含违反非空、唯一或外键约束的值。

出现错误后再打开就不会出现错误,查不出问题,是不是SQL出现了问题

 

希望有高手可以远程帮我看看,非常感谢

QQ:1041486177

 

这是销售出库的窗口加载代码

谢谢,

Dim ym As WinForm.TextBox = e.Form.Controls("页码")
Dim je As WinForm.TextBox = e.Form.Controls("金额")
Dim hjms As WinForm.TextBox = e.Form.Controls("合计米数")
DataTables("销售出库单表").LoadFilter = " 审核状态 = 0 "
DataTables("销售出库单表").Load()
If Tables("销售出库单表").Rows.Count >0 Then
    Tables("销售出库单表.销售出库单明细表").DataTable.LoadFilter = "销售单号 = \'" & Tables("销售出库单表").Current("销售单号") & "\'"
    Tables("销售出库单表.销售出库单明细表").DataTable.Load
    Dim kcxs As WinForm.TextBox = e.Form.Controls("库存显示")
    If Tables("销售出库单表.销售出库单明细表").Rows.Count > 0 Then
        je.Value = Tables("销售出库单表.销售出库单明细表").Compute("sum([金额])")
        hjms.Value = Tables("销售出库单表.销售出库单明细表").Compute("sum([米数])")
        Dim dr1 As DataRow
        dr1 = DataTables("库存表").SQLFind("产品编号 = \'" & Tables("销售出库单表.销售出库单明细表").Current("产品编号") & "\'")
        If dr1 IsNot Nothing Then
            kcxs.Value = "现在库存:" & dr1("库存米数") + dr1("未过账米数") & "米"
        Else
            kcxs.Value = "现在库存:" & 0
        End If
    Else
        kcxs.Value = "现在库存:" & 0
    End If
    Tables("销售出库单表.销售出库单明细表").AllowEdit =False
    Tables("销售出库单表").AllowEdit = False
   
    ym.Value = "还有" & " \'" & Tables("销售出库单表").Rows.Count & "\' " & "张单据未审核." & "现在是第" & " \'" & Tables("销售出库单表").Current.Index +1 & "\' " & "张"
   
End If

[此贴子已经被作者于2016/10/18 17:25:42编辑过]

--  作者:有点蓝
--  发布时间:2016/10/18 15:09:00
--  
窗口加载代码看看
--  作者:sdscen
--  发布时间:2016/10/18 17:25:00
--  

Dim ym As WinForm.TextBox = e.Form.Controls("页码")
Dim je As WinForm.TextBox = e.Form.Controls("金额")
Dim hjms As WinForm.TextBox = e.Form.Controls("合计米数")
DataTables("销售出库单表").LoadFilter = " 审核状态 = 0 "
DataTables("销售出库单表").Load()
If Tables("销售出库单表").Rows.Count >0 Then
    Tables("销售出库单表.销售出库单明细表").DataTable.LoadFilter = "销售单号 = \'" & Tables("销售出库单表").Current("销售单号") & "\'"
    Tables("销售出库单表.销售出库单明细表").DataTable.Load
    Dim kcxs As WinForm.TextBox = e.Form.Controls("库存显示")
    If Tables("销售出库单表.销售出库单明细表").Rows.Count > 0 Then
        je.Value = Tables("销售出库单表.销售出库单明细表").Compute("sum([金额])")
        hjms.Value = Tables("销售出库单表.销售出库单明细表").Compute("sum([米数])")
        Dim dr1 As DataRow
        dr1 = DataTables("库存表").SQLFind("产品编号 = \'" & Tables("销售出库单表.销售出库单明细表").Current("产品编号") & "\'")
        If dr1 IsNot Nothing Then
            kcxs.Value = "现在库存:" & dr1("库存米数") + dr1("未过账米数") & "米"
        Else
            kcxs.Value = "现在库存:" & 0
        End If
    Else
        kcxs.Value = "现在库存:" & 0
    End If
    Tables("销售出库单表.销售出库单明细表").AllowEdit =False
    Tables("销售出库单表").AllowEdit = False
   
    ym.Value = "还有" & " \'" & Tables("销售出库单表").Rows.Count & "\' " & "张单据未审核." & "现在是第" & " \'" & Tables("销售出库单表").Current.Index +1 & "\' " & "张"
   
End If

 

谢谢


--  作者:有点蓝
--  发布时间:2016/10/18 17:47:00
--  
关联表没有必要load,明细表的加载参考:http://www.foxtable.com/webhelp/scr/2228.htm

然后代码改为
Dim ym As WinForm.TextBox = e.Form.Controls("页码")
Dim je As WinForm.TextBox = e.Form.Controls("金额")
Dim hjms As WinForm.TextBox = e.Form.Controls("合计米数")
DataTables("销售出库单表").LoadFilter = " 审核状态 = 0 "
DataTables("销售出库单表").Load()
If Tables("销售出库单表").Rows.Count >0 Then
    Dim kcxs As WinForm.TextBox = e.Form.Controls("库存显示")
    If Tables("销售出库单表.销售出库单明细表").Rows.Count > 0 Then
        je.Value = Tables("销售出库单表.销售出库单明细表").Compute("sum([金额])")
        hjms.Value = Tables("销售出库单表.销售出库单明细表").Compute("sum([米数])")
        Dim dr1 As DataRow
        dr1 = DataTables("库存表").SQLFind("产品编号 = \'" & Tables("销售出库单表.销售出库单明细表").Current("产品编号") & "\'")
        If dr1 IsNot Nothing Then
            kcxs.Value = "现在库存:" & dr1("库存米数") + dr1("未过账米数") & "米"
        Else
            kcxs.Value = "现在库存:" & 0
        End If
    Else
        kcxs.Value = "现在库存:" & 0
    End If
    Tables("销售出库单表.销售出库单明细表").AllowEdit =False
    Tables("销售出库单表").AllowEdit = False
    
    ym.Value = "还有" & " \'" & Tables("销售出库单表").Rows.Count & "\' " & "张单据未审核." & "现在是第" & " \'" & Tables("销售出库单表").Current.Index +1 & "\' " & "张"
    
End If

--  作者:sdscen
--  发布时间:2016/10/18 17:50:00
--  
但它提示的是DataTables("销售出库单表").Load()这个表加载失败
--  作者:有点蓝
--  发布时间:2016/10/18 20:04:00
--  
是不是没有连接到正确的数据源?

上传你的例子看看
--  作者:sdscen
--  发布时间:2016/10/18 20:49:00
--  
我就传一个窗口可以吗
我检查过,数据源和表都是正常的
如果不正常的话,出显错误提示后就正常了,怎么解释
我把以前备份的打开看了,也是一样的问题,但以前没有这种问题,跟SQL有关系吗
能远程帮我看看吗,上传不一定能看得出问题
[此贴子已经被作者于2016/10/18 20:52:48编辑过]

--  作者:有点蓝
--  发布时间:2016/10/18 21:16:00
--  
明天联系客服远程看看
--  作者:sdscen
--  发布时间:2016/10/18 21:47:00
--  
好的,多谢