1 <%@ Page Language="VB" ResponseEncoding="iso-8859-1" Debug="true" %>
\r
2 <%@ Import Namespace="System.Data" %>
\r
3 <%@ Register TagPrefix="Rico" Assembly="Rico" NameSpace="Rico" %>
\r
4 <%@ Register TagPrefix="My" TagName="dbLib" Src="dbConnect.ascx" %>
\r
5 <My:dbLib id='app' runat='server' />
\r
7 <script runat="server">
\r
8 Dim TableName as String
\r
10 Sub Page_Load(Sender As object, e As EventArgs)
\r
11 Dim restrictions() As String = New String(2) {}
\r
12 Dim ColumnInfo As DataTable
\r
14 Dim colname as String, colname0 as String, datatype as String
\r
16 TableName = trim(request.querystring("tabid"))
\r
17 if app.OpenGrid(dbViewer) AndAlso TableName<>"" then
\r
19 restrictions(2)=TableName
\r
20 ColumnInfo = app.dbConnection.GetSchema ("Columns", restrictions)
\r
22 dbViewer.Tables.Add(new Rico.Table("[" & TableName & "]"))
\r
23 dbViewer.requestParameters.Add("tabid",TableName) ' need to get the table name back so we can define columns every during every AJAX call
\r
25 For Each colinfo As DataRow In ColumnInfo.Rows
\r
26 colname=colinfo("COLUMN_NAME").ToString
\r
27 datatype=colinfo("DATA_TYPE").ToString
\r
28 if IsNothing(colname0) then colname0=colname
\r
29 if IsNumeric(datatype) then datatype=ADOColType(datatype)
\r
31 if InStr(1,datatype,"binary",1) > 0 or left(datatype,3)="???" or datatype="image" then
\r
32 ColumnObj = New Rico.FormulaCol()
\r
33 ColumnObj.Formula = "'?'"
\r
35 ColumnObj = New Rico.TableCol()
\r
36 ColumnObj.ColName = colname
\r
38 ColumnObj.Heading=colname
\r
40 if InStr(1,datatype,"DATETIME",1) > 0 then ColumnObj.DataType=Rico.Column.DataTypeValues.date
\r
41 dbViewer.AddColumn(ColumnObj)
\r
43 dbViewer.DefaultSort = colname0
\r
48 Function ADOColType(typenum)
\r
50 case 2,3,16,17,18,19,20,21,139: ADOColType="INT"
\r
51 case 7,133,134,135: ADOColType="DATETIME"
\r
52 case 129,130: ADOColType="CHAR"
\r
53 case 8,200,202: ADOColType="VARCHAR"
\r
54 case 201,203: ADOColType="TEXT"
\r
55 case 4,5,6,14: ADOColType="FLOAT"
\r
56 case 11: ADOColType="BOOLEAN"
\r
57 case else: ADOColType="???" & typenum
\r
63 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
\r
66 <title>Rico LiveGrid-DB Viewer</title>
\r
68 <Rico:LoadClient checkQueryString='true' runat='server' />
\r
69 <link href="../demo.css" type="text/css" rel="stylesheet" />
\r
70 <style type="text/css">
\r
71 html { border: none; }
\r
80 <p><strong><%=TableName%></strong>
\r
81 <Rico:LiveGrid runat='server' id='dbViewer' highlightElem='cursorRow' menuEvent='click' />
\r