home *** CD-ROM | disk | FTP | other *** search
/ 66.142.0.142 / 66.142.0.142.tar / 66.142.0.142 / App_Code / tblEventsinfo.vb < prev    next >
Text File  |  2015-05-13  |  26KB  |  816 lines

  1. Imports System.Data
  2. Imports System.Data.Common
  3. Imports System.Data.OleDb
  4.  
  5. '
  6. ' ASP.NET Maker 7 Project Class (Table)
  7. '
  8. Public Partial Class AspNetMaker7_tfpssnet
  9.     Inherits System.Web.UI.Page
  10.  
  11.     Public tblEvents As ctblEvents
  12.  
  13.     ' Define table class
  14.     Class ctblEvents
  15.         Inherits AspNetMakerBase
  16.         Implements IDisposable
  17.  
  18.         ' Used by system generated functions
  19.         Private RsWrk As Object, sSqlWrk As String, sWhereWrk As String
  20.  
  21.         Private arwrk As Object
  22.  
  23.         Private armultiwrk() As String
  24.  
  25.         ' Constructor
  26.         Public Sub New(ByRef APage As AspNetMakerPage)
  27.             m_Page = APage
  28.             m_ParentPage = APage.ParentPage            
  29.         End Sub
  30.  
  31.         ' Define table level constants    
  32.         Public UseTokenInUrl As Boolean = EW_USE_TOKEN_IN_URL
  33.  
  34.         ' Table variable
  35.         Public ReadOnly Property TableVar() As String
  36.             Get
  37.                 Return "tblEvents"
  38.             End Get
  39.         End Property
  40.  
  41.         ' Table name
  42.         Public ReadOnly Property TableName() As String
  43.             Get
  44.                 Return "tblEvents"
  45.             End Get
  46.         End Property
  47.  
  48.         ' Records per page        
  49.         Public Property RecordsPerPage() As Integer
  50.             Get                
  51.                 Return ew_Session(EW_PROJECT_NAME & "_" & TableVar & "_" & EW_TABLE_REC_PER_PAGE)
  52.             End Get
  53.             Set(ByVal Value As Integer)                
  54.                 ew_Session(EW_PROJECT_NAME & "_" & TableVar & "_" & EW_TABLE_REC_PER_PAGE) = Value
  55.             End Set
  56.         End Property
  57.  
  58.         ' Start record number        
  59.         Public Property StartRecordNumber() As Integer
  60.             Get                
  61.                 Return ew_Session(EW_PROJECT_NAME & "_" & TableVar & "_" & EW_TABLE_START_REC)
  62.             End Get
  63.             Set(ByVal Value As Integer)                
  64.                 ew_Session(EW_PROJECT_NAME & "_" & TableVar & "_" & EW_TABLE_START_REC) = Value
  65.             End Set
  66.         End Property
  67.  
  68.         ' Search Highlight Name
  69.         Public ReadOnly Property HighlightName() As String
  70.             Get
  71.                 Return "tblEvents_Highlight"
  72.             End Get
  73.         End Property
  74.  
  75.         ' Advanced search
  76.         Public Function GetAdvancedSearch(ByRef fld As Object) As String            
  77.             Return Convert.ToString(ew_Session(EW_PROJECT_NAME & "_" & TableVar & "_" & EW_TABLE_ADVANCED_SEARCH & "_" & fld))
  78.         End Function
  79.  
  80.         Public Sub SetAdvancedSearch(ByRef fld As Object, v As Object)            
  81.             If ew_Session(EW_PROJECT_NAME & "_" & TableVar & "_" & EW_TABLE_ADVANCED_SEARCH & "_" & fld) <> v Then
  82.                 ew_Session(EW_PROJECT_NAME & "_" & TableVar & "_" & EW_TABLE_ADVANCED_SEARCH & "_" & fld) = v
  83.             End If
  84.         End Sub
  85.  
  86.         ' Basic search keyword        
  87.         Public Property BasicSearchKeyword() As String
  88.             Get                
  89.                 Return ew_Session(EW_PROJECT_NAME & "_" & TableVar & "_" & EW_TABLE_BASIC_SEARCH)
  90.             End Get
  91.             Set(ByVal Value As String)                
  92.                 ew_Session(EW_PROJECT_NAME & "_" & TableVar & "_" & EW_TABLE_BASIC_SEARCH) = Value
  93.             End Set
  94.         End Property
  95.  
  96.         ' Basic Search Type        
  97.         Public Property BasicSearchType() As String
  98.             Get
  99.                 Return ew_Session(EW_PROJECT_NAME & "_" & TableVar & "_" & EW_TABLE_BASIC_SEARCH_TYPE)
  100.             End Get
  101.             Set(ByVal Value As String)
  102.                 ew_Session(EW_PROJECT_NAME & "_" & TableVar & "_" & EW_TABLE_BASIC_SEARCH_TYPE) = Value
  103.             End Set
  104.         End Property
  105.  
  106.         ' Search WHERE clause        
  107.         Public Property SearchWhere() As String
  108.             Get
  109.                 Return ew_Session(EW_PROJECT_NAME & "_" & TableVar & "_" & EW_TABLE_SEARCH_WHERE)
  110.             End Get
  111.             Set(ByVal Value As String)
  112.                 ew_Session(EW_PROJECT_NAME & "_" & TableVar & "_" & EW_TABLE_SEARCH_WHERE) = Value
  113.             End Set
  114.         End Property
  115.  
  116.         ' Multiple column sort
  117.         Public Sub UpdateSort(ofld, ctrl)
  118.             Dim sSortField As String, sLastSort As String, sThisSort As String, sOrderBy As String
  119.             If CurrentOrder = ofld.FldName Then
  120.                 sSortField = ofld.FldExpression
  121.                 sLastSort = ofld.Sort
  122.                 If CurrentOrderType = "ASC" OrElse CurrentOrderType = "DESC" Then
  123.                     sThisSort = CurrentOrderType
  124.                 Else
  125.                     If sLastSort = "ASC" Then sThisSort = "DESC" Else sThisSort = "ASC"
  126.                 End If
  127.                 ofld.Sort = sThisSort
  128.                 If ctrl Then
  129.                     sOrderBy = SessionOrderBy
  130.                     If sOrderBy.Contains(sSortField & " " & sLastSort) Then
  131.                         sOrderBy = sOrderBy.Replace(sSortField & " " & sLastSort, sSortField & " " & sThisSort)
  132.                     Else
  133.                         If sOrderBy <> "" Then sOrderBy = sOrderBy & ", "
  134.                         sOrderBy = sOrderBy & sSortField & " " & sThisSort
  135.                     End If
  136.                     SessionOrderBy = sOrderBy ' Save to Session
  137.                 Else
  138.                     SessionOrderBy = sSortField & " " & sThisSort ' Save to Session
  139.                 End If
  140.             Else
  141.                 If Not ctrl Then ofld.Sort = ""
  142.             End If
  143.         End Sub
  144.  
  145.         ' Session WHERE Clause        
  146.         Public Property SessionWhere() As String
  147.             Get                
  148.                 Return ew_Session(EW_PROJECT_NAME & "_" & TableVar & "_" & EW_TABLE_WHERE)
  149.             End Get
  150.             Set(ByVal Value As String)                
  151.                 ew_Session(EW_PROJECT_NAME & "_" & TableVar & "_" & EW_TABLE_WHERE) = Value
  152.             End Set
  153.         End Property
  154.  
  155.         ' Session ORDER BY        
  156.         Public Property SessionOrderBy() As String
  157.             Get                
  158.                 Return ew_Session(EW_PROJECT_NAME & "_" & TableVar & "_" & EW_TABLE_ORDER_BY)
  159.             End Get
  160.             Set(ByVal Value As String)                
  161.                 ew_Session(EW_PROJECT_NAME & "_" & TableVar & "_" & EW_TABLE_ORDER_BY) = Value
  162.             End Set
  163.         End Property
  164.  
  165.         ' Session key
  166.         Public Function GetKey(ByRef fld As Object) As Object
  167.             Return ew_Session(EW_PROJECT_NAME & "_" & TableVar & "_" & EW_TABLE_KEY & "_" & fld)
  168.         End Function
  169.  
  170.         Public Sub SetKey(ByRef fld As Object, ByRef v As Object)
  171.             ew_Session(EW_PROJECT_NAME & "_" & TableVar & "_" & EW_TABLE_KEY & "_" & fld) = v
  172.         End Sub
  173.  
  174.         ' Table level SQL
  175.         Public ReadOnly Property SqlSelect() As String
  176.             Get ' Select
  177.                 Return "SELECT * FROM [tblEvents]"
  178.             End Get
  179.         End Property
  180.  
  181.         Public ReadOnly Property SqlWhere() As String
  182.             Get ' Where
  183.                 Return ""
  184.             End Get
  185.         End Property
  186.  
  187.         Public ReadOnly Property SqlGroupBy() As String
  188.             Get ' Group By
  189.                 Return ""
  190.             End Get
  191.         End Property
  192.  
  193.         Public ReadOnly Property SqlHaving() As String
  194.             Get ' Having
  195.                 Return ""
  196.             End Get
  197.         End Property
  198.  
  199.         Public ReadOnly Property SqlOrderBy() As String
  200.             Get ' Order By
  201.                 Return ""
  202.             End Get
  203.         End Property
  204.  
  205.         ' SQL variables
  206.         Public CurrentFilter As String ' Current filter
  207.  
  208.         Public CurrentOrder As String ' Current order
  209.  
  210.         Public CurrentOrderType As String ' Current order type
  211.  
  212.         ' Get SQL
  213.         Public Function GetSQL(where As String, orderby As String) As String
  214.             Return ew_BuildSelectSql(SqlSelect, SqlWhere, SqlGroupBy, SqlHaving, SqlOrderBy, where, orderby)
  215.         End Function
  216.  
  217.         ' Table SQL
  218.         Public ReadOnly Property SQL() As String
  219.             Get
  220.                 Dim sFilter As String, sSort As String
  221.                 sFilter = CurrentFilter
  222.                 sSort = SessionOrderBy
  223.                 Return ew_BuildSelectSql(SqlSelect, SqlWhere, SqlGroupBy, SqlHaving, SqlOrderBy, sFilter, sSort)
  224.             End Get
  225.         End Property
  226.  
  227.         ' Return table SQL with list page filter
  228.         Public ReadOnly Property ListSQL() As String
  229.             Get
  230.                 Dim sFilter As String, sSort As String
  231.                 sFilter = SessionWhere
  232.                 If CurrentFilter <> "" Then
  233.                     If sFilter <> "" Then
  234.                         sFilter = "(" & sFilter & ") AND (" & CurrentFilter & ")"
  235.                     Else
  236.                         sFilter = CurrentFilter
  237.                     End If
  238.                 End If
  239.                 sSort = SessionOrderBy
  240.                 Return ew_BuildSelectSql(SqlSelect, SqlWhere, SqlGroupBy, SqlHaving, SqlOrderBy, sFilter, sSort)
  241.             End Get
  242.         End Property
  243.  
  244.         ' Return SQL for record count
  245.         Public ReadOnly Property SelectCountSQL() As String
  246.             Get
  247.                 Dim sFilter As String = SessionWhere
  248.                 If CurrentFilter <> "" Then
  249.                     If sFilter <> "" Then
  250.                         sFilter = "(" & sFilter & ") AND (" & CurrentFilter & ")"
  251.                     Else
  252.                         sFilter = CurrentFilter
  253.                     End If
  254.                 End If
  255.                 Return ew_BuildSelectSql("SELECT COUNT(*) FROM " & SqlSelect.Substring(14), SqlWhere, "", "", "", sFilter, "")
  256.             End Get
  257.         End Property        
  258.  
  259.         ' Insert
  260.         Public Function Insert(ByRef Rs As OrderedDictionary) As Integer
  261.             Dim Sql As String = ""            
  262.             Dim names As String = ""
  263.             Dim values As String = ""            
  264.             Dim value As Object
  265.             Dim fld As cField        
  266.             For Each f As DictionaryEntry In Rs
  267.                 fld = FieldByName(f.Key)
  268.                 If fld IsNot Nothing Then
  269.                     names = names & fld.FldExpression & ","
  270.                     values = values & EW_DB_SQLPARAM_SYMBOL
  271.                     If EW_DB_SQLPARAM_SYMBOL <> "?" Then values = values & fld.FldVar
  272.                     values = values & ","
  273.                 End If
  274.             Next f
  275.             If names.EndsWith(",") Then names = names.Remove(names.Length - 1)
  276.             If values.EndsWith(",") Then values = values.Remove(values.Length - 1)
  277.             If names = "" Then Return -1
  278.             Sql = "INSERT INTO [tblEvents] (" & names & ") VALUES (" & values & ")"
  279.             Dim command As OleDbCommand = Conn.GetCommand(Sql)
  280.             For Each f As DictionaryEntry In Rs
  281.                 fld = FieldByName(f.Key)
  282.                 If fld IsNot Nothing Then
  283.                     value = f.Value    
  284.                     command.Parameters.Add(fld.FldVar, fld.FldDbType).Value = value    
  285.                 End If
  286.             Next
  287.             Return command.ExecuteNonQuery()            
  288.         End Function
  289.  
  290.         ' Update
  291.         Public Function Update(ByRef Rs As OrderedDictionary) As Integer
  292.             Dim Sql As String = ""            
  293.             Dim values As String = ""            
  294.             Dim value As Object
  295.             Dim fld As cField
  296.             For Each f As DictionaryEntry In Rs
  297.                 fld = FieldByName(f.Key)
  298.                 If fld IsNot Nothing Then
  299.                     values = values & fld.FldExpression & "=" & EW_DB_SQLPARAM_SYMBOL
  300.                     If EW_DB_SQLPARAM_SYMBOL <> "?" Then values = values & fld.FldVar
  301.                     values = values & ","
  302.                 End If
  303.             Next f
  304.             If values.EndsWith(",") Then values = values.Remove(values.Length - 1)
  305.             If values = "" Then Return -1
  306.             Sql = "UPDATE [tblEvents] SET " & values
  307.             If CurrentFilter <> "" Then Sql = Sql & " WHERE " & CurrentFilter
  308.             Dim command As OleDbCommand = Conn.GetCommand(Sql)
  309.             For Each f As DictionaryEntry In Rs
  310.                 fld = FieldByName(f.Key)
  311.                 If fld IsNot Nothing Then
  312.                     value = f.Value    
  313.                     command.Parameters.Add(fld.FldVar, fld.FldDbType).Value = value
  314.                 End If
  315.             Next
  316.             Return command.ExecuteNonQuery()
  317.         End Function
  318.  
  319.         ' Delete
  320.         Public Function Delete(ByRef Rs As OrderedDictionary) As Integer
  321.             Dim Sql As String
  322.             Dim fld As cField            
  323.             Sql = "DELETE FROM [tblEvents] WHERE "
  324.             fld = FieldByName("evtID")
  325.             Sql = Sql & fld.FldExpression & "=" & ew_QuotedValue(Rs("evtID"), EW_DATATYPE_NUMBER) & " AND "
  326.             If Sql.EndsWith(" AND ") Then Sql = Sql.Remove(Sql.Length - 5)
  327.             If CurrentFilter <> "" Then    Sql = Sql & " AND " & CurrentFilter
  328.             Return Conn.Execute(Sql)
  329.         End Function
  330.  
  331.         ' Key filter for table
  332.         Private ReadOnly Property SqlKeyFilter() As String
  333.             Get
  334.                 Return "[evtID] = @evtID@"
  335.             End Get
  336.         End Property
  337.  
  338.         ' Return Key filter for table
  339.         Public ReadOnly Property KeyFilter() As String
  340.             Get
  341.                 Dim sKeyFilter As String
  342.                 sKeyFilter = SqlKeyFilter
  343.                 If Not IsNumeric(evtID.CurrentValue) Then
  344.                     sKeyFilter = "0=1" ' Invalid key
  345.                 End If
  346.                 sKeyFilter = sKeyFilter.Replace("@evtID@", ew_AdjustSql(evtID.CurrentValue)) ' Replace key value
  347.                 Return sKeyFilter
  348.             End Get
  349.         End Property
  350.  
  351.         ' Return URL
  352.         Public ReadOnly Property ReturnUrl() As String
  353.             Get ' Get referer URL automatically
  354.                 If HttpContext.Current.Request.ServerVariables("HTTP_REFERER") IsNot Nothing Then
  355.                     If ew_ReferPage() <> ew_CurrentPage() AndAlso ew_ReferPage() <> "login.aspx" Then ' Referer not same page or login page
  356.                         Dim url As String = HttpContext.Current.Request.ServerVariables("HTTP_REFERER")
  357.                         If url.Contains("?a=") Then ' Remove action
  358.                             Dim p1 As Integer = url.LastIndexOf("?a=")                            
  359.                             Dim p2 As Integer = url.IndexOf("&", p1)                            
  360.                             If p2 > -1 Then
  361.                                 url = url.Substring(0, p1 + 1) & url.Substring(p2 + 1)
  362.                             Else
  363.                                 url = url.Substring(0, p1)                                 
  364.                             End If
  365.                         End If
  366.                         ew_Session(EW_PROJECT_NAME & "_" & TableVar & "_" & EW_TABLE_RETURN_URL) = url ' Save to Session
  367.                     End If
  368.                 End If
  369.                 If ew_NotEmpty(ew_Session(EW_PROJECT_NAME & "_" & TableVar & "_" & EW_TABLE_RETURN_URL)) Then
  370.                     Return ew_Session(EW_PROJECT_NAME & "_" & TableVar & "_" & EW_TABLE_RETURN_URL)
  371.                 Else
  372.                     Return "tblEventslist.aspx"
  373.                 End If
  374.             End Get
  375.         End Property
  376.  
  377.         ' View URL
  378.         Public Function ViewUrl() As String
  379.             Return KeyUrl("tblEventsview.aspx", UrlParm(""))
  380.         End Function
  381.  
  382.         ' Add URL
  383.         Public Function AddUrl() As String
  384.             AddUrl = "tblEventsadd.aspx"
  385.             Dim sUrlParm As String
  386.             sUrlParm = UrlParm("")
  387.             If sUrlParm <> "" Then AddUrl = AddUrl & "?" & sUrlParm
  388.         End Function
  389.  
  390.         ' Edit URL
  391.         Public Function EditUrl() As String
  392.             Return KeyUrl("tblEventsedit.aspx", UrlParm(""))
  393.         End Function
  394.  
  395.         ' Inline edit URL
  396.         Public Function InlineEditUrl() As String
  397.             Return KeyUrl(ew_CurrentPage(), UrlParm("a=edit"))
  398.         End Function
  399.  
  400.         ' Copy URL
  401.         Public Function CopyUrl() As String
  402.             Return KeyUrl("tblEventsadd.aspx", UrlParm(""))
  403.         End Function
  404.  
  405.         ' Inline copy URL
  406.         Public Function InlineCopyUrl() As String
  407.             Return KeyUrl(ew_CurrentPage(), UrlParm("a=copy"))
  408.         End Function
  409.  
  410.         ' Delete URL
  411.         Public Function DeleteUrl() As String
  412.             Return KeyUrl("tblEventsdelete.aspx", UrlParm(""))
  413.         End Function
  414.  
  415.         ' Key URL
  416.         Public Function KeyUrl(url As String, parm As String) As String
  417.             Dim sUrl As String
  418.             sUrl = url & "?"
  419.             If parm <> "" Then sUrl = sUrl & parm & "&"
  420.             If Not IsDbNull(evtID.CurrentValue) Then
  421.                 sUrl = sUrl & "evtID=" & evtID.CurrentValue
  422.             Else
  423.                 Return "javascript:alert('Invalid Record! Key is null');"
  424.             End If
  425.             Return sUrl
  426.         End Function
  427.  
  428.         ' URL parm
  429.         Function UrlParm(parm As String) As String
  430.             Dim OutStr As String = ""
  431.             If UseTokenInUrl Then
  432.                 OutStr = "t=tblEvents"
  433.             End If
  434.             If parm <> "" Then
  435.                 If OutStr <> "" Then OutStr = OutStr & "&"
  436.                 OutStr = OutStr & parm
  437.             End If
  438.             Return OutStr
  439.         End Function
  440.  
  441.         ' Sort URL
  442.         Public Function SortUrl(ByRef fld As cField) As String
  443.             Dim OutStr As String = ""
  444.             If CurrentAction <> "" OrElse Export <> "" OrElse (fld.FldType = 201 OrElse fld.FldType = 203 OrElse fld.FldType = 205) Then
  445.                 OutStr = ""
  446.             Else
  447.                 OutStr = ew_CurrentPage()
  448.                 Dim sUrlParm As String
  449.                 sUrlParm = UrlParm("order=" & HttpContext.Current.Server.UrlEncode(fld.FldName) & "&ordertype=" & fld.ReverseSort)
  450.                 OutStr = OutStr & "?" & sUrlParm
  451.             End If
  452.             Return OutStr
  453.         End Function        
  454.  
  455.         ' Load rows based on filter
  456.         Public Function LoadRs(sFilter As String) As OleDbDataReader
  457.             Dim RsRows As OleDbDataReader
  458.  
  459.             ' Set up filter (SQL WHERE clause)
  460.             CurrentFilter = sFilter
  461.             Dim sSql As String = SQL()
  462.             Try
  463.                 RsRows = Conn.GetDataReader(sSql)
  464.                 If RsRows.HasRows Then
  465.                     Return RsRows
  466.                 Else
  467.                     RsRows.Close()
  468.                     RsRows.Dispose()
  469.                 End If
  470.             Catch
  471.             End Try
  472.             Return Nothing
  473.         End Function
  474.  
  475.         ' Load row values from recordset
  476.         Public Sub LoadListRowValues(ByRef RsRow As OleDbDataReader)            
  477.             evtID.DbValue = RsRow("evtID")
  478.             evtDescription.DbValue = RsRow("evtDescription")
  479.             evtIsActive.DbValue = IIf(ew_ConvertToBool(RsRow("evtIsActive")), "1", "0")
  480.             evtAllocateBilling.DbValue = IIf(ew_ConvertToBool(RsRow("evtAllocateBilling")), "1", "0")
  481.             evtBillingNotes.DbValue = RsRow("evtBillingNotes")
  482.             evtTierLevel.DbValue = RsRow("evtTierLevel")
  483.             evtOverTimePriority.DbValue = RsRow("evtOverTimePriority")
  484.         End Sub
  485.  
  486.         ' Render list row values
  487.         Public Sub RenderListRow()
  488.  
  489.             ' Row Rendering event
  490.             Row_Rendering()
  491.  
  492.             ' evtDescription
  493.             evtDescription.ViewValue = evtDescription.CurrentValue
  494.             evtDescription.CssStyle = ""
  495.             evtDescription.CssClass = ""
  496.             evtDescription.ViewCustomAttributes = ""
  497.  
  498.             ' evtIsActive
  499.             If Convert.ToString(evtIsActive.CurrentValue) = "1" Then
  500.                 evtIsActive.ViewValue = "Yes"
  501.             Else
  502.                 evtIsActive.ViewValue = "No"
  503.             End If
  504.             evtIsActive.CssStyle = ""
  505.             evtIsActive.CssClass = ""
  506.             evtIsActive.ViewCustomAttributes = ""
  507.  
  508.             ' evtAllocateBilling
  509.             If Convert.ToString(evtAllocateBilling.CurrentValue) = "1" Then
  510.                 evtAllocateBilling.ViewValue = "Yes"
  511.             Else
  512.                 evtAllocateBilling.ViewValue = "No"
  513.             End If
  514.             evtAllocateBilling.CssStyle = ""
  515.             evtAllocateBilling.CssClass = ""
  516.             evtAllocateBilling.ViewCustomAttributes = ""
  517.  
  518.             ' evtBillingNotes
  519.             evtBillingNotes.ViewValue = evtBillingNotes.CurrentValue
  520.             evtBillingNotes.CssStyle = ""
  521.             evtBillingNotes.CssClass = ""
  522.             evtBillingNotes.ViewCustomAttributes = ""
  523.  
  524.             ' evtTierLevel
  525.             evtTierLevel.ViewValue = evtTierLevel.CurrentValue
  526.             evtTierLevel.CssStyle = ""
  527.             evtTierLevel.CssClass = ""
  528.             evtTierLevel.ViewCustomAttributes = ""
  529.  
  530.             ' evtOverTimePriority
  531.             evtOverTimePriority.ViewValue = evtOverTimePriority.CurrentValue
  532.             evtOverTimePriority.CssStyle = ""
  533.             evtOverTimePriority.CssClass = ""
  534.             evtOverTimePriority.ViewCustomAttributes = ""
  535.  
  536.  
  537.             ' evtDescription
  538.             evtDescription.HrefValue = ""
  539.  
  540.             ' evtIsActive
  541.             evtIsActive.HrefValue = ""
  542.  
  543.             ' evtAllocateBilling
  544.             evtAllocateBilling.HrefValue = ""
  545.  
  546.             ' evtBillingNotes
  547.             evtBillingNotes.HrefValue = ""
  548.  
  549.             ' evtTierLevel
  550.             evtTierLevel.HrefValue = ""
  551.  
  552.             ' evtOverTimePriority
  553.             evtOverTimePriority.HrefValue = ""
  554.  
  555.  
  556.             ' Row Rendered event
  557.             Row_Rendered()
  558.         End Sub
  559.  
  560.         Public CurrentAction As String ' Current action
  561.  
  562.         Public EventCancelled As Boolean ' Event cancelled
  563.  
  564.         Public CancelMessage As String ' Cancel message
  565.  
  566.         ' Row Type
  567.         Public RowType As Integer    
  568.  
  569.         Public CssClass As String = "" ' CSS class
  570.  
  571.         Public CssStyle As String = "" ' CSS style
  572.  
  573.         Public RowClientEvents As String = "" ' Row client events
  574.  
  575.         ' Row Attribute
  576.         Public ReadOnly Property RowAttributes() As String
  577.             Get
  578.                 Dim sAtt As String = ""
  579.                 If ew_NotEmpty(CssStyle) Then
  580.                     sAtt = sAtt & " style=""" & CssStyle.Trim() & """"
  581.                 End If
  582.                 If ew_NotEmpty(CssClass) Then
  583.                     sAtt = sAtt & " class=""" & CssClass.Trim() & """"
  584.                 End If
  585.                 If m_Export = "" Then
  586.                     If ew_NotEmpty(RowClientEvents) Then
  587.                         sAtt = sAtt & " " & RowClientEvents.Trim()
  588.                     End If
  589.                 End If
  590.                 Return sAtt
  591.             End Get
  592.         End Property
  593.  
  594.         ' Export
  595.         Private m_Export As String
  596.  
  597.         Public Property Export() As String
  598.             Get
  599.                 Return m_Export
  600.             End Get
  601.             Set(ByVal Value As String)
  602.                 m_Export = Value
  603.             End Set
  604.         End Property
  605.  
  606.         ' Export Original Value
  607.         Public ExportOriginalValue As Boolean = EW_EXPORT_ORIGINAL_VALUE
  608.  
  609.         ' Export All
  610.         Public ExportAll As Boolean = EW_EXPORT_ALL
  611.  
  612.         ' Send Email
  613.         Public SendEmail As Boolean
  614.  
  615.         ' Custom Inner Html
  616.         Public TableCustomInnerHtml As Object
  617.  
  618.         '
  619.         '  Field objects
  620.         '        
  621.         Public Function FieldByName(Name As String) As Object
  622.             If Name = "evtID" Then Return evtID
  623.             If Name = "evtDescription" Then Return evtDescription
  624.             If Name = "evtIsActive" Then Return evtIsActive
  625.             If Name = "evtAllocateBilling" Then Return evtAllocateBilling
  626.             If Name = "evtBillingNotes" Then Return evtBillingNotes
  627.             If Name = "evtTierLevel" Then Return evtTierLevel
  628.             If Name = "evtOverTimePriority" Then Return evtOverTimePriority
  629.  
  630.             Return Nothing
  631.         End Function
  632.  
  633.         ' evtID
  634.         Private m_evtID As cField
  635.  
  636.         Public ReadOnly Property evtID() As cField
  637.             Get
  638.                 If m_evtID Is Nothing Then m_evtID = New cField("tblEvents", "x_evtID", "evtID", "[evtID]", 3, OleDbType.Integer, EW_DATATYPE_NUMBER,  0)
  639.                 Return m_evtID
  640.             End Get
  641.         End Property
  642.  
  643.         ' evtDescription
  644.         Private m_evtDescription As cField
  645.  
  646.         Public ReadOnly Property evtDescription() As cField
  647.             Get
  648.                 If m_evtDescription Is Nothing Then m_evtDescription = New cField("tblEvents", "x_evtDescription", "evtDescription", "[evtDescription]", 202, OleDbType.VarWChar, EW_DATATYPE_STRING, 0)
  649.                 Return m_evtDescription
  650.             End Get
  651.         End Property
  652.  
  653.         ' evtBillingNotes
  654.         Private m_evtBillingNotes As cField
  655.  
  656.         Public ReadOnly Property evtBillingNotes() As cField
  657.             Get
  658.                 If m_evtBillingNotes Is Nothing Then m_evtBillingNotes = New cField("tblEvents", "x_evtBillingNotes", "evtBillingNotes", "[evtBillingNotes]", 202, OleDbType.VarWChar, EW_DATATYPE_STRING, 0)
  659.                 Return m_evtBillingNotes
  660.             End Get
  661.         End Property
  662.  
  663.         ' evtIsActive
  664.         Private m_evtIsActive As cField
  665.  
  666.         Public ReadOnly Property evtIsActive() As cField
  667.             Get
  668.                 If m_evtIsActive Is Nothing Then m_evtIsActive = New cField("tblEvents", "x_evtIsActive", "evtIsActive", "[evtIsActive]", 11, OleDbType.Boolean, EW_DATATYPE_BOOLEAN, 0)
  669.                 Return m_evtIsActive
  670.             End Get
  671.         End Property
  672.  
  673.         ' evtIsActive
  674.         Private m_evtAllocateBilling As cField
  675.  
  676.         Public ReadOnly Property evtAllocateBilling() As cField
  677.             Get
  678.                 If m_evtAllocateBilling Is Nothing Then m_evtAllocateBilling = New cField("tblEvents", "x_evtAllocateBilling", "evtAllocateBilling", "[evtAllocateBilling]", 11, OleDbType.Boolean, EW_DATATYPE_BOOLEAN, 0)
  679.                 Return m_evtAllocateBilling
  680.             End Get
  681.         End Property
  682.  
  683.         ' evtTierLevel
  684.         Private m_evtTierLevel As cField
  685.  
  686.         Public ReadOnly Property evtTierLevel() As cField
  687.             Get
  688.                 If m_evtTierLevel Is Nothing Then m_evtTierLevel = New cField("tblEvents", "x_evtTierLevel", "evtTierLevel", "[evtTierLevel]", 3, OleDbType.Integer, EW_DATATYPE_NUMBER, 0)
  689.                 Return m_evtTierLevel
  690.             End Get
  691.         End Property
  692.  
  693.         ' evtOverTimePriority
  694.         Private m_evtOverTimePriority As cField
  695.  
  696.         Public ReadOnly Property evtOverTimePriority() As cField
  697.             Get
  698.                 If m_evtOverTimePriority Is Nothing Then m_evtOverTimePriority = New cField("tblEvents", "x_evtOverTimePriority", "evtOverTimePriority", "[evtOverTimePriority]", 3, OleDbType.Integer, EW_DATATYPE_NUMBER, 0)
  699.                 Return m_evtOverTimePriority
  700.             End Get
  701.         End Property
  702.  
  703.  
  704.  
  705.         ' Table level events
  706.         ' Recordset Selecting event
  707.         Public Sub Recordset_Selecting(ByRef filter As String) 
  708.  
  709.             ' Enter your code here    
  710.         End Sub
  711.  
  712.         ' Recordset Selected event
  713.         Public Sub Recordset_Selected(rs As DbDataReader)
  714.  
  715.             'HttpContext.Current.Response.Write("Recordset Selected")
  716.         End Sub
  717.  
  718.         ' Recordset Searching event
  719.         Public Sub Recordset_Searching(ByRef filter As String)
  720.  
  721.             ' Enter your code here
  722.         End Sub
  723.  
  724.         ' Row_Selecting event
  725.         Public Sub Row_Selecting(ByRef filter As String)
  726.  
  727.             ' Enter your code here    
  728.         End Sub
  729.  
  730.         ' Row Selected event
  731.         Public Sub Row_Selected(rs As DbDataReader)
  732.  
  733.             'HttpContext.Current.Response.Write("Row Selected")
  734.         End Sub
  735.  
  736.         ' Row Rendering event
  737.         Public Sub Row_Rendering()
  738.  
  739.             ' Enter your code here    
  740.         End Sub
  741.  
  742.         ' Row Rendered event
  743.         Public Sub Row_Rendered()
  744.  
  745.             ' To view properties of field class, use:
  746.             ' HttpContext.Current.Response.Write(<FieldName>.AsString())
  747.  
  748.         End Sub
  749.  
  750.         ' Row Inserting event
  751.         Public Function Row_Inserting(ByRef rs As OrderedDictionary) As Boolean
  752.  
  753.             ' Enter your code here
  754.             ' To cancel, set return value to False and error message to CancelMessage
  755.  
  756.             Return True
  757.         End Function
  758.  
  759.         ' Row Inserted event
  760.         Public Sub Row_Inserted(rs As OrderedDictionary)
  761.  
  762.             'HttpContext.Current.Response.Write("Row Inserted")
  763.         End Sub
  764.  
  765.         ' Row Updating event
  766.         Public Function Row_Updating(rsold As OrderedDictionary, ByRef rsnew As OrderedDictionary) As Boolean
  767.  
  768.             ' Enter your code here
  769.             ' To cancel, set return value to False and error message to CancelMessage
  770.  
  771.             Return True
  772.         End Function
  773.  
  774.         ' Row Updated event
  775.         Public Sub Row_Updated(rsold As OrderedDictionary, rsnew As OrderedDictionary)
  776.  
  777.             'HttpContext.Current.Response.Write("Row Updated")
  778.         End Sub
  779.  
  780.         ' Recordset Deleting event
  781.         Public Function Row_Deleting(rs As OrderedDictionary) As Boolean
  782.  
  783.             ' Enter your code here
  784.             ' To cancel, set return value to False and error message to CancelMessage
  785.  
  786.             Return True
  787.         End Function
  788.  
  789.         ' Recordset Deleted event
  790.         Public Sub Row_Deleted(rs As OrderedDictionary)
  791.  
  792.             'HttpContext.Current.Response.Write("Row Deleted")
  793.         End Sub
  794.  
  795.         ' Email Sending event
  796.         Public Function Email_Sending(ByRef Email As cEmail, Args As Hashtable) As Boolean
  797.  
  798.             'HttpContext.Current.Response.Write(Email.AsString())
  799.             'HttpContext.Current.Response.End()
  800.  
  801.             Return True
  802.         End Function
  803.  
  804.         ' Class terminate
  805.         Public Sub Dispose() Implements IDisposable.Dispose
  806.             If m_evtID IsNot Nothing Then m_evtID.Dispose()
  807.             If m_evtDescription IsNot Nothing Then m_evtDescription.Dispose()
  808.             If m_evtIsActive IsNot Nothing Then m_evtIsActive.Dispose()
  809.             If m_evtAllocateBilling IsNot Nothing Then m_evtAllocateBilling.Dispose()
  810.             If m_evtBillingNotes IsNot Nothing Then m_evtBillingNotes.Dispose()
  811.             If m_evtTierLevel IsNot Nothing Then m_evtTierLevel.Dispose()
  812.             If m_evtOverTimePriority IsNot Nothing Then m_evtOverTimePriority.Dispose()
  813.         End Sub
  814.     End Class
  815. End Class
  816.