or
<httpModules> <add name="ScriptModule" type="System.Web.Handlers.ScriptModule, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" /> <add name="UrlRoutingModule" type="System.Web.Routing.UrlRoutingModule, System.Web.Routing, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" /> <add name="RadUploadModule" type="Telerik.Web.UI.RadUploadHttpModule" /> <!--<add name="RadCompression" type="Telerik.Web.UI.RadCompression" />--></httpModules><modules runAllManagedModulesForAllRequests="true"> <remove name="UrlRoutingModule" /> <remove name="ScriptModule" /> <add name="ScriptModule" preCondition="managedHandler" type="System.Web.Handlers.ScriptModule, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" /> <add name="UrlRoutingModule" preCondition="" type="System.Web.Routing.UrlRoutingModule, System.Web.Routing, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" /> <remove name="RadUploadModule" /> <add name="RadUploadModule" type="Telerik.Web.UI.RadUploadHttpModule" preCondition="integratedMode" /> <!--<remove name="RadCompression" />--> <!--<add name="RadCompression" type="Telerik.Web.UI.RadCompression" preCondition="integratedMode" />--> <remove name="HttpPreprocessModule" /> <add name="HttpPreprocessModule" type="Microsoft.Cosmos.FrontEnd.WebService.IISHost.HttpPreprocessModule, Microsoft.Cosmos.FrontEnd.IISServiceHost" /></modules>

