Beispiel #1
0
        static void Main(string[] args)
        {
            /*var js = new JavaScriptSerializer();
             * var json =
             *  "[{" +
             *      "'title':'simple table 1'," +
             *      "'rows':[" +
             *          "{" +
             *              "'height':18," +
             *              "'columns':[" +
             *                  "{'formula':'100','value':'100','style':'height: 50px; background-color: red; color: blue;','class':'styleBold styleCenter'}," +
             *                  "{'formula':'A1*5','value':'500','style':'display:none;','class':'none'}" +
             *              "]" +
             *          "}" +
             *      "]," +
             *      "'metadata':{" +
             *          "'widths':['120','120']," +
             *          "'frozenAt':{" +
             *              "'row':1," +
             *              "'col':1" +
             *          "}" +
             *      "}" +
             *  "}]";
             *
             * var i = 0;
             * while (i++ < 1000)
             * {
             *  var jsonDeserialized = js.Deserialize<List<UI.Sheet>>(json);
             *  Console.WriteLine(jsonDeserialized.ToString());
             *
             *  var htmlControl = new HtmlTables(jsonDeserialized).ToString();
             *  Console.Write(htmlControl);
             * }
             *
             * Console.Write("Done!");*/
            var b = new brillio();

            b.TestCase();

            var spreadsheets = new Spreadsheets();
            var spreadsheet  = spreadsheets.AddSpreadsheet();

            var row = spreadsheet.AddRow();

            var cellA1 = row.AddCell("250");
            var cellB1 = row.AddCell("250");
            var cellC1 = row.AddCell("800 - (SUM(A1:B1) + 100)", true);

            var cell  = spreadsheet["C", 1];
            var value = cell.UpdateValue();

            Console.Write(value.ToDouble());
            Console.Read();
        }
        public static void Test()
        {
            var driveService = Drive.GetService();

            //create a file
            //http://markembling.info/2012/12/google-spreadsheet-dotnet-oauth2-service-account

            var file = new File();

            file.Title       = "Test spreadsheet";
            file.Description = string.Format("Created via {0} at {1}", Drive.ApplicationName, DateTime.Now.ToString());
            file.MimeType    = "application/vnd.google-apps.spreadsheet";


            var request         = driveService.Files.Insert(file);
            var result          = request.Execute();
            var spreadsheetLink = "https://spreadsheets.google.com/feeds/spreadsheets/" + result.Id;

            // SPREADSHEETS - edit the newly created spreadsheet
            var spreadsheetsService = Spreadsheets.GetService();

            // query for the one we just made
            Console.WriteLine("List the one we just made up above here:");
            var query = new SpreadsheetQuery(spreadsheetLink);
            var feed  = spreadsheetsService.Query(query);
            var sheet = (SpreadsheetEntry)feed.Entries[0];

            Console.WriteLine(sheet.Title.Text);

            // Do some stuff with it
            var worksheetsFeed = sheet.Worksheets;
            var worksheet      = (WorksheetEntry)worksheetsFeed.Entries[0];

            worksheet.Title.Text = "Created by " + Drive.ApplicationName;
            //            worksheet.Cols = 10;
            //            worksheet.Rows = 8;
            worksheet.Update();

            // Data via cell API - works but one update request per cell
            var cellQuery = new CellQuery(worksheet.CellFeedLink);

            cellQuery.ReturnEmpty = ReturnEmptyCells.yes;
            var cellFeed = spreadsheetsService.Query(cellQuery);

            foreach (CellEntry cell in cellFeed.Entries)
            {
                Console.WriteLine("cell");
                Console.WriteLine(cell.Title.Text);
                switch (cell.Title.Text)
                {
                case "A1":
                    cell.InputValue = "Joe";
                    cell.Update();
                    break;

                case "A2":
                    cell.InputValue = "Bloggs";
                    cell.Update();
                    break;

                default:
                    break;
                }
            }

            // Via cell API, bulk update - more efficient
            DoBulkUpdate(spreadsheetsService, worksheet);

            Console.WriteLine("Done");
            Console.ReadLine();
        }