This is an automated email from the ASF dual-hosted git repository.

sgoeschl pushed a commit to branch FREEMARKER-144
in repository https://gitbox.apache.org/repos/asf/freemarker-generator.git

commit 629673ebc6c40930a9501acf6e8fa924612db9fb
Author: Siegfried Goeschl <[email protected]>
AuthorDate: Wed Jun 17 19:48:02 2020 +0200

    FREEMARKER-144 Proof Of Concept for providing DataFrames
---
 .../src/site/markdown/cli/tools/dataframe.md       | 18 +++++++++++++++---
 .../templates/excel/dataframe/transform.ftl        | 22 +++++-----------------
 2 files changed, 20 insertions(+), 20 deletions(-)

diff --git a/freemarker-generator-cli/src/site/markdown/cli/tools/dataframe.md 
b/freemarker-generator-cli/src/site/markdown/cli/tools/dataframe.md
index c3bd6f9..00b5a29 100644
--- a/freemarker-generator-cli/src/site/markdown/cli/tools/dataframe.md
+++ b/freemarker-generator-cli/src/site/markdown/cli/tools/dataframe.md
@@ -7,8 +7,8 @@ A `DataFrame` allows declartive filtering and transformation of 
tabular data, i.
 Currently the following sources are supported
 
 * Apache Commons CSV Parser
-* JSON arrays
-* Excel sheets (to be done)
+* JSON arrays represented as collection of maps
+* Excel sheets represented as rows
 
 ## CSV Examples
 
@@ -160,7 +160,19 @@ being parsed as a list of maps and print the JSOB as 
dataframe
 
 ## Excel Examples
 
-Let's transform an Excel Sheet to a dataframe being printed
+Let's transform an Excel Sheet to a `DataFrame` being printed using the 
following template
+
+```
+<#assign dataSource = DataSources.get(0)>
+<#assign workbook = ExcelTool.parse(dataSource)>
+<#list ExcelTool.getSheets(workbook) as sheet>
+    <#assign table = ExcelTool.toTable(sheet)>
+    <#assign df = DataFrameTool.fromRows(table, true)>
+    ${DataFrameTool.print(df)}<#t>
+</#list>
+```
+
+which is rendered by the following command line invocation
 
 ```
 ./bin/freemarker-cli -t templates/excel/dataframe/transform.ftl 
site/sample/excel/test.xls
diff --git a/freemarker-generator-cli/templates/excel/dataframe/transform.ftl 
b/freemarker-generator-cli/templates/excel/dataframe/transform.ftl
index 78540ef..d172bec 100644
--- a/freemarker-generator-cli/templates/excel/dataframe/transform.ftl
+++ b/freemarker-generator-cli/templates/excel/dataframe/transform.ftl
@@ -1,4 +1,3 @@
-<#ftl output_format="plainText" >
 <#--
   Licensed to the Apache Software Foundation (ASF) under one
   or more contributor license agreements.  See the NOTICE file
@@ -16,20 +15,9 @@
   under the License.
 -->
 <#assign dataSource = DataSources.get(0)>
-<#assign name = dataSource.name>
 <#assign workbook = ExcelTool.parse(dataSource)>
-<#assign date = .now?iso_utc>
-<#--------------------------------------------------------------------------->
-<@writeSheets workbook/>
-
-<#--------------------------------------------------------------------------->
-<#-- writeSheets                                                           -->
-<#--------------------------------------------------------------------------->
-<#macro writeSheets workbook>
-    <#assign sheets = ExcelTool.getSheets(workbook)>
-    <#list sheets as sheet>
-        <#assign table = ExcelTool.toTable(sheet)>
-        <#assign df = DataFrameTool.fromRows(table, true)>
-        ${DataFrameTool.print(df)}<#t>
-    </#list>
-</#macro>
+<#list ExcelTool.getSheets(workbook) as sheet>
+    <#assign table = ExcelTool.toTable(sheet)>
+    <#assign df = DataFrameTool.fromRows(table, true)>
+    ${DataFrameTool.print(df)}<#t>
+</#list>

Reply via email to