Bind Grid In MVC:
Step 1:
Controllers Page:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using eCRM_MastersLib;
using BAL;
using eCRM_Entity;
namespace eCRM.Controllers.eCRM_Masters
{
public class M_DesignationController : Controller
{
//
// GET: /G_Designation/
Designation mobjModel = new Designation();
eCRM_MastersEntities1 entities = new eCRM_MastersEntities1();
[HttpGet]
public ActionResult _Designation()
{
return View();
}
public ActionResult WebGrid(int page = 1, string sort = "name", string sortDir = "ASC")
{
const int pageSize = 5;
var totalRows = mobjModel.CountDesignation();
sortDir = sortDir.Equals("desc", StringComparison.CurrentCultureIgnoreCase) ? sortDir : "asc";
var validColumns = new[] { "DesginationId", "DesignationName", "CreatedDate", "IsActive" };
if (!validColumns.Any(c => c.Equals(sort, StringComparison.CurrentCultureIgnoreCase)))
sort = "DesignationId";
var designation = mobjModel.GetDesignationPage(page, pageSize, "it." + sort + " " + sortDir);
var data = new PagedCustomerModel()
{
TotalRows = totalRows,
PageSize = pageSize,
Designation = designation
};
return View(data);
}
public class PagedCustomerModel
{
public int TotalRows { get; set; }
public IEnumerable<tbl_Designation> Designation { get; set; }
public int PageSize { get; set; }
}
public ActionResult Create()
{
if (Request.IsAjaxRequest())
{
ViewBag.IsUpdate = false;
return View("_Designation");
}
else
return View();
}
public ActionResult View(int id)
{
var data = mobjModel.GetDesignation1(id);
if (Request.IsAjaxRequest())
{
MS_DesignationMaster cust = new MS_DesignationMaster();
cust.DesignationName = data.DesignationName;
//cust.Name = data.Name;
//cust.Address = data.Address;
//cust.ContactNo = data.ContactNo;
return View("_ViewDesignation", cust);
}
else
return View(data);
}
public ActionResult Edit(int id)
{
var data = mobjModel.GetDesignation1(id);
if (Request.IsAjaxRequest())
{
MS_DesignationMaster cust = new MS_DesignationMaster();
cust.DesignationName = data.DesignationName;
cust.DesginationId = data.DesginationId;
//cust.Name = data.Name;
//cust.Address = data.Address;
//cust.ContactNo = data.ContactNo;
ViewBag.IsUpdate = true;
return View("_Designation", cust);
}
else
return View(data);
}
public ActionResult Delete(int id)
{
tbl_Designation mobjcust = new tbl_Designation();
mobjcust.DesginationId = id;// mCust.DesginationId;
//mobjcust.Address = mCust.Address;
//mobjcust.ContactNo = mCust.ContactNo;
//mobjcust.Name = mCust.Name;
bool check = mobjModel.DeleteDesignation(mobjcust);
if (check)
{
TempData["Msg"] = "Data has been Deleted succeessfully";
ModelState.Clear();
return RedirectToAction("WebGrid", "M_Designation");
}
else
{
return PartialView("_Designation");
}
//bool check = mobjModel.DeleteDesignation(id);
//var data = mobjModel.GetDesignation();
//return RedirectToAction("WebGrid");
}
[HttpPost]
public ActionResult CreateEditDesignaion(MS_DesignationMaster mCust, string Command)
{
// Validate the model being submitted
if (!ModelState.IsValid)
{
return PartialView("_Designation", mCust);
}
else if (Command == "Save")
{
tbl_Designation mobjcust = new tbl_Designation();
tbl_Designation isexist = entities.tbl_Designation.Where(x => x.DesignationName == mCust.DesignationName).FirstOrDefault();
if (isexist != null)
{
TempData["Msg"] = "Designation is allready exists";
ModelState.Clear();
return RedirectToAction("WebGrid", "M_Designation");
}
else
{
mobjcust.DesignationName = mCust.DesignationName;
mobjcust.IsActive = true;
//mobjcust.Address = mCust.Address;
//mobjcust.ContactNo = mCust.ContactNo;
//mobjcust.Name = mCust.Name;
bool check = mobjModel.CreateDesignation(mobjcust);
if (check)
{
TempData["Msg"] = "Data has been saved succeessfully";
ModelState.Clear();
return RedirectToAction("WebGrid", "M_Designation");
}
}
}
else if (Command == "Update")
{
tbl_Designation mobjcust = new tbl_Designation();
mobjcust.DesignationName = mCust.DesignationName;
mobjcust.DesginationId = mCust.DesginationId;
//mobjcust.Address = mCust.Address;
//mobjcust.ContactNo = mCust.ContactNo;
//mobjcust.Name = mCust.Name;
bool check = mobjModel.UpdateDesignation(mobjcust);
if (check)
{
TempData["Msg"] = "Data has been updated succeessfully";
ModelState.Clear();
return RedirectToAction("WebGrid", "M_Designation");
}
}
return PartialView("_Designation");
}
}
}
Step2:
Model Code:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.ComponentModel.DataAnnotations;
using System.Text.RegularExpressions;
using System.Linq.Expressions;
using eCRM_Entity;
using BAL;
namespace eCRM_MastersLib
{
public class Designation : IDisposable
{
bool status;
private readonly eCRM_MastersEntities1 entities = new eCRM_MastersEntities1();
public IEnumerable<tbl_Designation> GetDesignation()
{
return entities.tbl_Designation.Where(m => m.IsActive==true).ToList();
}
public IEnumerable<tbl_Designation> GetDesignationPage(int pageNumber, int pageSize, string searchCriteria)
{
if (pageNumber < 1)
pageNumber = 1;
return entities.tbl_Designation
// .OrderBy(searchCriteria)
//.Skip((pageNumber - 1) * pageSize)
.Take(pageSize)
.ToList();
}
public class PagedCustomerModel
{
public int TotalRows { get; set; }
public IEnumerable<tbl_Designation> Designation { get; set; }
public int PageSize { get; set; }
}
public int CountDesignation()
{
return entities.tbl_Designation.Count();
}
public void Dispose()
{
entities.Dispose();
}
public tbl_Designation GetDesignation1(int mDesgID)
{
return entities.tbl_Designation.Where(m => m.DesginationId == mDesgID).FirstOrDefault();
}
public bool CreateDesignation(tbl_Designation des)
{
try
{
using (var db = new eCRM_MastersEntities1())
{
var dc = db.tbl_Designation.Create();
dc.DesignationName = des.DesignationName;
// dc.DesginationId = Designationdetails.DesginationId;
dc.CreatedBy = 1;//int.Parse(des.CreatedBy.ToString());
dc.CreatedDate = Convert.ToDateTime(System.DateTime.Now.ToShortDateString());
db.tbl_Designation.Add(dc);
db.SaveChanges();
//status = true;
// return RedirectToAction("index", "index");
}
return true;
}
catch (Exception mex)
{
return false;
}
}
public bool UpdateDesignation(tbl_Designation mDesignation)
{
try
{
tbl_Designation data = entities.tbl_Designation.Where(m => m.DesginationId == mDesignation.DesginationId).FirstOrDefault();
data.DesignationName = mDesignation.DesignationName;
//data.Address = mCustomer.Address;
//data.ContactNo = mCustomer.ContactNo;
entities.SaveChanges();
return true;
}
catch (Exception mex)
{
return false;
}
}
public bool DeleteDesignation(tbl_Designation mDesignation)
{
try
{
tbl_Designation data = entities.tbl_Designation.Where(m => m.DesginationId == mDesignation.DesginationId).FirstOrDefault();
data.IsActive = false;
//entities.tbl_Designation.DeleteObject(data);
entities.SaveChanges();
return true;
}
catch (Exception mex)
{
return false;
}
}
public bool CreateEditDesignation(tbl_Designation des, string Command)
{
// Validate the model being submitted
//if (!ModelState.IsValid)
//{
// return PartialView("_Designation", mCust);
//}
if (Command == "Save")
{
using (var db = new eCRM_MastersEntities1())
{
var dc = db.tbl_Designation.Create();
dc.DesignationName = des.DesignationName;
dc.IsActive = des.IsActive;
// dc.DesginationId = Designationdetails.DesginationId;
dc.CreatedBy = 1;//int.Parse(des.CreatedBy.ToString());
dc.CreatedDate = Convert.ToDateTime(System.DateTime.Now.ToShortDateString());
db.tbl_Designation.Add(dc);
db.SaveChanges();
status = true;
// return RedirectToAction("index", "index");
}
}
else if (Command == "Update")
{
tbl_Designation mobjcust = new tbl_Designation();
Designation ab = new Designation();
// mobjcust.CustID = mCust.CustID;
// mobjcust.Address = mCust.Address;
// mobjcust.ContactNo = mCust.ContactNo;
mobjcust.DesignationName = des.DesignationName;
bool check = ab.UpdateDesignation(mobjcust);
if (check)
{
//TempData["Msg"] = "Data has been updated succeessfully";
//ModelState.Clear();
// return RedirectToAction("WebGrid", "G_Designation");
status = true;
}
else
{
status = false;
}
//}
//return PartialView("_Customer");
}
return status;
}
void IDisposable.Dispose()
{
throw new NotImplementedException();
}
}
}
Step3:
View Code:
@{
Layout = "~/Views/Shared/_Layout.cshtml";
ViewBag.Title = "Designation Master";
}
@{
eCRM_MastersLib.Designation b = new eCRM_MastersLib.Designation();
WebGrid grid = new WebGrid();
grid.Bind(b.GetDesignation() );
}
<link href="../../Content/themes/base/minified/jquery-ui.min.css" rel="stylesheet" type="text/css" />
<script src="../../Scripts/jquery-1.7.1.min.js" type="text/javascript"></script>
<script src="../../Scripts/jquery-ui-1.8.20.min.js" type="text/javascript"></script>
<link href="../../Content/Site.css" rel="stylesheet" type="text/css" />
<script type="text/javascript">
$(document).ready(function () {
$("#CreateCustomer").live("click", function (e) {
// e.preventDefault(); use this or return false
var url = $(this).attr('href');
$("#dialog-edit").dialog({
title: 'Create TaskStatus',
autoOpen: false,
resizable: false,
height: 355,
width: 400,
show: { effect: 'drop', direction: "up" },
modal: true,
draggable: true,
open: function (event, ui) {
$(this).load(url);
},
close: function (event, ui) {
$(this).dialog('close');
}
});
$("#dialog-edit").dialog('open');
return false;
});
$(".editDialog").live("click", function (e) {
// e.preventDefault(); use this or return false
var url = $(this).attr('href');
$("#dialog-edit").dialog({
title: 'Edit TaskStatus',
autoOpen: false,
resizable: false,
height: 355,
width: 400,
show: { effect: 'drop', direction: "up" },
modal: true,
draggable: true,
open: function (event, ui) {
$(this).load(url);
},
close: function (event, ui) {
$(this).dialog('close');
}
});
$("#dialog-edit").dialog('open');
return false;
});
$(".confirmDialog").live("click", function (e) {
// e.preventDefault(); use this or return false
var url = $(this).attr('href');
$("#dialog-confirm").dialog({
autoOpen: false,
resizable: false,
height: 170,
width: 350,
show: { effect: 'drop', direction: "up" },
modal: true,
draggable: true,
buttons: {
"OK": function () {
$(this).dialog("close");
window.location = url;
},
"Cancel": function () {
$(this).dialog("close");
}
}
});
$("#dialog-confirm").dialog('open');
return false;
});
$(".viewDialog").live("click", function (e) {
// e.preventDefault(); use this or return false
var url = $(this).attr('href');
$("#dialog-view").dialog({
title: 'View TaskStatus',
autoOpen: false,
resizable: false,
height: 250,
width: 400,
show: { effect: 'drop', direction: "up" },
modal: true,
draggable: true,
open: function (event, ui) {
$(this).load(url);
},
buttons: {
"Close": function () {
$(this).dialog("close");
}
},
close: function (event, ui) {
$(this).dialog('close');
}
});
$("#dialog-view").dialog('open');
return false;
});
$("#btncancel").live("click", function (e) {
// location.reload(true);
$("#dialog-edit").dialog('close');
});
});
</script>
<div style="height:10px;background-color:Yellow;">
</div>
<h2>
Designation Master</h2>
<br />
<div style="color: Green; font-weight: bold">
@TempData["msg"]
</div>
<br />
@grid.GetHtml(
fillEmptyRows: false,
tableStyle: "webgrid",
headerStyle: "webgrid-header",
footerStyle: "webgrid-footer",
alternatingRowStyle: "webgrid-alternating-row",
selectedRowStyle: "webgrid-selected-row",
rowStyle: "webgrid-row-style", htmlAttributes: new { id = "grid" },
mode: WebGridPagerModes.All,
firstText: "<< First",
previousText: "< Prev",
nextText: "Next >",
lastText: "Last >>",
columns: new[] {
grid.Column("DesginationId",
header: "DesginationId", canSort: false),
grid.Column("DesignationName",
header: "DesignationName",
format: @<text>
@Html.ActionLink((string)item.DesignationName, "View", new { id = item.DesginationId }, new { @class = "viewDialog" })</text>
),
@*grid.Column("Address"),*@
@* grid.Column("ContactNo",
header: "Contact No"
),*@
grid.Column("",
header: "Actions",
format: @<text>
@Html.ActionLink("Edit", "Edit", new { id = item.DesginationId }, new { @class = "editDialog"/*, data_dialog_id = "edit-Dialog"*/ })
|
@Html.ActionLink("Delete", "Delete", new { id = item.DesginationId }, new { @class = "confirmDialog" })
</text>
)
})
<br />
<a id="CreateCustomer" href="M_Designation\Create" class="Create">Create Designation</a>
<div id="dialog-confirm" style="display: none">
<p>
<span class="ui-icon ui-icon-alert" style="float: left; margin: 0 7px 20px 0;"></span>
Are you sure to delete ?
</p>
</div>
<div id="dialog-edit" style="display: none">
</div>
<div id="dialog-view" style="display: none">
</div>
Enj...Hope it will help You..
.NET,MVC,MVC API,jQuery,SQL Server, Sql Business Intelligence,QlickView,Sharepoint,Sharepoint Performancepoint
Thursday, August 1, 2013
Wednesday, July 17, 2013
MDX CALUCATIONS Examples---
---CALUCATIONS:
--WITH MEMBER CALCUCATION <NAME>
--<FORMULA>--
WITH MEMBER [TEST] AS
[MEASURES].[SALES AMOUNT],
FORMAT_STRING ="#,##.00"
SELECT
{[MEASURES].[SALES AMOUNT],TEST
} ON COLUMNS,
NONEMPTY([DIM PRODUCT].[ENGLISH PRODUCT NAME].[ENGLISH PRODUCT NAME],[MEASURES].[SALES AMOUNT]) ON ROWS
FROM [ADVENTURE WORKS DW2008R2]
CREATE MEMBER [ADVENTURE WORKS DW2008R2].[TEST] AS
[MEASURES].[SALES AMOUNT],
FORMAT_STRING ="#,##.00"
--OFTER CALL
SELECT
{[MEASURES].[SALES AMOUNT],TEST
} ON COLUMNS,
NONEMPTY([DIM PRODUCT].[ENGLISH PRODUCT NAME].[ENGLISH PRODUCT NAME],[MEASURES].[SALES AMOUNT]) ON ROWS
FROM [ADVENTURE WORKS DW2008R2]
---EXAMPLES
WITH MEMBER [NAME] AS
[DIM PRODUCT].[ENGLISH PRODUCT NAME].CURRENTMEMBER.NAME
SELECT
{[MEASURES].[SALES AMOUNT],[NAME]
} ON COLUMNS,
NONEMPTY([DIM PRODUCT].[ENGLISH PRODUCT NAME].[ENGLISH PRODUCT NAME],[MEASURES].[SALES AMOUNT]) ON ROWS
FROM [ADVENTURE WORKS DW2008R2]
WITH MEMBER [SALES] AS
[MEASURES].[SALES AMOUNT],
FORMAT_STRING="#,##.00"
MEMBER [TOTAL SALES] AS
SUM([DIM PRODUCT].[ENGLISH PRODUCT NAME].CURRENTMEMBER.PARENT,[MEASURES].[SALES AMOUNT]) ,
FORMAT_STRING="#,##.00"
MEMBER [SALES_PERSANTAGE] AS
// ([SALES]/[TOTAL SALES])*100,
// FORMAT_STRING="#,##.00"
([SALES]/[TOTAL SALES]),
FORMAT_STRING="PERCENT"
MEMBER [PERCENT] AS
[MEASURES].[SALES AMOUNT]/SUM([DIM PRODUCT].[ENGLISH PRODUCT NAME].CURRENTMEMBER.PARENT,[MEASURES].[SALES AMOUNT]),
FORMAT_STRING="PERCENT"
MEMBER [DIF] AS
SUM([DIM PRODUCT].[ENGLISH PRODUCT NAME].CURRENTMEMBER.PARENT,[MEASURES].[SALES AMOUNT]) -
SUM([DIM PRODUCT].[ENGLISH PRODUCT NAME].CURRENTMEMBER.NEXTMEMBER,[MEASURES].[SALES AMOUNT])
SELECT
{[MEASURES].[SALES],[TOTAL SALES],[SALES_PERSANTAGE],[PERCENT],[DIF]
} ON COLUMNS,
--NONEMPTY([DIM PRODUCT].[ENGLISH PRODUCT NAME].[ENGLISH PRODUCT NAME],[MEASURES].[SALES AMOUNT]) ON ROWS
ORDER(NONEMPTY([DIM PRODUCT].[ENGLISH PRODUCT NAME].[ENGLISH PRODUCT NAME],[MEASURES].[SALES AMOUNT]),[SALES_PERSANTAGE]) ON ROWS
FROM [ADVENTURE WORKS DW2008R2]
Hope It will help u.....
MDX Querys Examples ...with Functions...
MDX Querys Functions:
--ASCENDANTS
function
SELECT NON EMPTY([DIM
CUSTOMER].[FIRST NAME].[FIRST NAME] ,
{[MEASURES].[ORDER
QUANTITY],[MEASURES].[SALES AMOUNT]}) ON COLUMNS,
NON EMPTY([DIM DATE].[CALENDAR YEAR].[CALENDAR YEAR],[DIM
PRODUCT].[ENGLISH PRODUCT NAME].[ENGLISH PRODUCT NAME]) ON ROWS
FROM [ADVENTURE
WORKS DW2008R2]
SELECT
{[MEASURES].[ORDER
QUANTITY],[MEASURES].[SALES AMOUNT]} ON COLUMNS,
NON EMPTY(ASCENDANTS([DIM
DATE].[DATE].[DAY].&[FRIDAY].&[APRIL].&[2006])) ON ROWS
FROM [ADVENTURE
WORKS DW2008R2]
--RANGE FUNCTION
SELECT
{[MEASURES].[ORDER
QUANTITY],[MEASURES].[SALES AMOUNT]} ON COLUMNS,
NON EMPTY([DIM DATE].[DATE].[YEAR].&[2006]:[DIM
DATE].[DATE].[YEAR].&[2010]) ON ROWS
FROM [ADVENTURE
WORKS DW2008R2]
SELECT
{[MEASURES].[ORDER
QUANTITY],[MEASURES].[SALES AMOUNT]} ON COLUMNS,
NON EMPTY([DIM
DATE].[DATE].[DAY].&[FRIDAY].&[2006].&[APRIL].FIRSTSIBLING:[DIM
DATE].[DATE].[DAY].&[FRIDAY].&[2007]. .&[AUGUST].LASTSIBLING) ON ROWS
FROM [ADVENTURE
WORKS DW2008R2]
--LEAD
FUNCTION(FORWAND AND BACKWARD|)
SELECT
{[MEASURES].[ORDER
QUANTITY],[MEASURES].[SALES AMOUNT]} ON COLUMNS,
NON EMPTY([DIM
DATE].[DATE].[DAY].&[FRIDAY].&[APRIL].&[2007].LEAD(1):[DIM DATE].[DATE].[DAY].&[FRIDAY].&[APRIL].&[2007].LEAD(3)) ON ROWS
FROM [ADVENTURE
WORKS DW2008R2]
SELECT
{[MEASURES].[ORDER
QUANTITY],[MEASURES].[SALES AMOUNT]} ON COLUMNS,
NON EMPTY([DIM
DATE].[DATE].[DAY].&[FRIDAY].&[APRIL].&[2007].LEAD(1)) ON ROWS
FROM [ADVENTURE
WORKS DW2008R2]
SELECT
{[MEASURES].[ORDER
QUANTITY],[MEASURES].[SALES AMOUNT]} ON COLUMNS,
NON EMPTY([DIM
DATE].[DATE].[DAY].&[FRIDAY].&[APRIL].&[2007].NEXTMEMBER) ON ROWS
FROM [ADVENTURE
WORKS DW2008R2]
SELECT
{[MEASURES].[ORDER QUANTITY],[MEASURES].[SALES
AMOUNT]} ON COLUMNS,
NON EMPTY([DIM
DATE].[DATE].[DAY].&[FRIDAY].&[APRIL].&[2007].PREVMEMBER) ON ROWS
FROM [ADVENTURE
WORKS DW2008R2]
---HEAD
FUNCTION(FRIST 15 RECORDS )
SELECT
{[MEASURES].[ORDER
QUANTITY],[MEASURES].[SALES AMOUNT]} ON COLUMNS,
HEAD([DIM
PRODUCT].[ENGLISH PRODUCT NAME].[ENGLISH PRODUCT NAME],15) ON ROWS
FROM [ADVENTURE
WORKS DW2008R2]
--TAIL FUNCTION
(LAST 15 RECORDS)
SELECT
{[MEASURES].[ORDER
QUANTITY],[MEASURES].[SALES AMOUNT]} ON COLUMNS,
TAIL([DIM
PRODUCT].[ENGLISH PRODUCT NAME].[ENGLISH PRODUCT NAME],15) ON ROWS
FROM [ADVENTURE
WORKS DW2008R2]
----SORT
MEASURES
---ORDER
(LEVEL,MEASURE ,ASC OR DSC BY DEFULT ASC)
SELECT
[MEASURES].[SALES AMOUNT] ON COLUMNS,
ORDER([DIM
PRODUCT].[ENGLISH PRODUCT NAME].[ENGLISH PRODUCT NAME],[MEASURES].[SALES
AMOUNT],ASC) ON
ROWS
FROM [ADVENTURE
WORKS DW2008R2]
SELECT
[MEASURES].[SALES AMOUNT] ON COLUMNS,
ORDER([DIM
PRODUCT].[ENGLISH PRODUCT NAME].[ENGLISH PRODUCT NAME],[MEASURES].[SALES
AMOUNT],DESC) ON
ROWS
FROM [ADVENTURE
WORKS DW2008R2]
--MULTIPLE
MEASURES ORDER
SELECT
{[MEASURES].[ORDER
QUANTITY],[MEASURES].[SALES AMOUNT]} ON COLUMNS,
ORDER(([DIM
PRODUCT].[COLOR].[COLOR],
[DIM PRODUCT].[ENGLISH
PRODUCT NAME].[ENGLISH PRODUCT NAME]),[MEASURES].[SALES AMOUNT],DESC) ON ROWS
FROM [ADVENTURE
WORKS DW2008R2]
SELECT
[MEASURES].[SALES AMOUNT] ON COLUMNS,
(ORDER(
[DIM PRODUCT].[ENGLISH
PRODUCT NAME].[ENGLISH PRODUCT NAME],[MEASURES].[SALES AMOUNT],DESC),[DIM PRODUCT].[COLOR].[COLOR]) ON ROWS
FROM [ADVENTURE
WORKS DW2008R2]
--DATE ORDER
(MULTIPLE MEASUES AND MULTIPLE ATTRIBUTES USING BASC,DSEC)
SELECT (ORDER([DIM DATE].[CALENDAR YEAR].[CALENDAR
YEAR],[MEASURES].[SALES AMOUNT],BASC),
{[MEASURES].[TAX
AMT],[MEASURES].[SALES AMOUNT]}) ON COLUMNS,
ORDER(([DIM
DATE].[DATE].[ENGLISH MONTH NAME],
[DIM PRODUCT].[ENGLISH
PRODUCT NAME].[ENGLISH PRODUCT NAME]),[MEASURES].[TAX AMT],BASC) ON ROWS
FROM [ADVENTURE
WORKS DW2008R2]
SELECT (ORDER([DIM DATE].[CALENDAR YEAR].[CALENDAR
YEAR],[MEASURES].[SALES AMOUNT],BASC),
{[MEASURES].[TAX
AMT],[MEASURES].[SALES AMOUNT]}) ON COLUMNS,
ORDER([DIM
DATE].[DATE].[ENGLISH MONTH NAME],[MEASURES].[TAX AMT],BASC)
ON ROWS
FROM [ADVENTURE
WORKS DW2008R2]
---FILLTER
FUNCTION
SELECT
[MEASURES].[SALES AMOUNT] ON COLUMNS,
[DIM CUSTOMER].[FIRST
NAME].[FIRST NAME] ON ROWS
FROM [ADVENTURE
WORKS DW2008R2]
---WHERE [DIM
CUSTOMER].[FIRST NAME].&[ADAM],[DIM CUSTOMER].[FIRST NAME].&[AJAY]
SELECT
[MEASURES].[SALES AMOUNT] ON COLUMNS,
[DIM CUSTOMER].[FIRST
NAME].[ADAM] ON ROWS
FROM [ADVENTURE
WORKS DW2008R2]
SELECT
[MEASURES].[SALES AMOUNT] ON COLUMNS,
{[DIM CUSTOMER].[FIRST
NAME].[ADAM],
[DIM CUSTOMER].[FIRST NAME].[AJAY]} ON ROWS
FROM [ADVENTURE
WORKS DW2008R2]
--WE NEED CHECK
RELATIUONSHIP
--WHERE WITH KEY
MEMBER OF DIM AND VALUE MEMBER
SELECT
[MEASURES].[SALES AMOUNT] ON COLUMNS,
[DIM PRODUCT].[ENGLISH
PRODUCT NAME].[ENGLISH PRODUCT NAME] ON ROWS
FROM [ADVENTURE
WORKS DW2008R2]
WHERE [DIM PRODUCT
SUBCATEGORY].[HIERARCHY].[ENGLISH PRODUCT CATEGORY NAME]
SELECT
[MEASURES].[SALES AMOUNT] ON COLUMNS,
[DIM PRODUCT].[ENGLISH
PRODUCT NAME].[ENGLISH PRODUCT NAME] ON ROWS
FROM [ADVENTURE
WORKS DW2008R2]
WHERE {[DIM
PRODUCT CATEGORY].[ENGLISH PRODUCT CATEGORY NAME].&[ACCESSORIES],
[DIM PRODUCT CATEGORY].[ENGLISH PRODUCT
CATEGORY NAME].&[BIKE]}
--MEASURES IN
FILTERS
SELECT
{[MEASURES].[SALES AMOUNT],[MEASURES].[TAX
AMT]} ON COLUMNS,
FILTER([DIM
PRODUCT].[ENGLISH PRODUCT NAME].[ENGLISH PRODUCT NAME],[MEASURES].[TAX
AMT]>1010.92) ON ROWS
FROM [ADVENTURE
WORKS DW2008R2]
SELECT
{[MEASURES].[SALES AMOUNT],[MEASURES].[TAX
AMT]} ON COLUMNS,
FILTER([DIM
PRODUCT].[ENGLISH PRODUCT NAME].[ENGLISH PRODUCT NAME],[MEASURES].[SALES
AMOUNT]=12636.5) ON ROWS
FROM [ADVENTURE
WORKS DW2008R2]
-- MEASURES WITH
AND
SELECT
{[MEASURES].[SALES AMOUNT],[MEASURES].[TAX AMT]} ON COLUMNS,
FILTER([DIM PRODUCT].[ENGLISH
PRODUCT NAME].[ENGLISH PRODUCT NAME],
[MEASURES].[SALES AMOUNT]>=12636.5 AND
[MEASURES].[SALES AMOUNT]<48860 ) ON ROWS
FROM
[ADVENTURE WORKS DW2008R2]
SELECT
{[MEASURES].[SALES AMOUNT],[MEASURES].[TAX AMT]} ON COLUMNS,
ORDER (FILTER([DIM
PRODUCT].[ENGLISH PRODUCT NAME].[ENGLISH PRODUCT NAME],
[MEASURES].[SALES AMOUNT]>=12636.5 AND
[MEASURES].[SALES AMOUNT]<48860 ),[MEASURES].[SALES AMOUNT])
ON ROWS
FROM
[ADVENTURE WORKS DW2008R2]
SELECT
{[MEASURES].[SALES AMOUNT],[MEASURES].[TAX AMT]} ON COLUMNS,
ORDER (FILTER([DIM
PRODUCT].[ENGLISH PRODUCT NAME].[ENGLISH PRODUCT NAME],
[MEASURES].[SALES AMOUNT]>=12636.5 AND
[MEASURES].[SALES AMOUNT]<48860 AND
[MEASURES].[TAX
AMT]<1500),[MEASURES].[SALES AMOUNT]) ON ROWS
FROM
[ADVENTURE WORKS DW2008R2]
---ATTRIBUTES
FILTER(DIM)
SELECT
{[MEASURES].[SALES AMOUNT],[MEASURES].[TAX AMT]} ON COLUMNS,
(FILTER(
([DIM PRODUCT].[ENGLISH PRODUCT NAME].[ENGLISH PRODUCT NAME],
[DIM PRODUCT CATEGORY].[ENGLISH PRODUCT CATEGORY NAME].[ENGLISH
PRODUCT CATEGORY NAME]),
[DIM PRODUCT CATEGORY].[ENGLISH PRODUCT CATEGORY NAME].CURRENTMEMBER IS
[DIM PRODUCT CATEGORY].[ENGLISH PRODUCT CATEGORY
NAME].&[ACCESSORIES])
) ON ROWS
FROM
[ADVENTURE WORKS DW2008R2]
--NON EMPTY,NONEMPTY
NEED TO READ
SELECT
{[MEASURES].[SALES AMOUNT],[MEASURES].[TAX
AMT],[MEASURES].[EXTENDED AMOUNT],
[MEASURES].[ORDER QUANTITY],[MEASURES].[TOTAL PRODUCT
COST],[MEASURES].[UNIT PRICE]
} ON COLUMNS,
NON EMPTY((
[DIM PRODUCT].[ENGLISH PRODUCT NAME].[ENGLISH PRODUCT NAME],
[DIM PRODUCT CATEGORY].[ENGLISH PRODUCT CATEGORY NAME].[ENGLISH
PRODUCT CATEGORY NAME]
)
) ON ROWS
FROM
[ADVENTURE WORKS DW2008R2]
SELECT
{[MEASURES].[SALES AMOUNT],[MEASURES].[TAX
AMT],[MEASURES].[EXTENDED AMOUNT],
[MEASURES].[ORDER QUANTITY],[MEASURES].[TOTAL PRODUCT
COST],[MEASURES].[UNIT PRICE],
[MEASURES].[UNIT PRICE DISCOUNT PCT]} ON
COLUMNS,
NONEMPTY((
[DIM PRODUCT].[ENGLISH PRODUCT NAME].[ENGLISH PRODUCT NAME],
[DIM PRODUCT CATEGORY].[ENGLISH PRODUCT CATEGORY NAME].[ENGLISH
PRODUCT CATEGORY NAME]
),[MEASURES].[SALES AMOUNT]) ON
ROWS
FROM
[ADVENTURE WORKS DW2008R2]
---TOP 10 RECORDS
WITH HIGHEST SALES
SELECT
{[MEASURES].[SALES AMOUNT],[MEASURES].[TAX
AMT],[MEASURES].[EXTENDED AMOUNT]
} ON COLUMNS,
HEAD(NONEMPTY([DIM
PRODUCT].[ENGLISH PRODUCT NAME].[ENGLISH PRODUCT NAME],[MEASURES].[SALES
AMOUNT]),10) ON ROWS
FROM
[ADVENTURE WORKS DW2008R2]
SELECT
{[MEASURES].[SALES AMOUNT],[MEASURES].[TAX
AMT],[MEASURES].[EXTENDED AMOUNT]
} ON COLUMNS,
NON EMPTY(HEAD([DIM PRODUCT].[ENGLISH PRODUCT NAME].[ENGLISH
PRODUCT NAME],10)) ON ROWS
FROM
[ADVENTURE WORKS DW2008R2]
-----TOP
10 RECORDS WITH HIGHEST SALES
SELECT
{[MEASURES].[SALES AMOUNT],[MEASURES].[TAX
AMT],[MEASURES].[EXTENDED AMOUNT]
} ON COLUMNS,
HEAD(ORDER([DIM
PRODUCT].[ENGLISH PRODUCT NAME].[ENGLISH PRODUCT NAME],[MEASURES].[SALES
AMOUNT],DESC),10) ON
ROWS
FROM
[ADVENTURE WORKS DW2008R2]
SELECT
{[MEASURES].[SALES AMOUNT],[MEASURES].[TAX
AMT],[MEASURES].[EXTENDED AMOUNT]
} ON COLUMNS,
TOPCOUNT([DIM
PRODUCT].[ENGLISH PRODUCT NAME].[ENGLISH PRODUCT NAME],10,[MEASURES].[SALES
AMOUNT]) ON ROWS
FROM
[ADVENTURE WORKS DW2008R2]
SELECT
{[MEASURES].[SALES AMOUNT],[MEASURES].[TAX
AMT],[MEASURES].[EXTENDED AMOUNT]
} ON COLUMNS,
BOTTOMCOUNT([DIM
PRODUCT].[ENGLISH PRODUCT NAME].[ENGLISH PRODUCT NAME],10,[MEASURES].[SALES
AMOUNT]) ON ROWS
FROM
[ADVENTURE WORKS DW2008R2]
---TOPSUM
FUNCTION(TOTAL SUM OF RECORDS EQUAL TO 5000000)
SELECT
{[MEASURES].[SALES AMOUNT],[MEASURES].[TAX
AMT],[MEASURES].[EXTENDED AMOUNT]
} ON COLUMNS,
TOPSUM([DIM PRODUCT].[ENGLISH
PRODUCT NAME].[ENGLISH PRODUCT NAME],5000000,[MEASURES].[SALES AMOUNT]) ON ROWS
FROM
[ADVENTURE WORKS DW2008R2]
---TOPPERCENT,BOTTOMPERCENT
FUNCTION(TOTAL SUM(SALES AMOUNT) OF RECORDS TAKE 50 PERSANGE OF TOTAL SUM RECORDS(SALES AMOUNT))
SELECT
{[MEASURES].[SALES AMOUNT],[MEASURES].[TAX
AMT],[MEASURES].[EXTENDED AMOUNT]
} ON COLUMNS,
TOPPERCENT([DIM
PRODUCT].[ENGLISH PRODUCT NAME].[ENGLISH PRODUCT NAME],50,[MEASURES].[SALES
AMOUNT]) ON ROWS
FROM
[ADVENTURE WORKS DW2008R2]
SELECT
{[MEASURES].[SALES AMOUNT],[MEASURES].[TAX
AMT],[MEASURES].[EXTENDED AMOUNT]
} ON COLUMNS,
BOTTOMPERCENT([DIM
PRODUCT].[ENGLISH PRODUCT NAME].[ENGLISH PRODUCT NAME],50,[MEASURES].[SALES
AMOUNT]) ON ROWS
FROM
[ADVENTURE WORKS DW2008R2]
Hope it will help u.........
Converting a List to Datatable
The following is the method through which you can convert any list object to datatable..
public DataTable ConvertToDataTable<T>(IList<T> data)
{
PropertyDescriptorCollection properties =
TypeDescriptor.GetProperties(typeof(T));
DataTable table = new DataTable();
foreach (PropertyDescriptor prop in properties)
table.Columns.Add(prop.Name, Nullable.GetUnderlyingType(prop.PropertyType) ?? prop.PropertyType);
foreach (T item in data)
{
DataRow row = table.NewRow();
foreach (PropertyDescriptor prop in properties)
row[prop.Name] = prop.GetValue(item) ?? DBNull.Value;
table.Rows.Add(row);
}
return table;
}
Hope it will help u.....
Subscribe to:
Posts (Atom)