From 17af386586d030b365b7a8a36f72d7973403ffc1 Mon Sep 17 00:00:00 2001 From: gvjoshi25 Date: Wed, 12 Nov 2025 18:23:09 -0500 Subject: [PATCH 1/2] DP-5314 - Freeze panes in Excel --- .../WriteToAnExcelFileWithFreezePane.java | 33 +++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 src/main/java/com/northconcepts/datapipeline/examples/cookbook/WriteToAnExcelFileWithFreezePane.java diff --git a/src/main/java/com/northconcepts/datapipeline/examples/cookbook/WriteToAnExcelFileWithFreezePane.java b/src/main/java/com/northconcepts/datapipeline/examples/cookbook/WriteToAnExcelFileWithFreezePane.java new file mode 100644 index 0000000..9a675de --- /dev/null +++ b/src/main/java/com/northconcepts/datapipeline/examples/cookbook/WriteToAnExcelFileWithFreezePane.java @@ -0,0 +1,33 @@ +package com.northconcepts.datapipeline.examples.cookbook; + +import java.io.File; + +import com.northconcepts.datapipeline.core.DataEndpoint; +import com.northconcepts.datapipeline.core.DataReader; +import com.northconcepts.datapipeline.core.DataWriter; +import com.northconcepts.datapipeline.csv.CSVReader; +import com.northconcepts.datapipeline.excel.ExcelDocument; +import com.northconcepts.datapipeline.excel.ExcelWriter; +import com.northconcepts.datapipeline.job.Job; + +import org.apache.log4j.Logger; + +public class WriteToAnExcelFileWithFreezePane { + + public static final Logger log = DataEndpoint.log; + + public static void main(String[] args) { + DataReader reader = new CSVReader(new File("example/data/input/patient-visits-raw-10000.csv")) + .setFieldNamesInFirstRow(true); + + ExcelDocument document = new ExcelDocument(); + DataWriter writer = new ExcelWriter(document).setSheetName("balance") + .setFreezeRows(1) // freeze pane is applied to the first row only. + .setFreezeColumns(2); // freeze pane is applied to the first two columns. + + Job.run(reader, writer); + + document.save(new File("example/data/output/patient-visits-with-freeze-pane.xlsx")); + } + +} From 3e5210f64b1d0030e31f1bbae5f6b17cbbe754af Mon Sep 17 00:00:00 2001 From: gvjoshi25 Date: Wed, 12 Nov 2025 18:39:08 -0500 Subject: [PATCH 2/2] renamed java class --- ...ToAnExcelFileWithFreezePane.java => FreezePanesInExcel.java} | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) rename src/main/java/com/northconcepts/datapipeline/examples/cookbook/{WriteToAnExcelFileWithFreezePane.java => FreezePanesInExcel.java} (96%) diff --git a/src/main/java/com/northconcepts/datapipeline/examples/cookbook/WriteToAnExcelFileWithFreezePane.java b/src/main/java/com/northconcepts/datapipeline/examples/cookbook/FreezePanesInExcel.java similarity index 96% rename from src/main/java/com/northconcepts/datapipeline/examples/cookbook/WriteToAnExcelFileWithFreezePane.java rename to src/main/java/com/northconcepts/datapipeline/examples/cookbook/FreezePanesInExcel.java index 9a675de..9f5cfc7 100644 --- a/src/main/java/com/northconcepts/datapipeline/examples/cookbook/WriteToAnExcelFileWithFreezePane.java +++ b/src/main/java/com/northconcepts/datapipeline/examples/cookbook/FreezePanesInExcel.java @@ -12,7 +12,7 @@ import org.apache.log4j.Logger; -public class WriteToAnExcelFileWithFreezePane { +public class FreezePanesInExcel { public static final Logger log = DataEndpoint.log;