以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  请指教,图片中所述的错误是什么意思?怎么解决?  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=80706)

--  作者:yzxdz750626
--  发布时间:2016/1/29 16:33:00
--  请指教,图片中所述的错误是什么意思?怎么解决?
图片点击可在新窗口打开查看请指教
图片点击可在新窗口打开查看此主题相关图片如下:chuwu.png
图片点击可在新窗口打开查看
,图片中所述的错误是什么意思?该怎么解决?还请各位大侠不吝赐教!
[此贴子已经被作者于2016/1/29 16:35:24编辑过]

--  作者:大红袍
--  发布时间:2016/1/29 16:34:00
--  
上传图参考,看不到你的图
--  作者:yzxdz750626
--  发布时间:2016/1/29 16:37:00
--  
已上图!请赐教!图片点击可在新窗口打开查看
--  作者:大红袍
--  发布时间:2016/1/29 16:40:00
--  
那你在全局代码那里,是不是也定义了一个叫做 GetPY 的函数?
--  作者:yzxdz750626
--  发布时间:2016/1/29 16:42:00
--  
getpy这个是狐表里本身就带有的一个汉字转拼音的一个函数啊!还需要在全局里设置么?
--  作者:大红袍
--  发布时间:2016/1/29 16:43:00
--  

你把bin文件夹删除,然后重新打开项目看看。

 

还不行,做个例子发上来。


--  作者:yzxdz750626
--  发布时间:2016/1/29 16:46:00
--  
Select e.DataCol.Name
    Case "计划完成日期","员工姓名"
        If e.DataRow.IsNull("计划完成日期") OrElse e.DataRow.IsNull("员工姓名") Then
            e.DataRow("计划编号") = Nothing
        Else
            Dim na As String = e.DataRow("员工姓名")
            Dim d As Date = e.DataRow("计划完成日期")
            Dim y As Integer = d.Year
            Dim m As Integer = d.Month
            Dim Days As Integer = Date.DaysInMonth(y,m)
            Dim fd As Date = New Date(y,m,1)
            Dim ld As Date = New Date(y,m,Days)
            Dim bh As String ="MP-" & GetPY(na,True).PadRight(3,"0") & "-" & Format(d,"yyyyMM") & "-"
            If e.DataRow("计划编号").StartsWith(bh) = False
                Dim max As String
                Dim idx As Integer
                Dim flt As String
                flt = "员工姓名 = \'"& na & "\' And 计划完成日期 >= #" & fd & "# And 计划完成日期 <= #" & ld & "# And [_Identify] <> " & e.DataRow("_Identify")
                max = e.DataTable.Compute("Max(计划编号)",flt) 
                If max > "" Then
                    idx = CInt(max.Substring(14,3)) + 1
                Else
                    idx = 1
                End If
                e.DataRow("计划编号") = bh & Format(idx,"000")
                e.DataRow("年份")=y
                e.DataRow("月份")=m
            End If
        End If
End Select
上面这个就是我在表事件的DATACOLCHANGED写的代码,你看一下,这个是不是正确。这个代码刚开始的候都很正常,但我把这个表指向外部数据库后,就出问题了。

--  作者:大红袍
--  发布时间:2016/1/29 16:48:00
--  

 你在全局代码那里写有代码吗?全部删除掉。

 

 同时把bin文件夹删除掉。


--  作者:yzxdz750626
--  发布时间:2016/1/29 17:03:00
--  
呵呵,按照你的方法,还是出现这个问题,连其他表的代码也出现什么USERCODE问题了!
--  作者:大红袍
--  发布时间:2016/1/29 17:06:00
--  

你是否引用了什么其余的dll文件?删除那些dll引用。

 

不行,就上传项目测试。