Changed asp and dotnet examples to use css sprites instead of images. Changed dotnet...
[infodrom/rico3] / examples / dotnet / RicoDbViewerDetail.aspx
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
6 \r
7 <script runat="server">\r
8 Dim TableName as String\r
9 \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
13   Dim columnlist as String\r
14 \r
15   TableName = trim(request.querystring("id"))\r
16   if app.OpenDB() then\r
17 \r
18     restrictions(2)=TableName\r
19     ColumnInfo = app.dbConnection.GetSchema ("Columns", restrictions)\r
20 \r
21     Dim colname as String, colname0 as String, datatype as String\r
22     For Each colinfo As DataRow In ColumnInfo.Rows\r
23       colname=colinfo("COLUMN_NAME").ToString\r
24       datatype=colinfo("DATA_TYPE").ToString\r
25       if IsNothing(colname0) then colname0=colname\r
26       if IsNumeric(datatype) then datatype=ADOColType(datatype)\r
27       if not IsNothing(columnlist) then\r
28         columnlist=columnlist & ","\r
29       end if\r
30       if InStr(1,datatype,"binary",1) > 0 or left(datatype,3)="???" or datatype="image" then\r
31         columnlist=columnlist & "'?'"\r
32       else\r
33         columnlist=columnlist & colname\r
34       end if\r
35       Dim ColumnObj as New Rico.Column()\r
36       ColumnObj.Heading=colname\r
37       ColumnObj.width=100\r
38       if InStr(1,datatype,"DATETIME",1) > 0 then ColumnObj.DataType="datetime"\r
39       dbViewer.AddColumn(ColumnObj)\r
40     Next\r
41     dbViewer.sqlQuery="select " & columnlist & " from [" & TableName & "] order by " & colname0\r
42 \r
43   end if\r
44 End Sub\r
45 \r
46 Function ADOColType(typenum)\r
47   select case typenum\r
48     case 2,3,16,17,18,19,20,21,139: ADOColType="INT"\r
49     case 7,133,134,135: ADOColType="DATETIME"\r
50     case 129,130:   ADOColType="CHAR"\r
51     case 8,200,202: ADOColType="VARCHAR"\r
52     case 201,203:   ADOColType="TEXT"\r
53     case 4,5,6,14:  ADOColType="FLOAT"\r
54     case 11:        ADOColType="BOOLEAN"\r
55     case else:      ADOColType="???" & typenum\r
56   end select\r
57 End Function\r
58 \r
59 </script>\r
60 \r
61 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">\r
62 <html>\r
63 <head>\r
64 <title>Rico LiveGrid-DB Viewer</title>\r
65 \r
66 <Rico:LoadClient checkQueryString='true' runat='server' />\r
67 <link href="../demo.css" type="text/css" rel="stylesheet" />\r
68 <style type="text/css">\r
69 html { border: none; }\r
70 div.ricoLG_cell {\r
71   white-space:nowrap;\r
72 }\r
73 </style>\r
74 </head>\r
75 \r
76 <body>\r
77 \r
78 <p><strong><%=TableName%></strong>\r
79 <Rico:LiveGrid runat='server' id='dbViewer' highlightElem='cursorRow' menuEvent='click' >\r
80 <GridColumns>\r
81 </GridColumns>\r
82 </Rico:LiveGrid>\r
83 \r
84 </body>\r
85 </html>\r