以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- [求助]第 1 行: '=' 附近有语法错误 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=123432) |
-- 作者:samlzc -- 发布时间:2018/8/14 16:34:00 -- [求助]第 1 行: '=' 附近有语法错误 .NET Framework 版本:2.0.50727.8784 Foxtable 版本:2018.7.28.1 错误所在事件: 详细错误信息: 第 1 行: \'=\' 附近有语法错误。 表格通过服务器同步数据 会弹出这个错误。 但是不知道具体是事件出现问题。请问如何解决
|
-- 作者:有点甜 -- 发布时间:2018/8/14 16:53:00 -- 你执行了什么代码?贴出来看看。
|
-- 作者:samlzc -- 发布时间:2018/8/14 18:22:00 -- 我也不清楚现在是什么代码有问题, 因为是这几天突然会出现。 然后我用备份文件,从新做了一次更新,但还是会出现这种情况。 错误所在事件: 详细错误信息: 怎么会不显示在哪里错误呢 |
-- 作者:有点甜 -- 发布时间:2018/8/14 18:26:00 -- 执行了什么操作,操作会触发什么代码? |
-- 作者:samlzc -- 发布时间: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 之间 请问是什么问题
|
-- 作者:有点蓝 -- 发布时间:2018/9/4 20:28:00 -- 应该不是dr.Load()的问题。这个事件完整的代码贴出来看看 |
-- 作者:samlzc -- 发布时间: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编辑过]
|
-- 作者:有点蓝 -- 发布时间: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 -- 发布时间:2018/9/5 9:51:00 -- 这样测试后,新增行的追载是无问题的 但是修改就还是一样 执行 1 2 出现错误 点击关闭 3 而且修改的内容没有更新 dr.load() 应该没运行
|
-- 作者:有点甜 -- 发布时间:2018/9/5 10:02:00 -- 回复9楼,是不是执行 DataTables("xxx").Load 都会报错?
如果是,去看看表格的afterLoad事件、currentChanged事件代码。 |