blob: 0c3ebf83f73139a5a935ac3a34dee30aeb8dd9ea [file] [log] [blame]
/*******************************************************************************
* You may amend and distribute as you like, but don't remove this header!
*
* All rights reserved.
*
* EPPlus is an Open Source project provided under the
* GNU General Public License (GPL) as published by the
* Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
* EPPlus provides server-side generation of Excel 2007 spreadsheets.
* See http://www.codeplex.com/EPPlus for details.
*
*
*
* The GNU General Public License can be viewed at http://www.opensource.org/licenses/gpl-license.php
* If you unfamiliar with this license or have questions about it, here is an http://www.gnu.org/licenses/gpl-faq.html
*
* The code for this project may be used and redistributed by any means PROVIDING it is
* not sold for profit without the author's written consent, and providing that this notice
* and the author's name and all copyright notices remain intact.
*
* All code and executables are provided "as is" with no warranty either express or implied.
* The author accepts no liability for any damage or loss of business that this product may cause.
*
*
* Code change notes:
*
* Author Change Date
*******************************************************************************
* Jan Källman Added 10-SEP-2009
*******************************************************************************/
using System;
using System.IO;
using OfficeOpenXml;
namespace EPPlusSamples
{
class Sample_Main
{
static void Main(string[] args)
{
try
{
//Sample 3, 4 and 12 uses the Adventureworks database. Enter then name of your SQL server into the variable below...
//Leave this blank if you don't have access to the Adventureworks database
string SqlServerName = "";
// change this line to contain the path to the output folder
DirectoryInfo outputDir = new DirectoryInfo(@"c:\temp\SampleApp");
if (!outputDir.Exists) throw new Exception("outputDir does not exist!");
// Sample 1 - simply creates a new workbook from scratch
// containing a worksheet that adds a few numbers together
Console.WriteLine("Running sample 1");
string output = Sample1.RunSample1(outputDir);
Console.WriteLine("Sample 1 created: {0}", output);
Console.WriteLine();
// Sample 2 - simply reads some values from the file generated by sample 1
// and outputs them to the console
Console.WriteLine("Running sample 2");
Sample2.RunSample2(output);
Console.WriteLine();
output = "";
if (SqlServerName != "")
{
string connectionStr = string.Format(@"server={0};database=AdventureWorks;Integrated Security=true;", SqlServerName);
// Sample 3 - creates a workbook from scratch
// This is the same sample as the original Excelpackage, sample 4, but without the template
// This sample requires the AdventureWorks database.
//Shows how to use Ranges, Styling, Namedstyles and Hyperlinks
Console.WriteLine("Running sample 3");
output = Sample3.RunSample3(outputDir, connectionStr);
Console.WriteLine("Sample 3 created: {0}", output);
Console.WriteLine();
// Sample 4 - creates a workbook based on a template.
// Populates a range with data and set the series of a linechart.
// This sample requires the AdventureWorks database.
Console.WriteLine("Running sample 4");
output = Sample4.RunSample4(connectionStr, new FileInfo("..\\..\\GraphTemplate.xlsx"), outputDir); //Template path from /bin/debug or /bin/release
Console.WriteLine("Sample 4 created: {0}", output);
Console.WriteLine();
}
//Sample 5
//Open sample 1 and add a pie chart.
Console.WriteLine("Running sample 5");
output = Sample5.RunSample5(outputDir);
Console.WriteLine("Sample 5 created:", output);
Console.WriteLine();
//Sample 6
//Creates an advanced report on a directory in the filesystem.
//Parameter 2 is the directory to report. Paramter 3 is how deep the scan will go. Parameter 4 Skips Icons if set to true (The icon handling is slow)
//This example demonstrates how to use outlines, tables,comments, shapes, pictures and charts.
Console.WriteLine("Running sample 6");
output = Sample6.RunSample6(outputDir, new DirectoryInfo("..\\.."), 5, false);
Console.WriteLine("Sample 6 created:", output);
Console.WriteLine();
//Sample 7
//This sample shows the performance capabilities of the component and shows sheet protection.
//Load X(param 2) rows with five columns
Console.WriteLine("Running sample 7");
output = Sample7.RunSample7(outputDir, 65534);
Console.WriteLine("Sample 7 created:", output);
Console.WriteLine();
//Sample 8 - Linq
//Opens Sample 7 and perform some Linq queries
Console.WriteLine("Running sample 8-Linq");
LinqSample.RunLinqSample(outputDir);
Console.WriteLine();
//Sample 9 Loads two csv files into tables and creates an area chart and a Column/Line chart on the data.
//This sample also shows how to use a secondary axis.
Console.WriteLine("Running sample 9");
output = Sample9.RunSample9(outputDir);
Console.WriteLine("Sample 9 created: {0}", output);
Console.WriteLine();
//Sample 10 Swedish Quiz : Shows Encryption and workbook and sheet protection.
Console.WriteLine("Running sample 10");
Sample10.RunSample10(outputDir);
Console.WriteLine("Sample 10 created: {0}", outputDir.FullName);
Console.WriteLine();
//Sample 11 - Data validation
Console.WriteLine("Running sample 11");
output = Sample11.RunSample11(outputDir);
Console.WriteLine("Sample 11 created {0}", output);
Console.WriteLine();
//Sample 12 - Pivottables
Console.WriteLine("Running sample 12");
output = Sample12.RunSample12(SqlServerName, outputDir);
Console.WriteLine("Sample 12 created {0}", output);
Console.WriteLine();
//Sample 13 - Shows a few ways to load data (Datatable, IEnumerable and more).
Console.WriteLine("Running sample 13");
Sample13.RunSample13(outputDir);
Console.WriteLine("Sample 13 created {0}", outputDir.Name);
Console.WriteLine();
//Sample 14 - Conditional Formatting
Console.WriteLine("Running sample 14");
Sample14.RunSample14(outputDir);
Console.WriteLine("Sample 14 created {0}", outputDir.Name);
Console.WriteLine();
//Sample 15 - Shows how to work with macro-enabled workbooks(VBA).
Console.WriteLine("Running sample 15-VBA");
Sample15.VBASample(outputDir);
Console.WriteLine("Sample 15 created {0}", outputDir.Name);
Console.WriteLine();
//Sample FormulaCalc - Shows how to calculate formulas in the workbook.
Console.WriteLine("Running Sample_FormulaCalc");
Sample_FormulaCalc.RunSampleFormulaCalc();
Console.WriteLine();
//Sample AddFormulaFunction - Shows how to add your own implementations of excel functions to EPPlus.
Console.WriteLine("Running Sample_AddFormulaFunction");
Sample_AddFormulaFunction.RunSample_AddFormulaFunction();
Console.WriteLine();
}
catch (Exception ex)
{
Console.WriteLine("Error: {0}", ex.Message);
}
Console.WriteLine();
Console.WriteLine("Press the return key to exit...");
Console.Read();
}
}
}