or
<telerik:RadGrid ID=
"grdProjects"
runat=
"server"
AllowFilteringByColumn=
"True"
AllowSorting=
"True"
AutoGenerateColumns=
"False"
OnItemCreated=
"grdProjects_ItemCreated"
FilterType=
"CheckList"
GroupPanelPosition=
"Top"
ShowGroupPanel=
"True"
OnNeedDataSource=
"grdProjects_NeedDataSource"
AllowPaging=
"True"
ShowFooter=
"True"
CellSpacing=
"-1"
GridLines=
"None"
OnFilterCheckListItemsRequested=
"grdProjects_FilterCheckListItemsRequested"
>
<ClientSettings AllowDragToGroup=
"True"
ClientEvents-OnRowClick=
"openProject"
>
<Selecting AllowRowSelect=
"True"
/>
</ClientSettings>
<ItemStyle CssClass=
"popup-trigger"
/>
<AlternatingItemStyle CssClass=
"popup-trigger"
/>
<MasterTableView DataKeyNames=
"ProjectID,IsLead"
ClientDataKeyNames=
"ProjectID,IsLead"
>
<Columns>
<telerik:GridBoundColumn Visible=
"false"
DataField=
"ProjectID"
>
<ColumnValidationSettings>
<ModelErrorMessage Text=
""
></ModelErrorMessage>
</ColumnValidationSettings>
</telerik:GridBoundColumn>
<telerik:GridBoundColumn DataField=
"Title"
AutoPostBackOnFilter=
"true"
CurrentFilterFunction=
"Contains"
FilterControlWidth=
"250"
HeaderText=
"Title"
UniqueName=
"Title"
DataType=
"System.String"
Aggregate=
"Count"
FooterText=
"Total Projects:"
>
<ColumnValidationSettings>
<ModelErrorMessage Text=
""
/>
</ColumnValidationSettings>
<ItemStyle Width=
"45%"
/>
</telerik:GridBoundColumn>
<telerik:GridTemplateColumn FilterControlAltText=
"Filter ResponsibleOfficerID column"
FilterCheckListEnableLoadOnDemand =
"true"
HeaderText=
"Responsible Officer"
UniqueName=
"ResponsibleOfficerID"
DataField=
"NAME"
SortExpression=
"Name"
>
<ItemTemplate>
<table style=
"width: 100%;"
border=
"0"
cellpadding=
"0"
cellspacing=
"0"
>
<tr>
<td style=
"width: 40px;"
>
<img src=
"<%# Eval("
SThumbPath
") %>"
width=
"38px"
/></td>
<td nowrap=
"nowrap"
><%# Eval(
"NAME"
) %></td>
</tr>
</table>
</ItemTemplate>
</telerik:GridTemplateColumn>
<telerik:GridBoundColumn HeaderText=
"Template"
UniqueName=
"TemplateName"
DataField=
"TemplateName"
FilterCheckListEnableLoadOnDemand=
"true"
FilterListOptions=
"VaryByDataType"
>
<ColumnValidationSettings>
<ModelErrorMessage Text=
""
></ModelErrorMessage>
</ColumnValidationSettings>
</telerik:GridBoundColumn>
<telerik:GridBoundColumn HeaderText=
"Current Stage"
UniqueName=
"CurrentStage"
DataField=
"CurrentStage"
FilterCheckListEnableLoadOnDemand=
"true"
>
<ColumnValidationSettings>
<ModelErrorMessage Text=
""
></ModelErrorMessage>
</ColumnValidationSettings>
</telerik:GridBoundColumn>
<telerik:GridBoundColumn HeaderText=
"Status"
UniqueName=
"Status"
DataField=
"Status"
DataType=
"System.String"
SortExpression=
"Status"
FilterCheckListEnableLoadOnDemand=
"true"
>
<ColumnValidationSettings>
<ModelErrorMessage Text=
""
></ModelErrorMessage>
</ColumnValidationSettings>
</telerik:GridBoundColumn>
</Columns>
</MasterTableView>
</telerik:RadGrid>
protected
void
grdProjects_FilterCheckListItemsRequested(
object
sender, GridFilterCheckListItemsRequestedEventArgs e)
{
string
DataField = (e.Column
as
IGridDataColumn).GetActiveDataField();
var ds = ProjectModel.GetAllProjects();
switch
(DataField)
{
case
"ProjectID"
:
e.ListBox.DataSource = ds.Select(p => p.ITCProjectID).OrderBy(p => p).Distinct().ToList();
break
;
case
"Title"
:
e.ListBox.DataSource = ds.Select(p => p.Title).OrderBy(p => p).Distinct().ToList();
break
;
case
"NAME"
:
e.ListBox.DataSource = ds.Select(p => p.NAME).OrderBy(p => p).Distinct().ToList();
break
;
case
"TemplateName"
:
var list = ds.Select(p => p.TemplateName).Distinct().ToList();
list.Add(
"Project Lead"
);
list = list.OrderBy(l => {
return
l; }).ToList();
e.ListBox.DataSource = list;
break
;
}
<%@ Page Title="List of WoWs" Language="VB" MasterPageFile="~/wowsearch.master" AutoEventWireup="false" CodeFile="WoWlist.aspx.vb" Inherits="WoWlist" %>
<
asp:Content
ID
=
"Content1"
ContentPlaceHolderID
=
"head"
Runat
=
"Server"
>
<
title
>R&D Campus WoWs List</
title
>
</
asp:Content
>
<
asp:Content
ID
=
"Content2"
ContentPlaceHolderID
=
"qckSwitch"
Runat
=
"Server"
>
<
asp:HyperLink
ID
=
"HyperLink1"
runat
=
"server"
NavigateUrl
=
"~/WoWsearch.aspx"
>switch to search tool</
asp:HyperLink
>
</
asp:Content
>
<
asp:Content
ID
=
"Content3"
ContentPlaceHolderID
=
"cntBody"
Runat
=
"Server"
>
<
telerik:RadCodeBlock
ID
=
"RadCodeBlock1"
runat
=
"server"
>
<
script
type
=
"text/javascript"
>
//
<![CDATA[
var RadGrid1;
var lnkShareFilter;
lnkShareFilter = '';
function GetGridObject(sender, eventArgs) {
RadGrid1 = sender;
}
function ExportToExcel(fileName)
{
RadGrid1.get_masterTableView().exportToExcel(fileName);
}
//]]>
</
script
>
</
telerik:RadCodeBlock
>
<
telerik:RadGrid
ID
=
"RadGrid1"
runat
=
"server"
AllowFilteringByColumn
=
"True"
AllowPaging
=
"True"
AllowSorting
=
"False"
CellSpacing
=
"0"
DataSourceID
=
"sqlWoWList"
GridLines
=
"None"
PageSize
=
"20"
EnableLinqExpressions
=
"false"
Width
=
"100%"
Height
=
"100%"
>
<
ClientSettings
>
<
Scrolling
AllowScroll
=
"True"
UseStaticHeaders
=
"True"
/>
<
ClientEvents
OnGridCreated
=
"GetGridObject"
></
ClientEvents
>
</
ClientSettings
>
<
ExportSettings
ExportOnlyData
=
"true"
FileName
=
"List of WoWs"
HideStructureColumns
=
"true"
IgnorePaging
=
"true"
>
<
Excel
Format
=
"ExcelML"
/>
</
ExportSettings
>
<
MasterTableView
AutoGenerateColumns
=
"False"
DataSourceID
=
"sqlWoWList"
CommandItemDisplay
=
"Top"
>
<
NoRecordsTemplate
>
<
table
width
=
"100%"
border
=
"0"
cellpadding
=
"20"
cellspacing
=
"20"
>
<
tr
>
<
td
align
=
"center"
>
<
h2
style
=
"color:Red"
>No WoWs or SOPs found.<
br
/>Please change or reset the filter.</
h2
>
</
td
>
</
tr
>
</
table
>
</
NoRecordsTemplate
>
<
CommandItemSettings
ShowExportToExcelButton
=
"true"
ShowAddNewRecordButton
=
"false"
ShowRefreshButton
=
"false"
/>
<
CommandItemTemplate
>
<
div
id
=
"cmdContainer"
style
=
"width: 99%; padding: 10px; text-align: right;"
>
<
a
href
=
"http://teamroom.nestle.com/GLOBEISIT/PTCOrbeBPMAcademy/Induction ; Training Materials/Training and Quick Reference Materials/Campus Search QRC.pdf"
target
=
"_blank"
style
=
"padding: 5px; border: 1px solid gray; margin: 0px 5px;"
>
<
img
src
=
"../App_Themes/OneRDCampus/images/question-white.png"
style
=
"border: none; vertical-align: text-bottom;"
/> How To
</
a
>
<
a
href
=
"WoWlist.aspx"
style
=
"padding: 5px; border: 1px solid gray; margin: 0px 5px;"
>
<
img
src
=
"../App_Themes/OneRDCampus/images/filter_(delete)_16x16.gif"
style
=
"border: none; vertical-align: text-bottom;"
/> Reset filters
</
a
>
<
a
id
=
"lnkShareFilter"
onserverclick
=
"lnkShareFilter_ServerClick"
href
=
"#"
runat
=
"server"
style
=
"padding: 5px; border: 1px solid gray; margin: 0px 5px;"
>
<
img
src
=
"../App_Themes/OneRDCampus/images/bpm_email.png"
style
=
"border: none; vertical-align: text-bottom;"
/> Share filter
</
a
>
<
a
href
=
"#"
runat
=
"server"
onclick
=
"ExportToExcel('WoWlist');"
style
=
"padding: 5px; border: 1px solid gray; margin: 0px 5px;"
>
<
img
src
=
"../App_Themes/OneRDCampus/images/Export2XL.gif"
style
=
"border: none; vertical-align: text-bottom;"
/> Export to excel
</
a
>
</
div
>
</
CommandItemTemplate
>
<
Columns
>
<
telerik:GridTemplateColumn
DataField
=
"Title"
CurrentFilterFunction
=
"NoFilter"
HeaderText
=
"Title"
HeaderTooltip
=
"Title of the WoW or document (roll-over to display the purpose)"
SortExpression
=
"Title"
UniqueName
=
"Title"
FilterControlAltText
=
"Filter Title Column"
FilterListOptions
=
"AllowAllFilters"
AutoPostBackOnFilter
=
"true"
ShowFilterIcon
=
"false"
FilterControlWidth
=
"100%"
>
<
ItemTemplate
>
<
asp:HyperLink
ID
=
"HyperLink2"
runat
=
"server"
NavigateUrl='<%#Eval("myURL")%>' ToolTip='<%#Eval("Purpose")%>' Target='<%#Eval("URLTarget")%>'><%#Eval("Title")%></
asp:HyperLink
>
</
ItemTemplate
>
</
telerik:GridTemplateColumn
>
<
telerik:GridBoundColumn
DataField
=
"DiagramOwner"
CurrentFilterFunction
=
"NoFilter"
FilterControlAltText
=
"Filter DiagramOwner column"
HeaderText
=
"Owner"
ReadOnly
=
"True"
SortExpression
=
"DiagramOwner"
UniqueName
=
"DiagramOwner"
AutoPostBackOnFilter
=
"true"
ShowFilterIcon
=
"false"
FilterControlWidth
=
"100%"
HeaderTooltip
=
"Owner of the WoW or document"
>
<
HeaderStyle
Width
=
"130px"
/>
</
telerik:GridBoundColumn
>
<
telerik:GridBoundColumn
DataField
=
"Unit"
CurrentFilterFunction
=
"NoFilter"
FilterControlAltText
=
"Filter Unit column"
HeaderText
=
"Unit"
SortExpression
=
"Unit"
UniqueName
=
"Unit"
HeaderTooltip
=
"Unit that the WoW or document belongs to"
>
<
HeaderStyle
Width
=
"120px"
/>
<
FilterTemplate
>
<
telerik:RadComboBox
ID
=
"RadComboBoxUnit"
runat
=
"server"
MaxHeight
=
"200px"
Width
=
"110px"
DropDownWidth
=
"130px"
DataSourceID
=
"sqlUnits"
DataTextField
=
"Unit"
DataValueField
=
"Unit"
AppendDataBoundItems
=
"true"
SelectedValue='<%# TryCast(Container, GridItem).OwnerTableView.GetColumn("Unit").CurrentFilterValue%>'
OnClientSelectedIndexChanged="UnitIndexChanged">
<
Items
>
<
telerik:RadComboBoxItem
Text
=
"All"
/>
</
Items
>
</
telerik:RadComboBox
>
<
telerik:RadScriptBlock
ID
=
"RadScriptBlock4"
runat
=
"server"
>
<
script
type
=
"text/javascript"
>
function UnitIndexChanged(sender, args) {
var tableView = $find("<%# TryCast(Container, GridItem).OwnerTableView.ClientID%>");
tableView.filter("Unit", args.get_item().get_value(), "Contains");
lnkShareFilter &= '&Unit=' & args.get_item().get_value();
}
</
script
>
</
telerik:RadScriptBlock
>
</
FilterTemplate
>
</
telerik:GridBoundColumn
>
<
telerik:GridBoundColumn
DataField
=
"Type"
CurrentFilterFunction
=
"NoFilter"
FilterControlAltText
=
"Filter Type column"
HeaderText
=
"Type"
SortExpression
=
"Type"
UniqueName
=
"Type"
FilterControlWidth
=
"50px"
HeaderTooltip
=
"Type of WoW or document"
>
<
HeaderStyle
Width
=
"90px"
/>
<
FilterTemplate
>
<
telerik:RadComboBox
ID
=
"RadComboBoxType"
runat
=
"server"
Width
=
"80px"
DropDownWidth
=
"130px"
DataSourceID
=
"sqlTypes"
DataTextField
=
"Type"
DataValueField
=
"Type"
AppendDataBoundItems
=
"true"
SelectedValue='<%# TryCast(Container, GridItem).OwnerTableView.GetColumn("Type").CurrentFilterValue%>'
OnClientSelectedIndexChanged="TypeIndexChanged">
<
Items
>
<
telerik:RadComboBoxItem
Text
=
"All"
/>
</
Items
>
</
telerik:RadComboBox
>
<
telerik:RadScriptBlock
ID
=
"RadScriptBlock3"
runat
=
"server"
>
<
script
type
=
"text/javascript"
>
function TypeIndexChanged(sender, args) {
var tableView = $find("<%# TryCast(Container, GridItem).OwnerTableView.ClientID%>");
tableView.filter("Type", args.get_item().get_value(), "EqualTo");
}
</
script
>
</
telerik:RadScriptBlock
>
</
FilterTemplate
>
</
telerik:GridBoundColumn
>
<
telerik:GridBoundColumn
DataField
=
"Building"
CurrentFilterFunction
=
"NoFilter"
FilterControlAltText
=
"Filter by Group"
HeaderText
=
"Building/Group"
SortExpression
=
"Building"
UniqueName
=
"Building"
HeaderTooltip
=
"Campus Building or other local grouping"
>
<
HeaderStyle
Width
=
"120px"
/>
<
FilterTemplate
>
<
telerik:RadComboBox
ID
=
"RadComboBoxBuilding"
runat
=
"server"
MaxHeight
=
"200px"
Width
=
"110px"
DropDownWidth
=
"160px"
DataSourceID
=
"sqlBuildings"
DataTextField
=
"Building"
DataValueField
=
"Building"
AppendDataBoundItems
=
"true"
SelectedValue='<%# TryCast(Container, GridItem).OwnerTableView.GetColumn("Building").CurrentFilterValue%>'
OnClientSelectedIndexChanged="BuildingIndexChanged">
<
Items
>
<
telerik:RadComboBoxItem
Text
=
"All"
/>
</
Items
>
</
telerik:RadComboBox
>
<
telerik:RadScriptBlock
ID
=
"RadScriptBlock1"
runat
=
"server"
>
<
script
type
=
"text/javascript"
>
function BuildingIndexChanged(sender, args) {
var tableView = $find("<%# TryCast(Container, GridItem).OwnerTableView.ClientID%>");
tableView.filter("Building", args.get_item().get_value(), "EqualTo");
}
</
script
>
</
telerik:RadScriptBlock
>
</
FilterTemplate
>
</
telerik:GridBoundColumn
>
<
telerik:GridBoundColumn
DataField
=
"Room"
CurrentFilterFunction
=
"NoFilter"
FilterControlAltText
=
"Filter Sub-Grouping column"
HeaderText
=
"Room/Sub-Group"
SortExpression
=
"Room"
UniqueName
=
"Room"
HeaderTooltip
=
"Campus Room or other local sub-grouping"
>
<
HeaderStyle
Width
=
"140px"
/>
<
FilterTemplate
>
<
telerik:RadComboBox
ID
=
"RadComboBoxRoom"
runat
=
"server"
MaxHeight
=
"200px"
Width
=
"130px"
DropDownWidth
=
"260px"
DataSourceID
=
"sqlRooms"
DataTextField
=
"Room"
DataValueField
=
"Room"
AppendDataBoundItems
=
"true"
SelectedValue='<%# TryCast(Container, GridItem).OwnerTableView.GetColumn("Room").CurrentFilterValue%>'
OnClientSelectedIndexChanged="RoomIndexChanged">
<
Items
>
<
telerik:RadComboBoxItem
Text
=
"All"
/>
</
Items
>
</
telerik:RadComboBox
>
<
telerik:RadScriptBlock
ID
=
"RadScriptBlock2"
runat
=
"server"
>
<
script
type
=
"text/javascript"
>
function RoomIndexChanged(sender, args) {
var tableView = $find("<%# TryCast(Container, GridItem).OwnerTableView.ClientID%>");
tableView.filter("Room", args.get_item().get_value(), "EqualTo");
}
</
script
>
</
telerik:RadScriptBlock
>
</
FilterTemplate
>
</
telerik:GridBoundColumn
>
<
telerik:GridBoundColumn
DataField
=
"IsReleased"
FilterControlAltText
=
"Filter IsReleased column"
HeaderText
=
"Released"
SortExpression
=
"IsReleased"
UniqueName
=
"IsReleased"
HeaderTooltip
=
"Is the WoW or document released and publically available?"
>
<
HeaderStyle
Width
=
"55px"
/>
<
FilterTemplate
>
<
telerik:RadComboBox
ID
=
"RadComboBoxIsReleased"
runat
=
"server"
Width
=
"42px"
DropDownAutoWidth
=
"Enabled"
SelectedValue='<%# TryCast(Container, GridItem).OwnerTableView.GetColumn("IsReleased").CurrentFilterValue%>'
OnClientSelectedIndexChanged="IsReleasedIndexChanged">
<
Items
>
<
telerik:RadComboBoxItem
Text
=
"All"
/>
<
telerik:RadComboBoxItem
Text
=
"Yes"
Value
=
"Yes"
/>
<
telerik:RadComboBoxItem
Text
=
"No"
Value
=
"No"
/>
</
Items
>
</
telerik:RadComboBox
>
<
telerik:RadScriptBlock
ID
=
"RadScriptBlock5"
runat
=
"server"
>
<
script
type
=
"text/javascript"
>
function IsReleasedIndexChanged(sender, args) {
var tableView = $find("<%# TryCast(Container, GridItem).OwnerTableView.ClientID%>");
tableView.filter("IsReleased", args.get_item().get_value(), "EqualTo");
}
</
script
>
</
telerik:RadScriptBlock
>
</
FilterTemplate
>
</
telerik:GridBoundColumn
>
<
telerik:GridBoundColumn
DataField
=
"NQMSRelated"
CurrentFilterFunction
=
"NoFilter"
FilterControlAltText
=
"Filter NIMS column"
HeaderText
=
"Compliance"
SortExpression
=
"NQMSRelated"
"
UniqueName
=
"NQMSRelated"
HeaderTooltip
=
"Is the WoW or document subject to Compliance?"
>
<
HeaderStyle
Width
=
"50px"
/>
<
FilterTemplate
>
<
telerik:RadComboBox
ID
=
"RadComboBoxNQMSRelated"
runat
=
"server"
Width
=
"42px"
DropDownAutoWidth
=
"Enabled"
SelectedValue='<%# TryCast(Container, GridItem).OwnerTableView.GetColumn("NQMSRelated").CurrentFilterValue%>'
OnClientSelectedIndexChanged="NQMSRelatedIndexChanged">
<
Items
>
<
telerik:RadComboBoxItem
Text
=
"All"
/>
<
telerik:RadComboBoxItem
Text
=
"Yes"
Value
=
"Yes"
/>
<
telerik:RadComboBoxItem
Text
=
"No"
Value
=
"No"
/>
</
Items
>
</
telerik:RadComboBox
>
<
telerik:RadScriptBlock
ID
=
"RadScriptBlock6"
runat
=
"server"
>
<
script
type
=
"text/javascript"
>
function NQMSRelatedIndexChanged(sender, args) {
var tableView = $find("<%# TryCast(Container, GridItem).OwnerTableView.ClientID%>");
tableView.filter("NQMSRelated", args.get_item().get_value(), "EqualTo");
}
</
script
>
</
telerik:RadScriptBlock
>
</
FilterTemplate
>
</
telerik:GridBoundColumn
>
</
Columns
>
</
MasterTableView
>
<
GroupingSettings
CaseSensitive
=
"false"
/>
</
telerik:RadGrid
>
<
asp:SqlDataSource
ID
=
"sqlUnits"
runat
=
"server"
ConnectionString="<%$ ConnectionStrings:Hydra_DevConnectionString %>"
SelectCommand="SELECT DISTINCT [Unit] FROM [WoW_VWR_Trackers] WHERE [Unit] IS NOT NULL ORDER BY [Unit]">
</
asp:SqlDataSource
>
<
asp:SqlDataSource
ID
=
"sqlTypes"
runat
=
"server"
ConnectionString="<%$ ConnectionStrings:Hydra_DevConnectionString %>"
SelectCommand="SELECT DISTINCT [Type] FROM [WoW_VWR_Trackers] ORDER BY [Type]"></
asp:SqlDataSource
>
<
asp:SqlDataSource
ID
=
"sqlBuildings"
runat
=
"server"
ConnectionString="<%$ ConnectionStrings:Hydra_DevConnectionString %>"
SelectCommand="SELECT DISTINCT [Building] FROM [WoW_VWR_Trackers] WHERE [Building] IS NOT NULL ORDER BY [Building]">
</
asp:SqlDataSource
>
<
asp:SqlDataSource
ID
=
"sqlRooms"
runat
=
"server"
ConnectionString="<%$ ConnectionStrings:Hydra_DevConnectionString %>"
SelectCommand="SELECT DISTINCT [Room] FROM [WoW_VWR_Trackers] WHERE [Room] IS NOT NULL ORDER BY [Room]">
</
asp:SqlDataSource
>
<
asp:SqlDataSource
ID
=
"sqlWoWList"
runat
=
"server"
ConnectionString="<%$ ConnectionStrings:Hydra_DevConnectionString %>"
SelectCommand="SELECT DiagramURL AS myURL, * FROM [Hydra_Dev].[dbo].[WoW_VWR_Trackers]">
</
asp:SqlDataSource
>
</
asp:Content
>
Imports
Telerik.Web.UI
Imports
System.Diagnostics
Imports
System.Collections.Specialized.NameObjectCollectionBase
Imports
System.Net
Imports
System.IO
Imports
System.Net.Mail
Partial
Class
WoWlist
Inherits
System.Web.UI.Page
Const
lvlVerboseNone
As
Integer
= 0
Const
lvlVerboseSilent
As
Integer
= 1
Const
lvlVerboseMail
As
Integer
= 2
Const
lvlVerboseScreen
As
Integer
= 4
Const
lvlVerbose
As
Integer
= lvlVerboseSilent
Dim
ShareFilter
As
Object
Protected
Sub
Page_Load(
ByVal
sender
As
Object
,
ByVal
e
As
System.EventArgs)
Handles
Me
.Load
Dim
IsDataSyncd
As
Boolean
= CheckDataSync()
If
lvlVerbose = lvlVerboseMail
Then
SendChkMail()
End
If
If
Not
IsDataSyncd
Then
'Launch DataSync
End
If
If
Not
IsPostBack
Then
If
Request.QueryString(
"Title"
) IsNot
Nothing
Then
Dim
myTitle
As
String
= Server.UrlDecode(Request.QueryString(
"Title"
).ToString)
If
RadGrid1.MasterTableView.FilterExpression <>
""
Then
RadGrid1.MasterTableView.FilterExpression &=
" AND "
End
If
RadGrid1.MasterTableView.FilterExpression &=
"(Title LIKE '"
& myTitle &
"')"
Dim
radColumn
As
GridColumn = RadGrid1.MasterTableView.GetColumnSafe(
"Title"
)
radColumn.CurrentFilterValue = myTitle
radColumn.CurrentFilterFunction = GridKnownFunction.Contains
End
If
If
Request.QueryString(
"Owner"
) IsNot
Nothing
Then
Dim
myOwner
As
String
= Server.UrlDecode(Request.QueryString(
"Owner"
).ToString)
If
RadGrid1.MasterTableView.FilterExpression <>
""
Then
RadGrid1.MasterTableView.FilterExpression &=
" AND "
End
If
RadGrid1.MasterTableView.FilterExpression &=
"(DiagramOwner LIKE '"
& myOwner &
"')"
Dim
radColumn
As
GridColumn = RadGrid1.MasterTableView.GetColumnSafe(
"DiagramOwner"
)
radColumn.CurrentFilterValue = myOwner
radColumn.CurrentFilterFunction = GridKnownFunction.Contains
End
If
If
Request.QueryString(
"Building"
) IsNot
Nothing
Then
Dim
myBuilding
As
String
= Server.UrlDecode(Request.QueryString(
"Building"
).ToString)
If
RadGrid1.MasterTableView.FilterExpression <>
""
Then
RadGrid1.MasterTableView.FilterExpression &=
" AND "
End
If
RadGrid1.MasterTableView.FilterExpression &=
"(Building LIKE '"
& myBuilding &
"')"
Dim
radColumn
As
GridColumn = RadGrid1.MasterTableView.GetColumnSafe(
"Building"
)
radColumn.CurrentFilterValue = myBuilding
radColumn.CurrentFilterFunction = GridKnownFunction.EqualTo
End
If
If
Request.QueryString(
"Unit"
) IsNot
Nothing
Then
Dim
myUnit
As
String
= Server.UrlDecode(Request.QueryString(
"Unit"
).ToString)
If
RadGrid1.MasterTableView.FilterExpression <>
""
Then
RadGrid1.MasterTableView.FilterExpression &=
" AND "
End
If
RadGrid1.MasterTableView.FilterExpression &=
"(Unit LIKE '"
& myUnit &
"')"
Dim
radColumn
As
GridColumn = RadGrid1.MasterTableView.GetColumnSafe(
"Unit"
)
radColumn.CurrentFilterValue = myUnit
radColumn.CurrentFilterFunction = GridKnownFunction.EqualTo
End
If
If
Request.QueryString(
"Room"
) IsNot
Nothing
Then
Dim
myRoom
As
String
= Server.UrlDecode(Request.QueryString(
"Room"
).ToString)
If
RadGrid1.MasterTableView.FilterExpression <>
""
Then
RadGrid1.MasterTableView.FilterExpression &=
" AND "
End
If
RadGrid1.MasterTableView.FilterExpression &=
"(Room LIKE '"
& myRoom &
"')"
Dim
radColumn
As
GridColumn = RadGrid1.MasterTableView.GetColumnSafe(
"Room"
)
radColumn.CurrentFilterValue = myRoom
radColumn.CurrentFilterFunction = GridKnownFunction.EqualTo
End
If
If
Request.QueryString(
"Type"
) IsNot
Nothing
Then
Dim
myType
As
String
= Server.UrlDecode(Request.QueryString(
"Type"
).ToString)
If
RadGrid1.MasterTableView.FilterExpression <>
""
Then
RadGrid1.MasterTableView.FilterExpression &=
" AND "
End
If
RadGrid1.MasterTableView.FilterExpression &=
"(Type LIKE '"
& myType &
"')"
Dim
radColumn
As
GridColumn = RadGrid1.MasterTableView.GetColumnSafe(
"Type"
)
radColumn.CurrentFilterValue = myType
radColumn.CurrentFilterFunction = GridKnownFunction.EqualTo
End
If
If
Request.QueryString(
"Owner"
) IsNot
Nothing
Then
Dim
myOwner
As
String
= Server.UrlDecode(Request.QueryString(
"Owner"
).ToString)
If
RadGrid1.MasterTableView.FilterExpression <>
""
Then
RadGrid1.MasterTableView.FilterExpression &=
" AND "
End
If
RadGrid1.MasterTableView.FilterExpression &=
"(DiagramOwner LIKE '"
& myOwner &
"')"
Dim
radColumn
As
GridColumn = RadGrid1.MasterTableView.GetColumnSafe(
"DiagramOwner"
)
radColumn.CurrentFilterValue = myOwner
radColumn.CurrentFilterFunction = GridKnownFunction.EqualTo
End
If
If
Request.QueryString(
"IsReleased"
) IsNot
Nothing
Then
If
RadGrid1.MasterTableView.FilterExpression <>
""
Then
RadGrid1.MasterTableView.FilterExpression &=
" AND "
End
If
RadGrid1.MasterTableView.FilterExpression &=
"(IsReleased LIKE '"
& Request.QueryString(
"IsReleased"
).ToString &
"')"
Dim
radColumn
As
GridColumn = RadGrid1.MasterTableView.GetColumnSafe(
"IsReleased"
)
radColumn.CurrentFilterValue = Request.QueryString(
"IsReleased"
).ToString
radColumn.CurrentFilterFunction = GridKnownFunction.EqualTo
Else
If
Request.QueryString(
"IsReleased"
)
Is
Nothing
And
Request.QueryString(
"Owner"
)
Is
Nothing
And
Request.QueryString(
"Type"
)
Is
Nothing
And
Request.QueryString(
"Room"
)
Is
Nothing
And
Request.QueryString(
"Unit"
)
Is
Nothing
Then
If
RadGrid1.MasterTableView.FilterExpression <>
""
Then
RadGrid1.MasterTableView.FilterExpression &=
" AND "
End
If
RadGrid1.MasterTableView.FilterExpression &=
"(IsReleased LIKE 'Yes')"
Dim
radColumn
As
GridColumn = RadGrid1.MasterTableView.GetColumnSafe(
"IsReleased"
)
radColumn.CurrentFilterValue =
"Yes"
radColumn.CurrentFilterFunction = GridKnownFunction.EqualTo
End
If
End
If
If
Request.QueryString(
"NQMSRelated"
) IsNot
Nothing
Then
If
RadGrid1.MasterTableView.FilterExpression <>
""
Then
RadGrid1.MasterTableView.FilterExpression &=
" AND "
End
If
RadGrid1.MasterTableView.FilterExpression &=
"(NQMSRelated LIKE '"
& Request.QueryString(
"NQMSRelated"
).ToString &
"')"
Dim
radColumn
As
GridColumn = RadGrid1.MasterTableView.GetColumnSafe(
"NQMSRelated"
)
radColumn.CurrentFilterValue = Request.QueryString(
"NQMSRelated"
).ToString
radColumn.CurrentFilterFunction = GridKnownFunction.EqualTo
End
If
'RadGrid1.MasterTableView.Rebind()
End
If
' FilterExpression="([IsReleased] LIKE 'Yes')"
End
Sub
Private
Function
CheckDataSync()
As
Boolean
Return
True
End
Function
Private
Function
SendChkMail()
As
Boolean
Return
False
End
Function
Private
Sub
Page_Init(
ByVal
sender
As
Object
,
ByVal
e
As
System.EventArgs)
Handles
Me
.Init
End
Sub
Private
Sub
RadGrid1_Load(
ByVal
sender
As
Object
,
ByVal
e
As
System.EventArgs)
Handles
RadGrid1.Load
End
Sub
Private
Sub
RadGrid1_PreInit(
ByVal
sender
As
Object
,
ByVal
e
As
System.EventArgs)
For
Each
item
As
GridColumn
In
RadGrid1.MasterTableView.Columns
Dim
FilterFunction
As
String
= item.CurrentFilterFunction.ToString
Dim
FilterValue
As
String
= item.CurrentFilterValue.ToString
Dim
FilterColumn
As
String
= item.UniqueName.ToString
If
FilterFunction <>
"NoFilter"
Then
If
item.CurrentFilterValue.ToString() =
""
Then
item.ItemStyle.BackColor = RadGrid1.AlternatingItemStyle.BackColor
Else
item.ItemStyle.BackColor = Drawing.Color.LightYellow
End
If
End
If
Next
End
Sub
Protected
Sub
RadGrid1_PreRender(
ByVal
source
As
Object
,
ByVal
e
As
System.EventArgs)
Handles
RadGrid1.PreRender
If
Not
RadGrid1.MasterTableView.FilterExpression
Is
String
.Empty
Then
RefreshCombos()
End
If
For
Each
item
As
GridColumn
In
RadGrid1.MasterTableView.Columns
Dim
FilterFunction
As
String
= item.CurrentFilterFunction.ToString
Dim
FilterValue
As
String
= item.CurrentFilterValue.ToString
Dim
FilterColumn
As
String
= item.UniqueName.ToString
If
FilterFunction <>
"NoFilter"
Then
If
item.CurrentFilterValue.ToString() =
""
Then
item.ItemStyle.BackColor = RadGrid1.AlternatingItemStyle.BackColor
Else
item.ItemStyle.BackColor = Drawing.Color.LightYellow
End
If
End
If
Next
End
Sub
Protected
Sub
RefreshCombos()
sqlBuildings.SelectCommand = AddFilterParameters(sqlBuildings.SelectCommand, RadGrid1.MasterTableView.FilterExpression.ToString())
sqlRooms.SelectCommand = AddFilterParameters(sqlRooms.SelectCommand, RadGrid1.MasterTableView.FilterExpression.ToString())
sqlTypes.SelectCommand = AddFilterParameters(sqlTypes.SelectCommand, RadGrid1.MasterTableView.FilterExpression.ToString())
sqlUnits.SelectCommand = AddFilterParameters(sqlUnits.SelectCommand, RadGrid1.MasterTableView.FilterExpression.ToString())
RadGrid1.MasterTableView.Rebind()
End
Sub
Private
Function
AddFilterParameters(
ByVal
sqlSelect
As
String
, FilterExpression
As
String
)
As
String
Dim
posORDER
As
Int16 = 0
posORDER = InStr(sqlSelect,
"ORDER BY"
, CompareMethod.Text) - 1
Dim
sqlOrder
As
String
= Right(sqlSelect, Len(sqlSelect) - posORDER)
Dim
posWHERE
As
Int16 = 0
posWHERE = InStr(sqlSelect,
"WHERE"
, CompareMethod.Text) - 2
Dim
sqlCommand
As
String
=
""
If
posWHERE < 0
Then
sqlCommand = Left(sqlSelect, posORDER)
Else
sqlCommand = Left(sqlSelect, posWHERE)
End
If
Dim
sqlFilter
As
String
=
""
If
posWHERE > 2
Then
sqlFilter = Mid(sqlSelect, posWHERE + 8, posORDER - posWHERE - 8)
End
If
If
sqlFilter.Length > 0
Then
If
Left(FilterExpression, 5) <>
" AND "
Then
sqlFilter &=
" AND "
End
If
End
If
sqlFilter &= FilterExpression
sqlCommand &=
" WHERE "
& sqlFilter
Return
sqlCommand
End
Function
Private
Sub
RadGrid1_Init(
ByVal
sender
As
Object
,
ByVal
e
As
System.EventArgs)
Handles
RadGrid1.Init
Dim
menu
As
GridFilterMenu = RadGrid1.FilterMenu
Dim
i
As
Integer
= 0
While
i < menu.Items.Count
If
menu.Items(i).Text =
"NoFilter"
Or
_
menu.Items(i).Text =
"Contains"
Or
_
menu.Items(i).Text =
"EqualTo"
Then
i = i + 1
Else
menu.Items.RemoveAt(i)
End
If
End
While
End
Sub
Private
Sub
RadGrid1_ItemCommand(sender
As
Object
, e
As
Telerik.Web.UI.GridCommandEventArgs)
Handles
RadGrid1.ItemCommand
If
e.CommandName = RadGrid.FilterCommandName
Then
Dim
objFilterPair
As
Pair =
CType
(e.CommandArgument, Pair)
Dim
objCol
As
GridColumn =
CType
(e.Item.OwnerTableView.GetColumn(objFilterPair.Second.ToString()), GridColumn)
Debug.Print(
"["
& objFilterPair.First.ToString &
"]:["
& objFilterPair.Second.ToString &
"] = ["
& objCol.CurrentFilterValue.ToString() &
"]"
)
If
objCol.CurrentFilterValue.ToString() =
""
Then
objCol.ItemStyle.BackColor = RadGrid1.AlternatingItemStyle.BackColor
Else
objCol.ItemStyle.BackColor = Drawing.Color.LightYellow
End
If
End
If
End
Sub
Protected
Sub
lnkShareFilter_ServerClick(sender
As
Object
, e
As
EventArgs)
Dim
lnkFilter
As
String
=
String
.Empty
For
Each
item
As
GridColumn
In
RadGrid1.MasterTableView.Columns
Dim
FilterFunction
As
String
= item.CurrentFilterFunction.ToString
Dim
FilterValue
As
String
= item.CurrentFilterValue.ToString
Dim
FilterColumn
As
String
= item.UniqueName.ToString
If
FilterFunction <>
"NoFilter"
Then
Debug.Print(FilterColumn &
":"
& FilterFunction &
"="
& FilterValue)
lnkFilter &=
"&"
& FilterColumn &
"="
& Server.UrlEncode(FilterValue)
End
If
Next
lnkFilter =
"mailto:&subject=WoW List&body="
& Server.UrlEncode(
"http://chorra0004/hydra/bpm/WoWList.aspx?"
& lnkFilter.Substring(1))
Debug.Print(
"["
& lnkFilter &
"]"
)
ClientScript.RegisterStartupScript(
Me
.
GetType
(),
"mailto"
,
"<script type = 'text/javascript'>parent.location='"
& lnkFilter &
"'</script>"
)
End
Sub
Protected
Function
ContentExists(
ByVal
strUrl
As
String
)
As
Boolean
Try
Dim
hwrRequest
As
HttpWebRequest = WebRequest.Create(strUrl)
Dim
hwrResponse
As
HttpWebResponse = hwrRequest.GetResponse()
Dim
stmStream
As
Stream = hwrResponse.GetResponseStream()
Dim
strReader
As
String
=
New
StreamReader(stmStream).ReadToEnd()
Return
True
Catch
ex
As
Exception
Return
False
End
Try
End
Function
Protected
Function
urlExists(
ByVal
strUrl
As
String
)
As
Boolean
Try
Dim
hwrRequest
As
HttpWebRequest = WebRequest.Create(strUrl)
hwrRequest.AllowAutoRedirect =
False
Dim
hwrResponse
As
HttpWebResponse = hwrRequest.GetResponse()
If
hwrResponse.StatusCode = HttpStatusCode.OK
Then
Return
True
Else
Return
False
End
If
Catch
ex
As
Exception
Return
False
End
Try
End
Function
End
Class