Foxtable(狐表)用户栏目专家坐堂 → 老大,有个问题实在搞不定,帮忙看看


  共有11679人关注过本帖树形打印复制链接

主题:老大,有个问题实在搞不定,帮忙看看

帅哥哟,离线,有人找我吗?
唐尸三摆手
  11楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:928 积分:7769 威望:0 精华:13 注册:2008/9/1 11:58:00
  发帖心情 Post By:2011/12/23 8:11:00 [只看该作者]

呵呵,高手点拨,茅塞顿开,我原来的想法是先找出第一个开始的日期,然后后面的循环判断已经转出的数量,够51*6就再重新判断,由于是嵌套的一部分,而且前面的一个日期可能有两行数据,但是数量总计是41,所以整体上比这个还要复杂些

 回到顶部
帅哥哟,离线,有人找我吗?
唐尸三摆手
  12楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:928 积分:7769 威望:0 精华:13 注册:2008/9/1 11:58:00
  发帖心情 Post By:2011/12/23 18:01:00 [只看该作者]

帮忙看下,如果需要生成B序的明细,也就是想知道B序某天的数量是有A序哪天的数量组合而成的,有什么高见吗


 回到顶部
帅哥哟,离线,有人找我吗?
don
  13楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:八尾狐 帖子:1812 积分:12993 威望:0 精华:14 注册:2008/10/11 18:07:00
  发帖心情 Post By:2011/12/26 0:35:00 [只看该作者]

以下是引用唐尸三摆手在2011-12-23 18:01:00的发言:

帮忙看下,如果需要生成B序的明细,也就是想知道B序某天的数量是有A序哪天的数量组合而成的,有什么高见吗


Dim nr As Row

Dim fl1,fl2 As String

Dim i,sum,n,n1,n2 As Integer

Dim drs ,drs1 As New List(of DataRow)

Dim t As Table = Tables("明细表")

Dim dt As DataTable = DataTables("表A")


fl1= "顺序 = 'A'"

fl2 = "顺序 = 'B'"

drs = dt.Select(fl1,"日期")

drs1 = dt.Select(fl2,"日期")


t.DataTable.DataRows.Clear

For Each dr As DataRow In drs1

    sum = dr("数量")

    For i = n To  drs.count-1

        If sum > n1 Then

            nr = t.Addnew

            nr("ID") = dr("_Identify")

            nr("日期") = drs(i)("日期")

            nr("顺序") = "A"

            If i = 0 OrElse sum-n1> drs(i)("数量") OrElse sum<n1 Then

                nr("数量") = drs(i)("数量")

            Else

                nr("数量") = sum-n1

            End If

            sum-=n1

            n1 = nr("数量") 

        Else

            nr = t.Addnew

            nr("ID") = drs1(n2+1)("_Identify")

            nr("日期") = drs(i-1)("日期")

            nr("顺序") = "A"

            nr("数量") = iif(drs(i)("数量")<n1,drs(i-1)("数量"),drs(i)("数量"))-n1            

            n1 = nr("数量")             

            n=i

            Exit For

        End If

    Next

    n2+=1

Next

[此贴子已经被作者于2011-12-26 0:54:55编辑过]

 回到顶部
总数 13 上一页 1 2