| /******************************************************************************* |
| * 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(); |
| } |
| } |
| } |