Sub Page_Load(Sender As object, e As EventArgs)\r
Dim restrictions() As String = New String(2) {}\r
Dim ColumnInfo As DataTable\r
+ Dim ColumnObj\r
+ Dim colname as String, colname0 as String, datatype as String\r
\r
- TableName = trim(request.querystring("id"))\r
- if app.OpenGrid(dbViewer) then\r
-\r
+ TableName = trim(request.querystring("tabid"))\r
+ if app.OpenGrid(dbViewer) AndAlso TableName<>"" then\r
+ \r
restrictions(2)=TableName\r
ColumnInfo = app.dbConnection.GetSchema ("Columns", restrictions)\r
\r
- Dim colname as String, colname0 as String, datatype as String\r
+ dbViewer.Tables.Add(new Rico.Table("[" & TableName & "]"))\r
+ dbViewer.requestParameters.Add("tabid",TableName) ' need to get the table name back so we can define columns every during every AJAX call\r
+\r
For Each colinfo As DataRow In ColumnInfo.Rows\r
colname=colinfo("COLUMN_NAME").ToString\r
datatype=colinfo("DATA_TYPE").ToString\r
if IsNothing(colname0) then colname0=colname\r
if IsNumeric(datatype) then datatype=ADOColType(datatype)\r
\r
- Dim ColumnObj as New Rico.Column()\r
if InStr(1,datatype,"binary",1) > 0 or left(datatype,3)="???" or datatype="image" then\r
+ ColumnObj = New Rico.FormulaCol()\r
ColumnObj.Formula = "'?'"\r
else\r
+ ColumnObj = New Rico.TableCol()\r
ColumnObj.ColName = colname\r
end if\r
ColumnObj.Heading=colname\r
ColumnObj.width=100\r
- if InStr(1,datatype,"DATETIME",1) > 0 then ColumnObj.DataType="datetime"\r
+ if InStr(1,datatype,"DATETIME",1) > 0 then ColumnObj.DataType=Rico.Column.DataTypeValues.date\r
dbViewer.AddColumn(ColumnObj)\r
Next\r
dbViewer.DefaultSort = colname0\r
- dbViewer.TableName = "[" & TableName & "]"\r
\r
end if\r
End Sub\r