Dim X As new SQLJoinTableBuilder("AAA","FM")
'X.C '不知道什么原因,会显示为XC,本来是显示连接外部表的名称ConnectionName
Dim Cols1() As String = {"PID","CID"}
Dim Cols2() As String = {"PID","ID"}
Dim Cols3() As String = {"PID","BID"}
X.AddTable("FM",Cols1,"CON",Cols2)
X.AddTable("CON",Cols3,"B",Cols2)
X.Filter = "{CON}.PID = 'P001'"
X.AddCols("{CON}.PID", "{CON}.ID","Type","AP","V","FMType","{B}.Title")
Dim Y As new CrossTableBuilder("BB",X.BuildSQL,"CS001")
Y.HGroups.AddDef("Title") ‘------Y.HGroups.AddDef("Title","Title","名称“) ,试了一下,好象这样在交叉表的界面上还是显示Title而不是名称
Y.HGroups.AddDef("AP") ‘------Y.HGroups.AddDef("AP","AP","月份“) ,,试了一下,好象这样在交叉表的界面上还是显示AP而不是月份
Y.VGroups.AddDef("FMType")
Y.Totals.Adddef("V","本次")
Y.Totals.AddDef("V", "合计", True)
Y.Filter = "PID = 'P001' and Type = 1"
Dim tbl As Table = e.Form.Controls("Table1").Table
tbl.DataSource = Y.BuildDataSource()
Dim CurDT As DataTable = tbl.DataTable
‘--------想用这种方式来重构表标题,也不行,下面这种方法只是将AP列显示为了月份,Title列还是不能显示为“名称"
For i As Integer = 1 To CurDT.DataCols.count - 1
CurDT.DataCols(i).Caption = CurDT.DataCols(i).Caption.Replace("1","AAA").Replace("2","BBB").Replace("Title","名称").Replace("AP","月份")
Next
CurDT.BuildHeader
我是希望在窗口中的table1中,Title列显示为"名称“,AP列显示为"月份"
请教:问题出在哪里呢?难道是因为这个的区别?
X.AddCols("{CON}.PID", "{CON}.ID","Type","AP","V","FMType","{B}.Title")
补充:试了一下Replace("Type","分类"),可以成功,但{CON}.PID、{CON}.ID、{B}.Title都不行
pu
[此贴子已经被作者于2015/6/2 23:08:45编辑过]