Foxtable(狐表)用户栏目专家坐堂 → [求助]代码报错,生成的统计表也不对


  共有2092人关注过本帖平板打印复制链接

主题:[求助]代码报错,生成的统计表也不对

帅哥哟,离线,有人找我吗?
xndd
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:二尾狐 帖子:523 积分:4373 威望:0 精华:0 注册:2014/11/26 15:23:00
[求助]代码报错,生成的统计表也不对  发帖心情 Post By:2018/12/14 11:06:00 [只看该作者]

甜版好!

我创建了一张表,然后给这张表里面填充数据,结果数据填充的不对,麻烦看看,谢谢

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目1.foxdb


我做到了一个函数里面,总是报错

代码:

'生产计划金额累计
'取出
Dim dr1 As DataRow
Dim jhje As Double
dr1 = DataTables("计划表").Find("[部门] = 'ORG1011' and [年份] = '2018' and [月份] = '11'")
If dr1 IsNot Nothing Then
    jhje = dr1("计划金额")
Else
    jhje = 1
End If

Dim jelist As New List(Of String)
'返回指定月份的天数
Dim tianshu As Integer = Date.DaysInMonth(Year(Date.Today),11)
Dim pgje As Double = jhje / tianshu



''''''''''''''''''''''''''''
'生成临时表
Dim dtb As New DataTableBuilder("总统计表")
dtb.AddDef("日期", Gettype(String), 32)
dtb.AddDef("计划金额累计", Gettype(String), 32)
dtb.AddDef("实际金额累计", Gettype(String), 32)
dtb.Build()

'添加数据
Dim jj As Integer
Dim zhrq As String
Dim t As Table = Tables("表B")

For jj = 1 To tianshu
    Dim dr3 As DataRow = DataTables("总统计表").AddNew()
    zhrq = Cstr(Year(Date.Today)) + "-11-" + Cstr(jj)
    dr3("日期") = zhrq
    dr3("计划金额累计") = Cstr(pgje*jj)
    For Each r As Row In t.Rows
        If CDate(r("日期")) = CDate(zhrq) Then
            dr3("实际金额累计") = r("实际金额累计")
        Else
            dr3("实际金额累计") = Cstr(pgje*jj)    
        End If
    Next 
Next
DataTables("总统计表").Save()


''''''''''''''''''''''''''''
'make json

Dim Arys1 As List(Of String())
Dim Arys2 As List(Of String())

Dim tjb As Table = Tables("总统计表")
Arys1 = tjb.DataTable.GetValues("日期|计划金额累计","","日期")
Arys1 = tjb.DataTable.GetValues("日期|实际金额累计","","日期")

Dim salesdata As New JObject
Dim xmlb As New JArray
Dim i As Integer
salesdata("xsjh") = xmlb

For Each Ary1 As String() In Arys1
    xmlb.Add(New Jobject)
    xmlb(i)("month") = Ary1(0).ToString
    xmlb(i)("num") = Ary1(1).ToString
    i += 1
Next

Dim salesdata2 As New JObject
Dim xmlb2 As New JArray
Dim j As Integer
j = 0
salesdata("sjxs") = xmlb2

For Each Ary2 As String() In Arys2
    xmlb2.Add(New Jobject)
    xmlb2(j)("month") = Ary2(0).ToString
    xmlb2(j)("num") = Ary2(1).ToString
    j += 1
Next

FileSys.WriteAllText("d:\data1.json",salesdata.ToString,False,Encoding.UTF8)
[此贴子已经被作者于2018/12/14 11:06:57编辑过]

 回到顶部