Rss & SiteMap

Foxtable(狐表) http://www.foxtable.com

新一代数据库软件,完美融合Access、Foxpro、Excel、vb.net之优势,人人都能掌握的快速软件开发工具!
共12 条记录, 每页显示 10 条, 页签: [1] [2]
[浏览完整版]

标题:跨年结转

1楼
g1j2h3 发表于:2025/1/14 14:28:00
我想从2024年12月份的结存转成2025年的上年结转,结果出现了错误,恳求大师指导

图片点击可在新窗口打开查看此主题相关图片如下:结转.png
图片点击可在新窗口打开查看

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:新建 文本文档.txt


2楼
有点蓝 发表于:2025/1/14 14:39:00
调试技巧:http://www.foxtable.com/webhelp/scr/1485.htm,看哪一句代码出错
3楼
g1j2h3 发表于:2025/1/14 14:42:00
在加载2025年数据时,下边这段代码出错,不知是什么原因
Dim lst As New List(Of String)
For i As Integer = DataTables("库存信息_Table8").DataCols.Count - 1 To 8 Step - 2
    Dim ss() As String = DataTables("库存信息_Table8").DataCols(i).Caption.Split("_")
    Dim aa() As String = DataTables("库存信息_Table8").DataCols(i).Name.Split("_")
    If aa(1) = "1" Then
        DataTables("库存信息_Table8").DataCols.Add(ss(0) & "_" & ss(1) & "_结存", GetType(Integer), "IsNull([上年结转],0) + IsNull([入库数量_" & aa(1) & "],0)  - ISNULL([出库数量_" & aa(1) & "],0)")
    Else
        lst.Add(ss(0) & "_" & ss(1) & "_结存")
        DataTables("库存信息_Table8").DataCols.Add(ss(0) & "_" & ss(1) & "_结存", GetType(Integer), "IsNull([上年结转],0) + IsNull([入库数量_" & aa(1) & "],0)  - ISNULL([出库数量_" & aa(1) & "],0)")
    End If 
    
    Tables("库存信息_Table8").Cols(ss(0) & "_" & ss(1) & "_结存").Move(i + 1)
Next
4楼
有点蓝 发表于:2025/1/14 14:48:00
调试

Dim lst As New List(Of String)
msgbox(1)
For i As Integer = DataTables("库存信息_Table8").DataCols.Count - 1 To 8 Step - 2
msgbox(i)
msgbox(DataTables("库存信息_Table8").DataCols(i).Name)
msgbox(DataTables("库存信息_Table8").DataCols(i).Caption)
    Dim ss() As String = DataTables("库存信息_Table8").DataCols(i).Caption.Split("_")
    Dim aa() As String = DataTables("库存信息_Table8").DataCols(i).Name.Split("_")
    If aa(1) = "1" Then
        DataTables("库存信息_Table8").DataCols.Add(ss(0) & "_" & ss(1) & "_结存", GetType(Integer), "IsNull([上年结转],0) + IsNull([入库数量_" & aa(1) & "],0)  - ISNULL([出库数量_" & aa(1) & "],0)")
    Else
        lst.Add(ss(0) & "_" & ss(1) & "_结存")
        DataTables("库存信息_Table8").DataCols.Add(ss(0) & "_" & ss(1) & "_结存", GetType(Integer), "IsNull([上年结转],0) + IsNull([入库数量_" & aa(1) & "],0)  - ISNULL([出库数量_" & aa(1) & "],0)")
    End If 
    msgbox(ss(0) & "_" & ss(1) & "_结存")
    Tables("库存信息_Table8").Cols(ss(0) & "_" & ss(1) & "_结存").Move(i + 1)
Next
5楼
g1j2h3 发表于:2025/1/14 15:11:00
调试后,
msgbox(1)显示1
msgbox(i)显示9
msgbox(DataTables("库存信息_Table8").DataCols(i).Name)显示是上年结转
msgbox(DataTables("库存信息_Table8").DataCols(i).Caption)显示是空白
随后就出现了错误提示

6楼
有点蓝 发表于:2025/1/14 15:20:00
不理解代码就是这样的了,别人给的只会抄,如果要添加功能就会乱了。

把下面代码放到最后

DataTables("库存信息_Table8").DataCols.Add("上年结转", GetType(Integer), "")
Tables("库存信息_Table8").Cols("上年结转").Move(7)
7楼
g1j2h3 发表于:2025/1/14 15:47:00
以下是引用有点蓝在2025/1/14 15:20:00的发言:
不理解代码就是这样的了,别人给的只会抄,如果要添加功能就会乱了。

把下面代码放到最后

DataTables("库存信息_Table8").DataCols.Add("上年结转", GetType(Integer), "")
Tables("库存信息_Table8").Cols("上年结转").Move(7)

放到最后,就提示找不到上年结转列

8楼
有点蓝 发表于:2025/1/14 16:01:00
那就改这里

For i As Integer = DataTables("库存信息_Table8").DataCols.Count - 1 To
10 Step - 2
9楼
g1j2h3 发表于:2025/1/14 16:08:00
改这里也出错,我试了
10楼
有点蓝 发表于:2025/1/14 16:19:00
那就调试啊,出什么错,调试是什么结果,说啊。
共12 条记录, 每页显示 10 条, 页签: [1] [2]

Copyright © 2000 - 2018 foxtable.com Tel: 4000-810-820 粤ICP备11091905号

Powered By Dvbbs Version 8.3.0
Processed in .03516 s, 3 queries.