Foxtable(狐表)用户栏目专家坐堂 → 怎么写这个代码


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

主题:怎么写这个代码

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


加好友 发短信
等级:幼狐 帖子:187 积分:1434 威望:0 精华:0 注册:2017/10/21 17:27:00
怎么写这个代码  发帖心情 Post By:2018/1/17 18:03:00 [显示全部帖子]

老师:

    我在明细账表里录入数据,同步更新到实物账表的相关列,以下是我的代码,但我现在有一个要求,就是当明细账表的摘要列如果显示"上年结转",那就不同 步账更新,实物表不作任何变动.请问老师要怎么写?

Select Case e.DataCol.name
    Case "明细账_领入起号","明细账_领入止号","明细账_领入张数","姓名","姓名","实物账_发出起号","实物账_发出止号","实物账_发出张数","明细账_今日领入张数","明细账_退piao张数","实物账_退piao张数","年","月","日","凭证_实物号","年","月","日","凭证_号","明细账_上年结转张数","实物账_上年结转张数","实物账部分_号","实物账部分_上年结转张数"
        Dim dr As DataRow = DataTables("实物账").Find("id2 = '" & e.DataRow("_Identify") & "'")
        If dr Is Nothing Then
            dr = DataTables("实物账").AddNew()
            dr("id2") = e.DataRow("_Identify")
        End If
        dr("实物账_发出起号") = e.DataRow("明细账_领入起号")
        dr("姓名") = e.DataRow("姓名")
        dr("年") = e.DataRow("年")
        dr("月") = e.DataRow("月")
        dr("日") = e.DataRow("日")
        dr("实物账_今日发出张数") = e.DataRow("明细账_今日领入张数")
        dr("实物账_退piao张数") = e.DataRow("明细账_退piao张数")
        dr("凭证_号") = e.DataRow("实物账部分_号")
        dr("引用部分") = e.DataRow("摘要_内容")
End Select


图片点击可在新窗口打开查看此主题相关图片如下:}vkoi~5~rtk9olh3`ywij`m.png
图片点击可在新窗口打开查看

 回到顶部
帅哥哟,离线,有人找我吗?
飞过海洋
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:187 积分:1434 威望:0 精华:0 注册:2017/10/21 17:27:00
  发帖心情 Post By:2018/1/17 21:12:00 [显示全部帖子]

以下是引用有点甜在2018/1/17 18:06:00的发言:

加上判断

 

If e.DataRow("摘要_内容") > "" AndAlso e.DataRow("摘要_内容") <> "上年结转" Then

    '其余代码

End If

老师:

    出现这个错误

.NET Framework 版本:2.0.50727.8762
Foxtable 版本:2017.10.26.1
错误所在事件:表,明细账表,DataColChanged
详细错误信息:
调用的目标发生了异常。
未将对象引用设置到对象的实例。


 回到顶部
帅哥哟,离线,有人找我吗?
飞过海洋
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:187 积分:1434 威望:0 精华:0 注册:2017/10/21 17:27:00
  发帖心情 Post By:2018/1/17 21:37:00 [显示全部帖子]

以下是引用有点甜在2018/1/17 21:15:00的发言:

Select Case e.DataCol.name
    Case "明细账_领入起号","明细账_领入止号","明细账_领入张数","姓名","姓名","实物账_发出起号","实物账_发出止号","实物账_发出张数","明细账_今日领入张数","明细账_退piao张数","实物账_退piao张数","年","月","日","凭证_实物号","年","月","日","凭证_号","明细账_上年结转张数","实物账_上年结转张数","实物账部分_号","实物账部分_上年结转张数"
        If e.DataRow("摘要_内容") > "" AndAlso e.DataRow("摘要_内容") <> "上年结转" Then
            Dim dr As DataRow = DataTables("实物账").Find("id2 = '" & e.DataRow("_Identify") & "'")
            If dr Is Nothing Then
                dr = DataTables("实物账").AddNew()
                dr("id2") = e.DataRow("_Identify")
            End If
            dr("实物账_发出起号") = e.DataRow("明细账_领入起号")
            dr("姓名") = e.DataRow("姓名")
            dr("年") = e.DataRow("年")
            dr("月") = e.DataRow("月")
            dr("日") = e.DataRow("日")
            dr("实物账_今日发出张数") = e.DataRow("明细账_今日领入张数")
            dr("实物账_退piao张数") = e.DataRow("明细账_退piao张数")
            dr("凭证_号") = e.DataRow("实物账部分_号")
            dr("引用部分") = e.DataRow("摘要_内容")
        End If
       
End Select

