以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  查看(yacity作者)库存所增加的问题(问)  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=12763)

--  作者:7032175
--  发布时间:2011/9/14 10:13:00
--  查看(yacity作者)库存所增加的问题(问)
我的问题是这个库存表里面只引用一个产品ID 如果我在加一个条件产品型号 如何在代码里加进去  请狐爸爸解决 我是一个初学者研究半天也没有研究明白
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:查看(yacity作者)库存所增加的问题(问).table


--  作者:狐狸爸爸
--  发布时间:2011/9/14 10:15:00
--  

这种情况,加产品型号是多余的,因为每个产品的产品ID都是唯一的,只需用产品ID作为条件即可。


--  作者:7032175
--  发布时间:2011/9/14 11:06:00
--  

产品ID是主要的 但是我还想在加上一个条件在代码里如何写进去 请狐爸爸 告诉我一下  这和我的工作所需要的很相似  谢谢了


--  作者:7032175
--  发布时间:2011/9/14 11:26:00
--  

狐爸爸吃饭回来一定帮我一下 谢谢 


--  作者:狐狸爸爸
--  发布时间:2011/9/14 11:45:00
--  

价格条件很简单的,假定原来的条件是:

 

Dim s As String = "产品id = \'" & dr("产品id") & "\'"

 

加上产品型号的条件:

 

Dim s As String = "产品id = \'" & dr("产品id") & "\' And 产品型号 = \'" & dr(产品型号) & "\'"

 

关于合成表达式,这里有说明:

http://www.foxtable.com/help/topics/1284.htm

 


--  作者:7032175
--  发布时间:2011/9/14 12:46:00
--  

If e.DataCol.Name ="入库" Then
    Dim dr,dr1 As DataRow
    dr = e.DataRow
    If dr.isnull("产品id") Then
        MessageBox.Show("产品id不能为空!")
    Else
        Dim s As String = "产品id = \'" & dr("产品id") & "\'And 产品型号 = \'" & dr(产品型号) & "\'"
        dr1= DataTables("仓库").find(s)
        If dr1 IsNot Nothing Then
            Dim val As Integer = dr("生产数量")
            If dr("入库") = False Then
                val = -val
            End If
            dr1("累计入库")+ = val
            dr1.Save()
        Else
            Dim Ls As String() = {"产品ID","产品名称","规格","单位"}
            dr1 = DataTables("仓库").AddNew()
            For Each s In Ls
                dr1(s) = dr(s)
            Next
            dr1("累计入库") = dr("生产数量")
            dr1.Save()
        End If
        dr.Save()
    End If
End If

 

 我这么写上去之后 显示编辑错未生明名称产品编号


--  作者:7032175
--  发布时间:2011/9/14 12:48:00
--  
恳请狐爸爸 把全文的代码帮我写一下 谢谢了 我真的搞不定了
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:查看(yacity作者)库存所增加的问题(问).table


--  作者:7032175
--  发布时间:2011/9/14 13:21:00
--  
狐爸爸有时间帮我一下谢谢
--  作者:ybil
--  发布时间:2011/9/14 13:41:00
--  
注:产品id,产品型号均改為字符型!

If e.DataCol.Name ="入库" Then
    Dim dr,dr1 As DataRow
    dr = e.DataRow
    If dr.isnull("产品id") Then
        MessageBox.Show("产品id不能为空!")
    Else
        Dim s As String = "产品id = \'" & dr("产品id") & "\'and 产品型号 = \'" &  dr("产品型号") & "\'"
        dr1= DataTables("仓库").find(s)
        If dr1 IsNot Nothing Then
            Dim val As Integer = dr("生产数量")
            If dr("入库") = False Then
                val = -val
            End If
            dr1("累计入库")+ = val
            dr1.Save()
        Else
            Dim Ls As String() = {"产品ID","产品名称","规格","单位"}
            dr1 = DataTables("仓库").AddNew()
            For Each s In Ls
                dr1(s) = dr(s)
            Next
            dr1("累计入库") = dr("生产数量")
            dr1.Save()
        End If
        dr.Save()
    End If
End If

--  作者:狐狸爸爸
--  发布时间:2011/9/14 14:56:00
--  

楼主还是老老实实看帮助文件吧,你的产品型号居然是单精度小数型,产品ID一个是字符型,一个是整数型,列类型一错,全部都会错的。

 

 

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:查看(yacity作者)库存所增加的问题(问).rar