Quantcast
Channel: SharePoint 2010 - Development and Programming forum
Viewing all articles
Browse latest Browse all 11571

excel generation

$
0
0

Hi all,

I created an excel sheet  using openxml and i wanted to retrieve list items and corresponding permission levels into excel.Iam using client object model.But iam able to get single item not all items in a list and iam not able to bind permission levels to excel.Below is my code.please help me.

public static void ExportToExcel()
        {
            string sheetName = @"D:\Praveen\test1.xlsx";
 
            using (SpreadsheetDocument package = SpreadsheetDocument.Create(sheetName, DocumentFormat.OpenXml.SpreadsheetDocumentType.Workbook))
            {
               
                int id = 1;
                package.AddWorkbookPart();
                package.WorkbookPart.Workbook = new Workbook();
                package.WorkbookPart.AddNewPart<WorksheetPart>();
                ClientContext context = new ClientContext("http://aewvdlotu04law:2544/");
                List list = context.Web.Lists.GetByTitle("ExportExcel");
                SecurableObject curObj = null;
                ListItem curItem = list.GetItemById(id);
                curObj = curItem as SecurableObject;
                context.Load(list);
                context.Load(curItem);
                IEnumerable roles = null;
 
                roles = context.LoadQuery(
 
                curObj.RoleAssignments.Include(
 
                roleAsg => roleAsg.Member,
 
                roleAsg => roleAsg.RoleDefinitionBindings.Include(
 
                roleDef => roleDef.Name,
 
                roleDef => roleDef.Description)));
                CamlQuery query = new CamlQuery();
                query.ViewXml = "<View/>";
                ListItemCollection items = list.GetItems(query);
                context.Load(items);
                context.ExecuteQuery();
                package.WorkbookPart.WorksheetParts.First().Worksheet =
 
                  new Worksheet(
 
                    new SheetData(
 
                      new Row(
 
                        new Cell(
 
                          new InlineString(
 
                            new DocumentFormat.OpenXml.Spreadsheet.Text(items[0]["Title"].ToString()))) { DataType = CellValues.InlineString })));
                //new DocumentFormat.OpenXml.Spreadsheet.Text(roles))) { DataType = CellValues.InlineString })));
 
                // Save changes to the spreadsheet part.
 
                package.WorkbookPart.WorksheetParts.First().Worksheet.Save();
 
                // create the worksheet to workbook relation
 
                package.WorkbookPart.Workbook.AppendChild(new Sheets());
 
                package.WorkbookPart.Workbook.GetFirstChild<Sheets>().AppendChild(new Sheet()
 
               {
 
                   Id = package.WorkbookPart.GetIdOfPart(package.WorkbookPart.WorksheetParts.First()),
 
                   SheetId = 1,
 
                   Name = "Excel"
 
               });
 
                package.WorkbookPart.Workbook.Save();
 
 
 
           }  


Viewing all articles
Browse latest Browse all 11571

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>