Fixes to some Rico 3 .net examples. Also added 2 new .net examples. Added Dojo 1...
[infodrom/rico3] / examples / dotnet / simpleNumbersDates.aspx
diff --git a/examples/dotnet/simpleNumbersDates.aspx b/examples/dotnet/simpleNumbersDates.aspx
new file mode 100644 (file)
index 0000000..0adca2f
--- /dev/null
@@ -0,0 +1,143 @@
+<%@ Page Language="VB" ResponseEncoding="utf-8" Debug="true" %>\r
+<%@ Register TagPrefix="Rico" Assembly="Rico" NameSpace="Rico" %>\r
+<%@ Register TagPrefix="My" TagName="dbLib" Src="dbConnect.ascx" %>\r
+<My:dbLib id='app' runat='server' />\r
+\r
+<script runat="server">\r
+\r
+Sub Page_Load(Sender As object, e As EventArgs)\r
+  \r
+  Dim d1 as new DateTime(2010,1,6,5,47,3)\r
+  Dim d2 as new DateTime(2010,6,15,10,15,0)\r
+  Dim d3 as new DateTime(2010,12,25,20,5,33)\r
+  Dim keys As ICollection = NumberFormats.Styles.Keys\r
+  Dim keysArray(keys.Count - 1) As String\r
+  keys.CopyTo(keysArray, 0)\r
+  Array.Sort(keysArray)\r
+  Dim s As Rico.Style\r
+  For Each key As String in KeysArray\r
+      s = NumberFormats.Styles(key)\r
+      if not String.IsNullOrEmpty(s.NumberFormat) then\r
+          NumberFormats.AddDataRow\r
+          NumberFormats.AddCell(new SimpleGrid.TextCell(s.NumberFormat))\r
+          select case left(s.StyleId,3)\r
+            case "Num":\r
+              NumberFormats.AddCell(new SimpleGrid.NumberCell(1234567.89, s.StyleId))\r
+              NumberFormats.AddCell(new SimpleGrid.NumberCell(-12345.6789, s.StyleId))\r
+              NumberFormats.AddCell(new SimpleGrid.NumberCell(0, s.StyleId))\r
+            case "Tel":\r
+              NumberFormats.AddCell(new SimpleGrid.NumberCell(9035551212, s.StyleId))\r
+              NumberFormats.AddCell(new SimpleGrid.NumberCell(2015551212, s.StyleId))\r
+              NumberFormats.AddCell(new SimpleGrid.NumberCell(2145551212, s.StyleId))\r
+            case "Per":\r
+              NumberFormats.AddCell(new SimpleGrid.NumberCell(0.89, s.StyleId))\r
+              NumberFormats.AddCell(new SimpleGrid.NumberCell(-0.6789, s.StyleId))\r
+              NumberFormats.AddCell(new SimpleGrid.NumberCell(0, s.StyleId))\r
+            case "Dat":\r
+              NumberFormats.AddCell(new SimpleGrid.DateTimeCell(d1, s.StyleId))\r
+              NumberFormats.AddCell(new SimpleGrid.DateTimeCell(d2, s.StyleId))\r
+              NumberFormats.AddCell(new SimpleGrid.DateTimeCell(d3, s.StyleId))\r
+          end select\r
+      end if\r
+  Next\r
+\r
+End Sub\r
+\r
+Protected Overrides Sub Render(writer as HTMLTextWriter)\r
+  select case lcase(Request.QueryString("fmt"))\r
+    case "xl":  NumberFormats.RenderExcel("NumberAndDateFormats.xml")\r
+    case "csv": NumberFormats.RenderDelimited("NumberAndDateFormats.csv")\r
+    case else:  MyBase.Render(writer)   ' output html\r
+  end select\r
+End Sub\r
+\r
+</script>\r
+\r
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">\r
+<html>\r
+<head>\r
+<title>Rico SimpleGrid-Number Formats</title>\r
+\r
+<Rico:LoadClient checkQueryString='true' runat='server' />\r
+<link href="../demo.css" type="text/css" rel="stylesheet" />\r
+\r
+\r
+<script type='text/javascript'>\r
+function ExportGridClient() {\r
+  NumberFormats['grid'].printVisible();\r
+}\r
+\r
+function ExportGridServer(ExportType) {\r
+  if (Rico.isIE) {\r
+    location.href+='&fmt='+ExportType;\r
+  } else {\r
+    window.open(location.href+'&fmt='+ExportType);\r
+  }\r
+}\r
+</script>\r
+\r
+</head>\r
+\r
+<body>\r
+\r
+<div id='explanation'>\r
+Base Library: \r
+<script type='text/javascript'>\r
+document.write(Rico.Lib+' '+Rico.LibVersion);\r
+</script>\r
+<hr>\r
+<p><strong>Rico: SimpleGrid</strong></p>\r
+<p>In Simple Grids, NumberFormat can be part of the SimpleStyle declaration and the format gets applied to cells of type DateTimeCell and NumberCell. \r
+This example shows how the various formats get applied to dates and numbers -- and demonstrates how they match the formats exported to Excel.</p>\r
+<p>The formats generally follow the rules for Excel custom formats, with the following exceptions:\r
+<ul>\r
+<li>Months must be upper case (M, MM, MMM, MMMM)\r
+<li>Hours in 12-hour format must be lower case (h, hh) and include the "AM/PM" designator. \r
+    Hours in 24-hour format must be upper case (H, HH) and must not include the "AM/PM" designator.\r
+<li>Nothing involving square brackets [] is supported (colors, ranges, etc). These formatting characters are also not supported: _ * ? @ /\r
+</ul>\r
+</div>\r
+\r
+\r
+<div>\r
+<button onclick="ExportGridClient()">Export from client<br>to HTML Table</button>\r
+<button onclick="ExportGridServer('xl')">Export from server<br>to Excel</button>\r
+<button onclick="ExportGridServer('csv')">Export from server<br>to CSV</button>\r
+</div>\r
+\r
+<Rico:SimpleGrid runat='server' id='NumberFormats' frozenColumns='1'>\r
+  <Rico:Style runat='server' StyleID='Number01' NumberFormat="$#,##0" HorizontalAlign="right" />\r
+  <Rico:Style runat='server' StyleID='Number02' NumberFormat="€#,##0.00" HorizontalAlign="right" />\r
+  <Rico:Style runat='server' StyleID='Number03' NumberFormat="¥#,##0.00" HorizontalAlign="right" />\r
+  <Rico:Style runat='server' StyleID='Number04' NumberFormat="0" HorizontalAlign="right" />\r
+  <Rico:Style runat='server' StyleID='Number05' NumberFormat="0.000" HorizontalAlign="right" />\r
+  <Rico:Style runat='server' StyleID='Number06' NumberFormat="#,##0,K" HorizontalAlign="right" />\r
+  <Rico:Style runat='server' StyleID='Number07' NumberFormat="0,,.000\M" HorizontalAlign="right" />\r
+  <Rico:Style runat='server' StyleID='Number08' NumberFormat='#,##0 "Dollars and" .00 "Cents"' HorizontalAlign="right" />\r
+  <Rico:Style runat='server' StyleID='Number09' NumberFormat='0.###E+0' HorizontalAlign="right" />\r
+  <Rico:Style runat='server' StyleID='Number10' NumberFormat='0.###E+000' HorizontalAlign="right" />\r
+  <Rico:Style runat='server' StyleID='Number11' NumberFormat='0.00 ;(-0.00)' HorizontalAlign="right" />\r
+  <Rico:Style runat='server' StyleID='Number12' NumberFormat='#;(#);"**Zero**"' HorizontalAlign="right" />\r
+  <Rico:Style runat='server' StyleID='Telephone' NumberFormat='(###) ###-####' HorizontalAlign="right" />\r
+  <Rico:Style runat='server' StyleID='Percent1' NumberFormat="0%" HorizontalAlign="right" />\r
+  <Rico:Style runat='server' StyleID='Percent2' NumberFormat="0.0%" HorizontalAlign="right" />\r
+  <Rico:Style runat='server' StyleID='Percent3' NumberFormat="0.#%" HorizontalAlign="right" />\r
+\r
+  <Rico:Style runat='server' StyleID='Date0' NumberFormat='yyyyMMdd' />\r
+  <Rico:Style runat='server' StyleID='Date1' NumberFormat='dddd d-M-yyyy' />\r
+  <Rico:Style runat='server' StyleID='Date2' NumberFormat='ddd MMMM d yyyy' />\r
+  <Rico:Style runat='server' StyleID='Date3' NumberFormat='HHmm' />\r
+  <Rico:Style runat='server' StyleID='Date4' NumberFormat='HHmm "hrs"' />\r
+  <Rico:Style runat='server' StyleID='Date5' NumberFormat='HH "hours and" mm "minutes"' />\r
+  <Rico:Style runat='server' StyleID='Date6' NumberFormat='h:mm AM/PM' />\r
+  <Rico:Style runat='server' StyleID='Date7' NumberFormat='d MMM yyyy HH:mm' />\r
+  <Rico:Style runat='server' StyleID='Date8' NumberFormat='MM/dd/yy hh:mm:ss am/pm' />\r
+\r
+  <Rico:SimpleCol runat='server' heading="Format" width='200' />\r
+  <Rico:SimpleCol runat='server' heading="Example 1" width='200' />\r
+  <Rico:SimpleCol runat='server' heading="Example 2" width='200' />\r
+  <Rico:SimpleCol runat='server' heading="Example 3" width='200' />\r
+</Rico:SimpleGrid>\r
+\r
+</body>\r
+</html>\r