Foxtable(狐表)用户栏目专家坐堂 → [求助]第 1 行: '=' 附近有语法错误


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

主题:[求助]第 1 行: '=' 附近有语法错误

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


加好友 发短信
等级:幼狐 帖子:88 积分:1114 威望:0 精华:0 注册:2017/4/10 17:55:00
[求助]第 1 行: '=' 附近有语法错误  发帖心情 Post By:2018/8/14 16:34:00 [只看该作者]

.NET Framework 版本:2.0.50727.8784
Foxtable 版本:2018.7.28.1
错误所在事件:
详细错误信息:
第 1 行: '=' 附近有语法错误。

表格通过服务器同步数据 会弹出这个错误。
但是不知道具体是事件出现问题。请问如何解决

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/8/14 16:53:00 [只看该作者]

你执行了什么代码?贴出来看看。

 

 


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


加好友 发短信
等级:幼狐 帖子:88 积分:1114 威望:0 精华:0 注册:2017/4/10 17:55:00
  发帖心情 Post By:2018/8/14 18:22:00 [只看该作者]

我也不清楚现在是什么代码有问题, 因为是这几天突然会出现。
然后我用备份文件,从新做了一次更新,但还是会出现这种情况。
错误所在事件:
详细错误信息:
怎么会不显示在哪里错误呢


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/8/14 18:26:00 [只看该作者]

执行了什么操作,操作会触发什么代码?

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


加好友 发短信
等级:幼狐 帖子:88 积分:1114 威望:0 精华:0 注册:2017/4/10 17:55:00
  发帖心情 Post By:2018/9/4 18:50:00 [只看该作者]

Dim msg As String = e.Message
Dim pts() As String = msg.Split("#")
Dim a As String = pts(2)
If msg.StartsWith("U#") Then '表示修改了某行
    'Dim pts() As String = msg.Split("#")
    If pts.Length = 3 Then
        MessageBox.show(1)
        
        Dim dr As DataRow = DataTables(pts(1)).Find("[_Identify] = " & a )
        MessageBox.show(2)
        If dr IsNot Nothing  Then
            dr.Load()
            MessageBox.show(3)
        End If
    End If


现在发现错误出现在  执行到 2 和 3 之间

请问是什么问题

 回到顶部
帅哥,在线噢!
有点蓝
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:105873 积分:538422 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2018/9/4 20:28:00 [只看该作者]

应该不是dr.Load()的问题。这个事件完整的代码贴出来看看

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


加好友 发短信
等级:幼狐 帖子:88 积分:1114 威望:0 精华:0 注册:2017/4/10 17:55:00
  发帖心情 Post By:2018/9/4 21:21:00 [只看该作者]

审核.慧 2018-09-04 17:57:40     A#cbb#14466
审核.慧 2018-09-04 17:57:47     D#cbb#14466
审核.慧 2018-09-04 17:58:01     U#cbb#14463
审核.慧 2018-09-04 17:59:48     A#cbb#14467
审核.慧 2018-09-04 17:59:48     A#订单表#2375
审核.慧 2018-09-04 17:59:55     U#cbb#14467
审核.慧 2018-09-04 17:59:59     A#cbb#14468
审核.慧 2018-09-04 18:00:03     A#cbb#14469
审核.慧 2018-09-04 18:00:04     A#cbb#14470
审核.慧 2018-09-04 18:00:14     D#cbb#14470


以上是传输过来的生成的信息表

ReceivedMessage 事件
Dim drr As DataRow = DataTables("信息").AddNew
drr("发送者") = iif(e.UserName > "",e.UserName,"服务器")
drr("时间") = Date.Now()
drr("信息") = e.Message


Dim msg As String = e.Message
Dim pts() As String = msg.Split("#")
Dim a As String = pts(2)
If msg.StartsWith("U#") Then '表示修改了某行
    'Dim pts() As String = msg.Split("#")
    If pts.Length = 3 Then
        MessageBox.show(1)
        
        Dim dr As DataRow = DataTables(pts(1)).Find("[_Identify] = " & a )
        MessageBox.show(2)
        If dr IsNot Nothing  Then
            dr.Load()
            MessageBox.show(3)
        End If
    End If
ElseIf msg.StartsWith("A#") Then '表示增加了行
    'Dim pts() As String = msg.Split("#")
    If pts.Length = 3 Then
        MessageBox.show(4)
        DataTables(pts(1)).AppendLoad("[_Identify] =" & a) '追载新增加的行.
        MessageBox.show(5)
    End If
ElseIf msg.StartsWith("D#") Then '表示删除了行
    'Dim pts() As String = msg.Split("#")
    If pts.Length = 3 Then
        DataTables(pts(1)).RemoveFor("[_Identify] =" & a) '移除行
    End If
End If

结果执行 
1 正常
2  正常
弹出错误窗口:第 1 行: '=' 附近有语法错误    关闭后
3 正常
[此贴子已经被作者于2018/9/4 21:23:34编辑过]

 回到顶部
帅哥,在线噢!
有点蓝
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:105873 积分:538422 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2018/9/4 21:46:00 [只看该作者]

这样测试看看

Dim drr As DataRow = DataTables("信息").AddNew
drr("发送者") = iif(e.UserName > "",e.UserName,"服务器")
drr("时间") = Date.Now()
drr("信息") = e.Message


Dim msg As String = e.Message
Dim pts() As String = msg.Split("#")
Dim a As String = pts(2)
If msg.StartsWith("U#") Then '表示修改了某行
    'Dim pts() As String = msg.Split("#")
    If pts.Length = 3 Then
        MessageBox.show(1)
        
        Dim dr As DataRow = DataTables(pts(1)).Find("[_Identify] = " & a )
        MessageBox.show(2)
        If dr IsNot Nothing  Then
            dr.Load()
        End If
        MessageBox.show(3)
    End If
ElseIf msg.StartsWith("A#") Then '表示增加了行
    'Dim pts() As String = msg.Split("#")
    If pts.Length = 3 Then
        MessageBox.show(4)
        DataTables(pts(1)).RemoveFor("[_Identify] =" & a)
        DataTables(pts(1)).AppendLoad("[_Identify] =" & a) '追载新增加的行.
        MessageBox.show(5)
    End If
ElseIf msg.StartsWith("D#") Then '表示删除了行
    'Dim pts() As String = msg.Split("#")
    If pts.Length = 3 Then
        DataTables(pts(1)).RemoveFor("[_Identify] =" & a) '移除行
    End If
End If


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


加好友 发短信
等级:幼狐 帖子:88 积分:1114 威望:0 精华:0 注册:2017/4/10 17:55:00
  发帖心情 Post By:2018/9/5 9:51:00 [只看该作者]

这样测试后,新增行的追载是无问题的
但是修改就还是一样 
执行
1
2
出现错误  点击关闭
3

而且修改的内容没有更新   dr.load() 应该没运行

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/9/5 10:02:00 [只看该作者]

回复9楼,是不是执行 DataTables("xxx").Load 都会报错?

 

如果是,去看看表格的afterLoad事件、currentChanged事件代码。


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