<telerik:RadEditor ID="EnonceContainer" Runat="server" OnClientLoad="OnRadEditorClientLoad" OnClientCommandExecuting="OnClientCommandExecuting" EnableResize="true" ContentAreaMode="Div" AutoResizeHeight="true" Height="20px" EditModes="Design" Skin="Web20"> <CssFiles> <telerik:EditorCssFile Value="../Styles/EditorContentArea.css" /> </CssFiles> <ContextMenus> <telerik:EditorContextMenu TagName="TABLE"> <telerik:EditorTool ShowIcon="true" ImageUrl="../Images/paint.png" Text="Ajouter surbrillace" Name="Selectionner"/> </telerik:EditorContextMenu> <telerik:EditorContextMenu TagName="TR"> <telerik:EditorTool ShowIcon="true" ImageUrl="../Images/paint.png" Text="Ajouter surbrillace" Name="Selectionner"/> </telerik:EditorContextMenu> <telerik:EditorContextMenu TagName="TD"> <telerik:EditorTool ShowIcon="true" ImageUrl="../Images/paint.png" Text="Ajouter surbrillace" Name="Selectionner"/> </telerik:EditorContextMenu> <telerik:EditorContextMenu TagName="SPAN"> <telerik:EditorTool ShowIcon="true" ImageUrl="../Images/paint.png" Text="Ajouter surbrillace" Name="Selectionner"/> </telerik:EditorContextMenu> <telerik:EditorContextMenu TagName="DIV"> <telerik:EditorTool ShowIcon="true" ImageUrl="../Images/paint.png" Text="Ajouter surbrillace" Name="Selectionner"/> </telerik:EditorContextMenu> <telerik:EditorContextMenu TagName="P"> <telerik:EditorTool ShowIcon="true" ImageUrl="../Images/paint.png" Text="Ajouter surbrillace" Name="Selectionner"/> </telerik:EditorContextMenu> <telerik:EditorContextMenu TagName="BODY"> <telerik:EditorTool ShowIcon="true" ImageUrl="../Images/paint.png" Text="Ajouter surbrillace" Name="Selectionner"/> </telerik:EditorContextMenu> <telerik:EditorContextMenu TagName="FONT"> <telerik:EditorTool ShowIcon="true" ImageUrl="../Images/paint.png" Text="Ajouter surbrillace" Name="Selectionner"/> </telerik:EditorContextMenu> <telerik:EditorContextMenu TagName="HTML"> <telerik:EditorTool ShowIcon="true" ImageUrl="../Images/paint.png" Text="Ajouter surbrillace" Name="Selectionner"/> </telerik:EditorContextMenu> <telerik:EditorContextMenu TagName="IMG"> <telerik:EditorTool ShowIcon="false" Text="Aucune surbrillance pour les images" Enabled="false" /> </telerik:EditorContextMenu> </ContextMenus> <Tools> <telerik:EditorToolGroup> <telerik:EditorTool Name="BackColor" /> </telerik:EditorToolGroup> </Tools> </telerik:RadEditor> <script type="text/javascript"> Telerik.Web.UI.Editor.CommandList["Selectionner"] = function (commandName, editor, args) { editor.fire("BackColor", { value: "Yellow", commandName: "BackColor" }); }; </script> function OnClientCommandExecuting(editor, args) { // Bloquer la toucher ENTER (Annuler l'évenement du RadEditor // !args.value --> On ne veut pas annuler l'évenement "BackColor:Yellow" (son argument ne dispose pas de la méthode get_commandName()) if (!args.value && ("EnterNewLine" == args.get_commandName() || "ShiftEnterSafari" == args.get_commandName())) args.set_cancel(true); } function OnRadEditorClientLoad(editor, args) { //Disable Drag'n'Drop à l'interieur du RadEditor(Éviter de déplacer les images) var element = document.all ? editor.get_document().body : editor.get_document(); var eventHandler = document.all ? "drop" : "dragstart"; $telerik.addExternalHandler(element, "drop", function (e) { $telerik.cancelRawEvent(e); return false; }); $telerik.addExternalHandler(element, "dragstart", function (e) { $telerik.cancelRawEvent(e); return false; }); $telerik.addExternalHandler(element, "dragend", function (e) { $telerik.cancelRawEvent(e); return false; }); //Disable la saisie de texte dans le RadEditor editor.attachEventHandler("onkeydown", function (e) { $telerik.cancelRawEvent(e); return false; }); RefreshCalculatriceContent(); editor.get_element().style.width = (getDocWidth() - 40) + "px"; } editor.get_element().style.width = (getDocWidth() - 40) + "px";
<telerik:RadGrid ID="RadGrid" OnItemCreated="RadGrid_ItemCreated" OnItemCommand="RadGrid_ItemCommand" OnPreRender="RadGrid_PreRender" runat="server" AllowSorting="true" AllowPaging="false" AutoGenerateColumns="false" AllowFilteringByColumn="true" OnNeedDataSource="RadGrid_NeedDataSource" OnDetailTableDataBind="RadGrid_DetailTableDataBind"> <MasterTableView AutoGenerateColumns="false" HierarchyLoadMode="ServerBind" AllowFilteringByColumn="true" ShowFooter="true" AllowPaging="false" AllowMultiColumnSorting="true" DataKeyNames="UnitId"> <NestedViewSettings> <telerik:ParentTableRelation> <telerik:GridRelationFields MasterKeyField="UnitId" DetailKeyField="UnitId" /> </telerik:ParentTableRelation> </NestedViewSettings> <NestedViewTemplate> <asp:Panel runat="server" ID="InnerContainer" CssClass="viewWrap" Visible="false"> <telerik:RadTabStrip runat="server" ID="TabStip1" MultiPageID="Multipage1" SelectedIndex="0"> <Tabs> <telerik:RadTab runat="server" Text="Orders" PageViewID="PageView1"> </telerik:RadTab> </Tabs> </telerik:RadTabStrip> <telerik:RadMultiPage runat="server" ID="Multipage1" SelectedIndex="0" RenderSelectedPageOnly="false"> <telerik:RadPageView runat="server" ID="PageView1"> <telerik:RadGrid runat="server" ID="Orders" ShowFooter="true" AllowSorting="true" EnableLinqExpressions="false" OnDetailTableDataBind="RadGrid_DetailTableDataBind"> <MasterTableView HierarchyLoadMode="ServerOnDemand" ShowHeader="true" DataKeyNames="UnitId" AutoGenerateColumns="false" AllowFilteringByColumn="true" ShowFooter="true" AllowPaging="false" AllowMultiColumnSorting="true"> <Columns> <telerik:GridBoundColumn SortExpression="UnitId" HeaderText="UnitId" HeaderButtonType="TextButton" DataField="UnitId" UniqueName="UnitId"> </telerik:GridBoundColumn> <telerik:GridBoundColumn SortExpression="Date" HeaderText="Date" HeaderButtonType="TextButton" DataField="Date" UniqueName="Date"> </telerik:GridBoundColumn> <telerik:GridBoundColumn SortExpression="BillNumber" HeaderText="Bill Number" HeaderButtonType="TextButton" DataField="BillNumber" UniqueName="BillNumber"> </telerik:GridBoundColumn> <telerik:GridBoundColumn SortExpression="Status" HeaderText="Status" HeaderButtonType="TextButton" DataField="Status" UniqueName="Status"> </telerik:GridBoundColumn> <telerik:GridBoundColumn SortExpression="Origin" HeaderText="Origin" HeaderButtonType="TextButton" DataField="Origin" UniqueName="Origin"> </telerik:GridBoundColumn> <telerik:GridBoundColumn SortExpression="Destination" HeaderText="Destination" HeaderButtonType="TextButton" DataField="Destination" UniqueName="OrDestinationigin"> </telerik:GridBoundColumn> <telerik:GridNumericColumn NumericType="Currency" Aggregate="Sum" FooterAggregateFormatString="{0:C}" DataField="XCharges" HeaderText="Acc. Charges" SortExpression="XCharges" UniqueName="XCharges" DataType="System.Decimal" /> <telerik:GridNumericColumn NumericType="Currency" Aggregate="Sum" FooterAggregateFormatString="{0:C}" DataField="TotalCharge" HeaderText="Total Charges" SortExpression="TotalCharge" UniqueName="TotalCharge" DataType="System.Decimal" /> </Columns> </MasterTableView> </telerik:RadGrid> </telerik:RadPageView> </telerik:RadMultiPage> </asp:Panel> </NestedViewTemplate> <Columns> <telerik:GridBoundColumn HeaderStyle-Width="10" DataField="Division" HeaderText="Division" SortExpression="Division" UniqueName="Division" AutoPostBackOnFilter="true" CurrentFilterFunction="EqualTo" ShowFilterIcon="true" /> <telerik:GridBoundColumn DataField="Subdivision" HeaderText="Subdivision" SortExpression="Subdivision" UniqueName="Subdivision" AutoPostBackOnFilter="true" CurrentFilterFunction="EqualTo" ShowFilterIcon="true" /> <telerik:GridBoundColumn DataField="UnitId" HeaderText="Unit" SortExpression="UnitId" UniqueName="UnitId" AutoPostBackOnFilter="true" CurrentFilterFunction="EqualTo" ShowFilterIcon="true" /> <telerik:GridNumericColumn NumericType="Currency" Aggregate="Sum" FooterAggregateFormatString="{0:C}" DataField="GrossRevenue" HeaderText="Revenue" SortExpression="GrossRevenue" UniqueName="GrossRevenue" AutoPostBackOnFilter="true" CurrentFilterFunction="EqualTo" ShowFilterIcon="true" DataType="System.Decimal" /> <telerik:GridNumericColumn NumericType="Currency" Aggregate="Sum" FooterAggregateFormatString="{0:C}" DataField="TotalPay" HeaderText="Driver Pay" SortExpression="TotalPay" UniqueName="TotalPay" AutoPostBackOnFilter="true" CurrentFilterFunction="EqualTo" ShowFilterIcon="true" DataType="System.Decimal" /> <telerik:GridNumericColumn NumericType="Currency" Aggregate="Sum" FooterAggregateFormatString="{0:C}" DataField="TotalFuel" HeaderText="Fuel Cost" SortExpression="TotalFuel" UniqueName="TotalFuel" AutoPostBackOnFilter="true" CurrentFilterFunction="EqualTo" ShowFilterIcon="true" DataType="System.Decimal" /> <telerik:GridNumericColumn NumericType="Currency" Aggregate="Sum" FooterAggregateFormatString="{0:C}" DataField="TotalMaintenance" HeaderText="Maint. Cost" SortExpression="TotalMaintenance" UniqueName="TotalMaintenance" AutoPostBackOnFilter="true" CurrentFilterFunction="EqualTo" ShowFilterIcon="true" DataType="System.Decimal" /> <telerik:GridNumericColumn NumericType="Currency" Aggregate="Sum" FooterAggregateFormatString="{0:C}" DataField="Contribution" HeaderText="Contribution" SortExpression="Contribution" UniqueName="Contribution" AutoPostBackOnFilter="true" CurrentFilterFunction="EqualTo" ShowFilterIcon="true" DataType="System.Decimal" /> <telerik:GridNumericColumn NumericType="Currency" Aggregate="Avg" FooterAggregateFormatString="{0:C}" DataField="TotalCPM" HeaderText="Total CPM" SortExpression="TotalCPM" UniqueName="TotalCPM" AutoPostBackOnFilter="true" CurrentFilterFunction="EqualTo" ShowFilterIcon="true" DataType="System.Decimal" /> <telerik:GridNumericColumn NumericType="Currency" Aggregate="Avg" FooterAggregateFormatString="{0:C}" DataField="PayCPM" HeaderText="Pay CPM" SortExpression="PayCPM" UniqueName="PayCPM" AutoPostBackOnFilter="true" CurrentFilterFunction="EqualTo" ShowFilterIcon="true" DataType="System.Decimal" /> <telerik:GridNumericColumn NumericType="Currency" Aggregate="Avg" FooterAggregateFormatString="{0:C}" DataField="FuelCPM" HeaderText="Fuel CPM" SortExpression="FuelCPM" UniqueName="FuelCPM" AutoPostBackOnFilter="true" CurrentFilterFunction="EqualTo" ShowFilterIcon="true" DataType="System.Decimal" /> <telerik:GridNumericColumn NumericType="Currency" Aggregate="Avg" FooterAggregateFormatString="{0:C}" DataField="MaintenanceCPM" HeaderText="Maint. CPM" SortExpression="MaintenanceCPM" UniqueName="MaintenanceCPM" AutoPostBackOnFilter="true" CurrentFilterFunction="EqualTo" ShowFilterIcon="true" DataType="System.Decimal" /> <telerik:GridNumericColumn NumericType="Number" DataFormatString="{0:N2}" Aggregate="Sum" FooterAggregateFormatString="{0:N2}" DataField="TotalMiles" HeaderText="Total Miles" SortExpression="TotalMiles" UniqueName="TotalMiles" AutoPostBackOnFilter="true" CurrentFilterFunction="EqualTo" ShowFilterIcon="true" DataType="System.Decimal" /> <telerik:GridNumericColumn NumericType="Number" DataFormatString="{0:N2}" Aggregate="Avg" FooterAggregateFormatString="{0:N2}" DataField="MPG" HeaderText="MPG" SortExpression="MPG" UniqueName="MPG" AutoPostBackOnFilter="true" CurrentFilterFunction="EqualTo" ShowFilterIcon="true" DataType="System.Decimal" /> </Columns> </MasterTableView> </telerik:RadGrid>
public partial class UtilizationReport : System.Web.UI.Page
{
private BTReports.Repository.UnitUtilizationRepository rep = new Repository.UnitUtilizationRepository();
protected void Page_Load(object sender, EventArgs e)
{
}
protected void RadGrid_NeedDataSource(object source, GridNeedDataSourceEventArgs e)
{
if (Cache["UtilzationData"] == null)
{
if (StartDatePicker.SelectedDate.HasValue && EndDatePicker.SelectedDate.HasValue)
{
RadGrid.DataSource = rep.GetUnitUtilization(StartDatePicker.SelectedDate.Value, EndDatePicker.SelectedDate.Value);
}
}
else
{
RadGrid.DataSource = Cache["UtilzationData"];
}
}
protected void GenerateButton_Click(object sender, EventArgs e)
{
Cache.Remove("UtilzationData");
Cache["UtilzationData"] = rep.GetUnitUtilization(StartDatePicker.SelectedDate.Value, EndDatePicker.SelectedDate.Value);
RadGrid.DataSource = rep.GetUnitUtilization(StartDatePicker.SelectedDate.Value, EndDatePicker.SelectedDate.Value);
RadGrid.DataBind();
}
protected void RadGrid_DetailTableDataBind(object source, Telerik.Web.UI.GridDetailTableDataBindEventArgs e)
{
GridDataItem dataItem = (GridDataItem)e.DetailTableView.ParentItem;
switch (e.DetailTableView.Name)
{
case "Orders":
{
DataTable table = new DataTable();
table.Columns.Add("UnitId", typeof(string));
table.Columns.Add("Date", typeof(DateTime));
table.Columns.Add("BillNumber", typeof(string));
table.Columns.Add("Status", typeof(string));
table.Columns.Add("Origin", typeof(string));
table.Columns.Add("Destination", typeof(string));
table.Columns.Add("XCharge", typeof(decimal));
table.Columns.Add("TotalCharges", typeof(decimal));
string UnitId = dataItem.GetDataKeyValue("UnitId").ToString();
IQueryable<UnitUtilization> data = (IQueryable<UnitUtilization>)Cache["UtilzationData"];
var results = from i in data
where i.UnitId == UnitId
select i.Orders;
foreach (var order in results)
{
foreach (Order o in order)
{
table.Rows.Add(o.UnitId, o.Date, o.BillNumber, o.Status, o.Origin, o.Destination, o.XCharges, o.TotalCharges);
}
}
e.DetailTableView.DataSource = table;
break;
}
}
}
protected void RadGrid_PreRender(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
//RadGrid.MasterTableView.Items[0].Expanded = true;
//RadGrid.MasterTableView.Items[0].ChildItem.FindControl("InnerContainer").Visible = true;
}
}
protected void RadGrid_ItemCommand(object source, GridCommandEventArgs e)
{
if (e.CommandName == RadGrid.ExpandCollapseCommandName && e.Item is GridDataItem)
{
((GridDataItem)e.Item).ChildItem.FindControl("InnerContainer").Visible =
!e.Item.Expanded;
}
}
protected void RadGrid_ItemCreated(object sender, GridItemEventArgs e)
{
if (e.Item is GridNestedViewItem)
{
e.Item.FindControl("InnerContainer").Visible = ((GridNestedViewItem)e.Item).ParentItem.Expanded;
}
}
protected void ExportButton_Click(object sender, System.EventArgs e)
{
RadGrid.MasterTableView.ExportToExcel();
}
protected void ChartButton_Click(object sender, EventArgs e)
{
foreach (GridDataItem item in RadGrid.MasterTableView.Items)
{
string UnitId = item["UnitId"].ToString();
}
}
}