老师 :这个代码执行完,实物账,显示出有姓名的一个空行,怎么能只要接要是上年结转,实物账就没有任何同步更新?
[此贴子已经被作者于2018/1/17 21:45:31编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
飞过海洋
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:187 积分:1434 威望:0 精华:0 注册:2017/10/21 17:27:00
  发帖心情 Post By:2018/1/17 21:48:00 [显示全部帖子]

以下是引用有点甜在2018/1/17 21:43:00的发言:
执行代码,有什么问题?

老师 :这个代码执行完,实物账,显示出有姓名的一个空行,怎么能只要接要是上年结转,实物账就没有任何同步更新?


 回到顶部
帅哥哟,离线,有人找我吗?
飞过海洋
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:187 积分:1434 威望:0 精华:0 注册:2017/10/21 17:27:00
  发帖心情 Post By:2018/1/17 22:24:00 [显示全部帖子]

以下是引用有点甜在2018/1/17 22:09:00的发言:

4楼代码肯定没有问题,请认真测试。

 

看看你datarowAdded写了什么代码,贴出来看看

老师: 我这几个表是相关同步关联的.我在上年结转表属性里写的代码,可刚录入几行,其他表不就列出没意的几个空行.

请老师把这个表的表属性的代码看下.

以下是 上年结转表中的代码,

Select Case e.DataCol.name
    Case "名称","实物_上年结转张数","实物_上年结转起号","实物账_上年结转张数","实物账_领入起号","姓名"
        Dim dr As DataRow = DataTables("实物账").Find("id2 = '" & e.DataRow("_Identify") & "'")
        If dr Is Nothing Then
            dr = DataTables("实物账").AddNew()
            dr("id2") = e.DataRow("_Identify")
        End If
        dr("实物账_上年结转张数") = e.DataRow("实物_上年结转张数")
        dr("姓名") = e.DataRow("名称")
        dr("实物账_领入起号") = e.DataRow("实物_上年结转起号")
End Select
Select Case e.DataCol.name
    Case "名称","明细_上年结转张数","明细账_上年结转起号"
        Dim dr As DataRow = DataTables("明细账表").Find("id2 = '" & e.DataRow("_Identify") & "'")
        If dr Is Nothing Then
            dr = DataTables("明细账表").AddNew()
            dr("id2") = e.DataRow("_Identify")
        End If
        dr("明细账_上年结转张数") = e.DataRow("明细_上年结转张数")
        dr("姓名") = e.DataRow("名称")
        dr("明细账_领入起号") = e.DataRow("明细_上年结转起号")
End Select
Select Case e.DataCol.name
    Case "名称","总账上_上年结转张数","总账上_上年结转起号"
        Dim dr As DataRow = DataTables("总账表").Find("id2 = '" & e.DataRow("_Identify") & "'")
        If dr Is Nothing Then
            dr = DataTables("总账表").AddNew()
            dr("id2") = e.DataRow("_Identify")
        End If
        dr("总账_上年结转张数") = e.DataRow("总账上_上年结转张数")
       


图片点击可在新窗口打开查看此主题相关图片如下:y6a{)1{8u5%xrk$jz)uccya.png
图片点击可在新窗口打开查看

图片点击可在新窗口打开查看此主题相关图片如下:rl{2(rm487bf2two)neqv.png
图片点击可在新窗口打开查看
[此贴子已经被作者于2018/1/17 22:24:56编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
飞过海洋
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:187 积分:1434 威望:0 精华:0 注册:2017/10/21 17:27:00
  发帖心情 Post By:2018/1/17 22:27:00 [显示全部帖子]

老师:请仔细看一下

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:新年 - test (16).table


 回到顶部
帅哥哟,离线,有人找我吗?
飞过海洋
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:187 积分:1434 威望:0 精华:0 注册:2017/10/21 17:27:00
  发帖心情 Post By:2018/1/17 23:17:00 [显示全部帖子]

1,依次在上年结转录入不录入姓名的总账和实物账上年结转张数和起号,然后再录入姓名的明细表上年结转张数和起号!
2.在总账录入几笔,包括不包括姓名,但有领入日期,领入的起号和张数。
3.在明细账录入包括姓名的领入日期,领入的起号和张数
4.实务帐完全自动生成。
老师可以把我原来的表全部清空。再试着做以上几步。
[此贴子已经被作者于2018/1/17 23:21:19编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
飞过海洋
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:187 积分:1434 威望:0 精华:0 注册:2017/10/21 17:27:00
  发帖心情 Post By:2018/1/18 11:00:00 [显示全部帖子]

老师,您就给我编一个明细账如果摘要显示的是上年结转,就让实物账不作任何更新,在实物账上生成数据行,不做变化,其他的代码不变。

 回到顶部
帅哥哟,离线,有人找我吗?
飞过海洋
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:187 积分:1434 威望:0 精华:0 注册:2017/10/21 17:27:00
  发帖心情 Post By:2018/1/18 11:37:00 [显示全部帖子]

不是,是当明细账的摘要为上年结转时,实务然什么变化也没有什,也不增加空行!不同步变化!但摘要为其他时可以有变化。
[此贴子已经被作者于2018/1/18 11:39:20编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
飞过海洋
  10楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:187 积分:1434 威望:0 精华:0 注册:2017/10/21 17:27:00
  发帖心情 Post By:2018/1/18 13:10:00 [显示全部帖子]

以下是引用有点甜在2018/1/18 11:39:00的发言:

 

本来就是那样啊。你在明细表无论怎么编辑都不会新增啊。

老师:
     您可能不会用我的表,应该按我上面说写的4条顺序记账.我试了一下,相关的账户还是多出几个空行!
          那现在这样吧,您就给我单独编一个在明细账的代码如果的上年结转列有数据,就让实物账不作任何更新,在实物账上生成数据行,不做变化,其他的代码不变。 我把这行代码加在已经写好的代码后面.

           只写这一句代码,而其他的代码依然同步增减相关表.

[此贴子已经被作者于2018/1/18 13:24:05编辑过]

 回到顶部
总数 15 1 2 下一页