diff --git a/.gitignore b/.gitignore index cac1b07..cfaaf54 100644 --- a/.gitignore +++ b/.gitignore @@ -6,4 +6,6 @@ *.bak *.iml .idea -*.lock +*.lock +/.svn + diff --git a/XLSReport.mpr b/XLSReport.mpr index 5b7c7a1..92aa9ad 100644 Binary files a/XLSReport.mpr and b/XLSReport.mpr differ diff --git a/javasource/odm/proxies/OrderStatus.java b/javasource/odm/proxies/OrderStatus.java index ce0c0e8..dfe79ef 100644 --- a/javasource/odm/proxies/OrderStatus.java +++ b/javasource/odm/proxies/OrderStatus.java @@ -6,7 +6,7 @@ public enum OrderStatus { - NewOrder(new java.lang.String[][] { new java.lang.String[] { "en_US", "NewOrder" }, new java.lang.String[] { "nl_NL", "Nieuwe order" } }), + NewOrder(new java.lang.String[][] { new java.lang.String[] { "en_US", "New Order" }, new java.lang.String[] { "nl_NL", "Nieuwe order" } }), Invoiced(new java.lang.String[][] { new java.lang.String[] { "en_US", "Invoiced" }, new java.lang.String[] { "nl_NL", "Gefactureerd" } }); private java.util.Map captions; diff --git a/javasource/odm/proxies/microflows/Microflows.java b/javasource/odm/proxies/microflows/Microflows.java index 58f83d8..fc77771 100644 --- a/javasource/odm/proxies/microflows/Microflows.java +++ b/javasource/odm/proxies/microflows/Microflows.java @@ -91,6 +91,19 @@ public static void oCh_OrderLine(IContext context, odm.proxies.OrderLine _orderL throw new MendixRuntimeException(e); } } + public static java.lang.String parseMicroflow(IContext context, java.lang.String _value) + { + try + { + Map params = new HashMap(); + params.put("Value", _value); + return (java.lang.String)Core.execute(context, "ODM.ParseMicroflow", params); + } + catch (CoreException e) + { + throw new MendixRuntimeException(e); + } + } public static java.lang.String vA_ProductName(IContext context, odm.proxies.Product _product) { try diff --git a/javasource/xlsreport/actions/GenerateExcelDoc.java b/javasource/xlsreport/actions/GenerateExcelDoc.java index 71bc1e3..d8cc818 100644 --- a/javasource/xlsreport/actions/GenerateExcelDoc.java +++ b/javasource/xlsreport/actions/GenerateExcelDoc.java @@ -90,8 +90,14 @@ public IMendixObject executeAction() throws Exception case CSV: for (IMendixObject obj : columns) { MxColumn mxColumn = MxColumn.initialize(this.getContext(), obj); + String mfName; + if (mxColumn.getMxColumn_Microflows() != null){ + mfName = mxColumn.getMxColumn_Microflows().getCompleteName(); + } else { + mfName = null; + } if (checkValidColumn(mxColumn)) { - ColumnPreset preset = new ColumnPreset(mxColumn.getName(), mxColumn.getColumnNumber(), mxColumn.getMxXPath_MxData()); + ColumnPreset preset = new ColumnPreset(mxColumn.getName(), mxColumn.getColumnNumber(), mxColumn.getMxXPath_MxData(), mfName); if (mxColumn.getDataAggregate()) { preset.addDataAggregation(mxColumn.getDataAggregateFunction()); } @@ -112,7 +118,13 @@ public IMendixObject executeAction() throws Exception } else { styleGuid = defaultStyle; } - ColumnPreset preset = new ColumnPreset(mxColumn.getName(), mxColumn.getNameAsHeader(), mxColumn.getColumnNumber(), mxColumn.getMxXPath_MxData(), styleGuid); + String mfName; + if (mxColumn.getMxColumn_Microflows() != null){ + mfName = mxColumn.getMxColumn_Microflows().getCompleteName(); + } else { + mfName = null; + } + ColumnPreset preset = new ColumnPreset(mxColumn.getName(), mxColumn.getNameAsHeader(), mxColumn.getColumnNumber(), mxColumn.getMxXPath_MxData(), styleGuid, mfName); if (mxColumn.getResultAggregate()) { preset.addResultAggregation(mxColumn.getResultAggregateFunction()); } diff --git a/javasource/xlsreport/proxies/AggregateFunction.java b/javasource/xlsreport/proxies/AggregateFunction.java index 52b05f7..9e2b7c0 100644 --- a/javasource/xlsreport/proxies/AggregateFunction.java +++ b/javasource/xlsreport/proxies/AggregateFunction.java @@ -6,11 +6,11 @@ public enum AggregateFunction { - Sum(new java.lang.String[][] { new java.lang.String[] { "en_US", "Sum" }, new java.lang.String[] { "nl_NL", "Optellen" } }), - Max(new java.lang.String[][] { new java.lang.String[] { "en_US", "Max" }, new java.lang.String[] { "nl_NL", "Max" } }), - Min(new java.lang.String[][] { new java.lang.String[] { "en_US", "Min" }, new java.lang.String[] { "nl_NL", "Min" } }), - Count(new java.lang.String[][] { new java.lang.String[] { "en_US", "Count" }, new java.lang.String[] { "nl_NL", "Aantal" } }), - Average(new java.lang.String[][] { new java.lang.String[] { "en_US", "Average" }, new java.lang.String[] { "nl_NL", "Gemiddelde" } }); + Sum(new java.lang.String[][] { new java.lang.String[] { "en_US", "Sum" } }), + Max(new java.lang.String[][] { new java.lang.String[] { "en_US", "Max" } }), + Min(new java.lang.String[][] { new java.lang.String[] { "en_US", "Min" } }), + Count(new java.lang.String[][] { new java.lang.String[] { "en_US", "Count" } }), + Average(new java.lang.String[][] { new java.lang.String[] { "en_US", "Average" } }); private java.util.Map captions; diff --git a/javasource/xlsreport/proxies/AndOr.java b/javasource/xlsreport/proxies/AndOr.java index 337d486..2bd40c9 100644 --- a/javasource/xlsreport/proxies/AndOr.java +++ b/javasource/xlsreport/proxies/AndOr.java @@ -6,8 +6,8 @@ public enum AndOr { - AND(new java.lang.String[][] { new java.lang.String[] { "en_US", "And" }, new java.lang.String[] { "nl_NL", "En" } }), - OR(new java.lang.String[][] { new java.lang.String[] { "en_US", "Or" }, new java.lang.String[] { "nl_NL", "Of" } }); + AND(new java.lang.String[][] { new java.lang.String[] { "en_US", "And" } }), + OR(new java.lang.String[][] { new java.lang.String[] { "en_US", "Or" } }); private java.util.Map captions; diff --git a/javasource/xlsreport/proxies/AttributeType.java b/javasource/xlsreport/proxies/AttributeType.java index e6438c2..d53e579 100644 --- a/javasource/xlsreport/proxies/AttributeType.java +++ b/javasource/xlsreport/proxies/AttributeType.java @@ -6,11 +6,11 @@ public enum AttributeType { - Text(new java.lang.String[][] { new java.lang.String[] { "en_US", "String" }, new java.lang.String[] { "nl_NL", "String" } }), - Number(new java.lang.String[][] { new java.lang.String[] { "en_US", "Integer" }, new java.lang.String[] { "nl_NL", "Integer" } }), - Decimal(new java.lang.String[][] { new java.lang.String[] { "en_US", "Float" }, new java.lang.String[] { "nl_NL", "Float" } }), - Date(new java.lang.String[][] { new java.lang.String[] { "en_US", "Date" }, new java.lang.String[] { "nl_NL", "Datum" } }), - YesNo(new java.lang.String[][] { new java.lang.String[] { "en_US", "Boolean" }, new java.lang.String[] { "nl_NL", "Boolean" } }); + Text(new java.lang.String[][] { new java.lang.String[] { "en_US", "String" } }), + Number(new java.lang.String[][] { new java.lang.String[] { "en_US", "Integer" } }), + Decimal(new java.lang.String[][] { new java.lang.String[] { "en_US", "Float" } }), + Date(new java.lang.String[][] { new java.lang.String[] { "en_US", "Date" } }), + YesNo(new java.lang.String[][] { new java.lang.String[] { "en_US", "Boolean" } }); private java.util.Map captions; diff --git a/javasource/xlsreport/proxies/CSVSeparator.java b/javasource/xlsreport/proxies/CSVSeparator.java index 74c2fe5..c94aae2 100644 --- a/javasource/xlsreport/proxies/CSVSeparator.java +++ b/javasource/xlsreport/proxies/CSVSeparator.java @@ -6,9 +6,9 @@ public enum CSVSeparator { - Comma(new java.lang.String[][] { new java.lang.String[] { "en_US", "Comma" }, new java.lang.String[] { "nl_NL", "Komma" } }), - Semicolon(new java.lang.String[][] { new java.lang.String[] { "en_US", "Semicolon" }, new java.lang.String[] { "nl_NL", "Puntkomma" } }), - Tab(new java.lang.String[][] { new java.lang.String[] { "en_US", "Tab" }, new java.lang.String[] { "nl_NL", "Tab" } }); + Comma(new java.lang.String[][] { new java.lang.String[] { "en_US", "Comma" } }), + Semicolon(new java.lang.String[][] { new java.lang.String[] { "en_US", "Semicolon" } }), + Tab(new java.lang.String[][] { new java.lang.String[] { "en_US", "Tab" } }); private java.util.Map captions; diff --git a/javasource/xlsreport/proxies/ConstraintType.java b/javasource/xlsreport/proxies/ConstraintType.java index 9a2b48a..be9e719 100644 --- a/javasource/xlsreport/proxies/ConstraintType.java +++ b/javasource/xlsreport/proxies/ConstraintType.java @@ -6,16 +6,16 @@ public enum ConstraintType { - Contains(new java.lang.String[][] { new java.lang.String[] { "en_US", "Contains" }, new java.lang.String[] { "nl_NL", "Bevat" } }), - StartWith(new java.lang.String[][] { new java.lang.String[] { "en_US", "Start with" }, new java.lang.String[] { "nl_NL", "Start met" } }), - Greater(new java.lang.String[][] { new java.lang.String[] { "en_US", "Greater" }, new java.lang.String[] { "nl_NL", "Groter dan" } }), - GreaterEqual(new java.lang.String[][] { new java.lang.String[] { "en_US", "Greater and equal" }, new java.lang.String[] { "nl_NL", "Groter en gelijk aan" } }), - Equal(new java.lang.String[][] { new java.lang.String[] { "en_US", "Equal" }, new java.lang.String[] { "nl_NL", "Gelijk aan" } }), - NotEqual(new java.lang.String[][] { new java.lang.String[] { "en_US", "NotEqual" }, new java.lang.String[] { "nl_NL", "Niet gelijk aan" } }), - SmallerEqual(new java.lang.String[][] { new java.lang.String[] { "en_US", "Smaller and equal" }, new java.lang.String[] { "nl_NL", "Kleiner en gelijk aan" } }), - Smaller(new java.lang.String[][] { new java.lang.String[] { "en_US", "Smaller" }, new java.lang.String[] { "nl_NL", "Kleiner dan" } }), - _empty(new java.lang.String[][] { new java.lang.String[] { "en_US", "Empty" }, new java.lang.String[] { "nl_NL", "Leeg" } }), - NotEmpty(new java.lang.String[][] { new java.lang.String[] { "en_US", "Not empty" }, new java.lang.String[] { "nl_NL", "Niet leeg" } }); + Contains(new java.lang.String[][] { new java.lang.String[] { "en_US", "Contains" } }), + StartWith(new java.lang.String[][] { new java.lang.String[] { "en_US", "Start with" } }), + Greater(new java.lang.String[][] { new java.lang.String[] { "en_US", "Greater" } }), + GreaterEqual(new java.lang.String[][] { new java.lang.String[] { "en_US", "Greater and equal" } }), + Equal(new java.lang.String[][] { new java.lang.String[] { "en_US", "Equal" } }), + NotEqual(new java.lang.String[][] { new java.lang.String[] { "en_US", "NotEqual" } }), + SmallerEqual(new java.lang.String[][] { new java.lang.String[] { "en_US", "Smaller and equal" } }), + Smaller(new java.lang.String[][] { new java.lang.String[] { "en_US", "Smaller" } }), + _empty(new java.lang.String[][] { new java.lang.String[] { "en_US", "Empty" } }), + NotEmpty(new java.lang.String[][] { new java.lang.String[] { "en_US", "Not empty" } }); private java.util.Map captions; diff --git a/javasource/xlsreport/proxies/DataItemType.java b/javasource/xlsreport/proxies/DataItemType.java index 61f7075..3695c23 100644 --- a/javasource/xlsreport/proxies/DataItemType.java +++ b/javasource/xlsreport/proxies/DataItemType.java @@ -6,8 +6,8 @@ public enum DataItemType { - StaticType(new java.lang.String[][] { new java.lang.String[] { "en_US", "StaticType" }, new java.lang.String[] { "nl_NL", "Statische type" } }), - DynamicType(new java.lang.String[][] { new java.lang.String[] { "en_US", "DynamicType" }, new java.lang.String[] { "nl_NL", "Dupliceer" } }); + StaticType(new java.lang.String[][] { new java.lang.String[] { "en_US", "StaticType" } }), + DynamicType(new java.lang.String[][] { new java.lang.String[] { "en_US", "DynamicType" } }); private java.util.Map captions; diff --git a/javasource/xlsreport/proxies/DateTimeConstraint.java b/javasource/xlsreport/proxies/DateTimeConstraint.java index c24a35b..98a6eca 100644 --- a/javasource/xlsreport/proxies/DateTimeConstraint.java +++ b/javasource/xlsreport/proxies/DateTimeConstraint.java @@ -6,8 +6,8 @@ public enum DateTimeConstraint { - Before(new java.lang.String[][] { new java.lang.String[] { "en_US", "Before" }, new java.lang.String[] { "nl_NL", "Voor" } }), - After(new java.lang.String[][] { new java.lang.String[] { "en_US", "After" }, new java.lang.String[] { "nl_NL", "Later" } }); + Before(new java.lang.String[][] { new java.lang.String[] { "en_US", "Before" } }), + After(new java.lang.String[][] { new java.lang.String[] { "en_US", "After" } }); private java.util.Map captions; diff --git a/javasource/xlsreport/proxies/DocumentType.java b/javasource/xlsreport/proxies/DocumentType.java index dbb6998..6045ed3 100644 --- a/javasource/xlsreport/proxies/DocumentType.java +++ b/javasource/xlsreport/proxies/DocumentType.java @@ -6,9 +6,9 @@ public enum DocumentType { - XLS(new java.lang.String[][] { new java.lang.String[] { "en_US", "Excel 97 - 2003" }, new java.lang.String[] { "nl_NL", "Excel 97 - 2003 werkmap" } }), - XLSX(new java.lang.String[][] { new java.lang.String[] { "en_US", "Excel 2007 and higher" }, new java.lang.String[] { "nl_NL", "Excel 2007 werkmap (niet ondersteund)" } }), - CSV(new java.lang.String[][] { new java.lang.String[] { "en_US", "CSV file" }, new java.lang.String[] { "nl_NL", "CSV bestand (niet ondersteund)" } }); + XLS(new java.lang.String[][] { new java.lang.String[] { "en_US", "Excel 97 - 2003" } }), + XLSX(new java.lang.String[][] { new java.lang.String[] { "en_US", "Excel 2007 and higher" } }), + CSV(new java.lang.String[][] { new java.lang.String[] { "en_US", "CSV file" } }); private java.util.Map captions; diff --git a/javasource/xlsreport/proxies/JOINType.java b/javasource/xlsreport/proxies/JOINType.java index 35ba09a..16d665f 100644 --- a/javasource/xlsreport/proxies/JOINType.java +++ b/javasource/xlsreport/proxies/JOINType.java @@ -6,10 +6,10 @@ public enum JOINType { - LEFT(new java.lang.String[][] { new java.lang.String[] { "en_US", "LEFT JOIN" }, new java.lang.String[] { "nl_NL", "LEFT JOIN" } }), - INNER(new java.lang.String[][] { new java.lang.String[] { "en_US", "INNER JOIN" }, new java.lang.String[] { "nl_NL", "INNER JOIN" } }), - RIGHT(new java.lang.String[][] { new java.lang.String[] { "en_US", "RIGHT JOIN" }, new java.lang.String[] { "nl_NL", "RIGHT JOIN" } }), - FULL(new java.lang.String[][] { new java.lang.String[] { "en_US", "FULL JOIN" }, new java.lang.String[] { "nl_NL", "FULL JOIN" } }); + LEFT(new java.lang.String[][] { new java.lang.String[] { "en_US", "LEFT JOIN" } }), + INNER(new java.lang.String[][] { new java.lang.String[] { "en_US", "INNER JOIN" } }), + RIGHT(new java.lang.String[][] { new java.lang.String[] { "en_US", "RIGHT JOIN" } }), + FULL(new java.lang.String[][] { new java.lang.String[] { "en_US", "FULL JOIN" } }); private java.util.Map captions; diff --git a/javasource/xlsreport/proxies/MicroInputType.java b/javasource/xlsreport/proxies/MicroInputType.java index 677d301..ac0851c 100644 --- a/javasource/xlsreport/proxies/MicroInputType.java +++ b/javasource/xlsreport/proxies/MicroInputType.java @@ -6,8 +6,8 @@ public enum MicroInputType { - Attribute(new java.lang.String[][] { new java.lang.String[] { "en_US", "Attribute" }, new java.lang.String[] { "nl_NL", "Attribuut" } }), - Reference(new java.lang.String[][] { new java.lang.String[] { "en_US", "Reference" }, new java.lang.String[] { "nl_NL", "Referentie" } }); + Attribute(new java.lang.String[][] { new java.lang.String[] { "en_US", "Attribute" } }), + Reference(new java.lang.String[][] { new java.lang.String[] { "en_US", "Reference" } }); private java.util.Map captions; diff --git a/javasource/xlsreport/proxies/MxColor.java b/javasource/xlsreport/proxies/MxColor.java index cb9f5ec..5412ed7 100644 --- a/javasource/xlsreport/proxies/MxColor.java +++ b/javasource/xlsreport/proxies/MxColor.java @@ -6,21 +6,21 @@ public enum MxColor { - Blank(new java.lang.String[][] { new java.lang.String[] { "en_US", "None" }, new java.lang.String[] { "nl_NL", "Geen" } }), - Black(new java.lang.String[][] { new java.lang.String[] { "en_US", "Black" }, new java.lang.String[] { "nl_NL", "Zwart" } }), - White(new java.lang.String[][] { new java.lang.String[] { "en_US", "White" }, new java.lang.String[] { "nl_NL", "Wit" } }), - Pink(new java.lang.String[][] { new java.lang.String[] { "en_US", "Pink" }, new java.lang.String[] { "nl_NL", "Rose" } }), - Red(new java.lang.String[][] { new java.lang.String[] { "en_US", "Red" }, new java.lang.String[] { "nl_NL", "Rood" } }), - Orange(new java.lang.String[][] { new java.lang.String[] { "en_US", "Orange" }, new java.lang.String[] { "nl_NL", "Oranje" } }), - Yellow(new java.lang.String[][] { new java.lang.String[] { "en_US", "Yellow" }, new java.lang.String[] { "nl_NL", "Geel" } }), - Green(new java.lang.String[][] { new java.lang.String[] { "en_US", "Green" }, new java.lang.String[] { "nl_NL", "Groen" } }), - Light_Blue(new java.lang.String[][] { new java.lang.String[] { "en_US", "Light Blue" }, new java.lang.String[] { "nl_NL", "Licht blauw" } }), - Blue(new java.lang.String[][] { new java.lang.String[] { "en_US", "Blue" }, new java.lang.String[] { "nl_NL", "Blauw" } }), - Brown(new java.lang.String[][] { new java.lang.String[] { "en_US", "Brown" }, new java.lang.String[] { "nl_NL", "Bruin" } }), - Gray_1(new java.lang.String[][] { new java.lang.String[] { "en_US", "Gray 25%" }, new java.lang.String[] { "nl_NL", "Grijs 25%" } }), - Gray_2(new java.lang.String[][] { new java.lang.String[] { "en_US", "Gray 40%" }, new java.lang.String[] { "nl_NL", "Grijs 40%" } }), - Gray_3(new java.lang.String[][] { new java.lang.String[] { "en_US", "Gray 50%" }, new java.lang.String[] { "nl_NL", "Grijs 50%" } }), - Gray_4(new java.lang.String[][] { new java.lang.String[] { "en_US", "Gray 80%" }, new java.lang.String[] { "nl_NL", "Grijs 80%" } }); + Blank(new java.lang.String[][] { new java.lang.String[] { "en_US", "None" } }), + Black(new java.lang.String[][] { new java.lang.String[] { "en_US", "Black" } }), + White(new java.lang.String[][] { new java.lang.String[] { "en_US", "White" } }), + Pink(new java.lang.String[][] { new java.lang.String[] { "en_US", "Pink" } }), + Red(new java.lang.String[][] { new java.lang.String[] { "en_US", "Red" } }), + Orange(new java.lang.String[][] { new java.lang.String[] { "en_US", "Orange" } }), + Yellow(new java.lang.String[][] { new java.lang.String[] { "en_US", "Yellow" } }), + Green(new java.lang.String[][] { new java.lang.String[] { "en_US", "Green" } }), + Light_Blue(new java.lang.String[][] { new java.lang.String[] { "en_US", "Light Blue" } }), + Blue(new java.lang.String[][] { new java.lang.String[] { "en_US", "Blue" } }), + Brown(new java.lang.String[][] { new java.lang.String[] { "en_US", "Brown" } }), + Gray_1(new java.lang.String[][] { new java.lang.String[] { "en_US", "Gray 25%" } }), + Gray_2(new java.lang.String[][] { new java.lang.String[] { "en_US", "Gray 40%" } }), + Gray_3(new java.lang.String[][] { new java.lang.String[] { "en_US", "Gray 50%" } }), + Gray_4(new java.lang.String[][] { new java.lang.String[] { "en_US", "Gray 80%" } }); private java.util.Map captions; diff --git a/javasource/xlsreport/proxies/MxColumn.java b/javasource/xlsreport/proxies/MxColumn.java index b39eadd..f7ac2da 100644 --- a/javasource/xlsreport/proxies/MxColumn.java +++ b/javasource/xlsreport/proxies/MxColumn.java @@ -23,8 +23,10 @@ public enum MemberNames DataAggregateFunction("DataAggregateFunction"), ResultAggregate("ResultAggregate"), ResultAggregateFunction("ResultAggregateFunction"), + ParseMicroflow("ParseMicroflow"), Name("Name"), Status("Status"), + MxColumn_Microflows("XLSReport.MxColumn_Microflows"), MxData_MxSheet("XLSReport.MxData_MxSheet"), MxData_MxCellStyle("XLSReport.MxData_MxCellStyle"), MxXPath_MxData("XLSReport.MxXPath_MxData"); @@ -355,6 +357,85 @@ public final void setResultAggregateFunction(com.mendix.systemwideinterfaces.cor getMendixObject().setValue(context, MemberNames.ResultAggregateFunction.toString(), null); } + /** + * @return value of ParseMicroflow + */ + public final java.lang.Boolean getParseMicroflow() + { + return getParseMicroflow(getContext()); + } + + /** + * @param context + * @return value of ParseMicroflow + */ + public final java.lang.Boolean getParseMicroflow(com.mendix.systemwideinterfaces.core.IContext context) + { + return (java.lang.Boolean) getMendixObject().getValue(context, MemberNames.ParseMicroflow.toString()); + } + + /** + * Set value of ParseMicroflow + * @param parsemicroflow + */ + public final void setParseMicroflow(java.lang.Boolean parsemicroflow) + { + setParseMicroflow(getContext(), parsemicroflow); + } + + /** + * Set value of ParseMicroflow + * @param context + * @param parsemicroflow + */ + public final void setParseMicroflow(com.mendix.systemwideinterfaces.core.IContext context, java.lang.Boolean parsemicroflow) + { + getMendixObject().setValue(context, MemberNames.ParseMicroflow.toString(), parsemicroflow); + } + + /** + * @return value of MxColumn_Microflows + */ + public final mxmodelreflection.proxies.Microflows getMxColumn_Microflows() throws com.mendix.core.CoreException + { + return getMxColumn_Microflows(getContext()); + } + + /** + * @param context + * @return value of MxColumn_Microflows + */ + public final mxmodelreflection.proxies.Microflows getMxColumn_Microflows(com.mendix.systemwideinterfaces.core.IContext context) throws com.mendix.core.CoreException + { + mxmodelreflection.proxies.Microflows result = null; + com.mendix.systemwideinterfaces.core.IMendixIdentifier identifier = getMendixObject().getValue(context, MemberNames.MxColumn_Microflows.toString()); + if (identifier != null) + result = mxmodelreflection.proxies.Microflows.load(context, identifier); + return result; + } + + /** + * Set value of MxColumn_Microflows + * @param mxcolumn_microflows + */ + public final void setMxColumn_Microflows(mxmodelreflection.proxies.Microflows mxcolumn_microflows) + { + setMxColumn_Microflows(getContext(), mxcolumn_microflows); + } + + /** + * Set value of MxColumn_Microflows + * @param context + * @param mxcolumn_microflows + */ + public final void setMxColumn_Microflows(com.mendix.systemwideinterfaces.core.IContext context, mxmodelreflection.proxies.Microflows mxcolumn_microflows) + { + if (mxcolumn_microflows == null) + getMendixObject().setValue(context, MemberNames.MxColumn_Microflows.toString(), null); + else + getMendixObject().setValue(context, MemberNames.MxColumn_Microflows.toString(), mxcolumn_microflows.getMendixObject().getId()); + } + @java.lang.Override public boolean equals(Object obj) { diff --git a/javasource/xlsreport/proxies/RetrieveAction.java b/javasource/xlsreport/proxies/RetrieveAction.java index a721a04..06c51d4 100644 --- a/javasource/xlsreport/proxies/RetrieveAction.java +++ b/javasource/xlsreport/proxies/RetrieveAction.java @@ -6,8 +6,8 @@ public enum RetrieveAction { - Attribute(new java.lang.String[][] { new java.lang.String[] { "en_US", "Attribute" }, new java.lang.String[] { "nl_NL", "Attribuut" } }), - Reference(new java.lang.String[][] { new java.lang.String[] { "en_US", "Reference" }, new java.lang.String[] { "nl_NL", "Referentie" } }); + Attribute(new java.lang.String[][] { new java.lang.String[] { "en_US", "Attribute" } }), + Reference(new java.lang.String[][] { new java.lang.String[] { "en_US", "Reference" } }); private java.util.Map captions; diff --git a/javasource/xlsreport/proxies/SortingDirection.java b/javasource/xlsreport/proxies/SortingDirection.java index bf6b5d0..4f278f2 100644 --- a/javasource/xlsreport/proxies/SortingDirection.java +++ b/javasource/xlsreport/proxies/SortingDirection.java @@ -6,8 +6,8 @@ public enum SortingDirection { - Asc(new java.lang.String[][] { new java.lang.String[] { "en_US", "Ascending" }, new java.lang.String[] { "nl_NL", "Volgorde oplopend" } }), - Desc(new java.lang.String[][] { new java.lang.String[] { "en_US", "Descending" }, new java.lang.String[] { "nl_NL", "Volgorde aflopend" } }); + Asc(new java.lang.String[][] { new java.lang.String[] { "en_US", "Ascending" } }), + Desc(new java.lang.String[][] { new java.lang.String[] { "en_US", "Descending" } }); private java.util.Map captions; diff --git a/javasource/xlsreport/proxies/StaticType.java b/javasource/xlsreport/proxies/StaticType.java index 7c420a7..1e02cb7 100644 --- a/javasource/xlsreport/proxies/StaticType.java +++ b/javasource/xlsreport/proxies/StaticType.java @@ -6,9 +6,9 @@ public enum StaticType { - StaticText(new java.lang.String[][] { new java.lang.String[] { "en_US", "Static Text" }, new java.lang.String[] { "nl_NL", "Statische tekst" } }), - ObjectMember(new java.lang.String[][] { new java.lang.String[] { "en_US", "Object data" }, new java.lang.String[] { "nl_NL", "Object data" } }), - Aggregate(new java.lang.String[][] { new java.lang.String[] { "en_US", "Aggregate function" }, new java.lang.String[] { "nl_NL", "Aggregeer functie" } }); + StaticText(new java.lang.String[][] { new java.lang.String[] { "en_US", "Static Text" } }), + ObjectMember(new java.lang.String[][] { new java.lang.String[] { "en_US", "Object data" } }), + Aggregate(new java.lang.String[][] { new java.lang.String[] { "en_US", "Aggregate function" } }); private java.util.Map captions; diff --git a/javasource/xlsreport/proxies/TextAlignment.java b/javasource/xlsreport/proxies/TextAlignment.java index 532776c..ca9c9e0 100644 --- a/javasource/xlsreport/proxies/TextAlignment.java +++ b/javasource/xlsreport/proxies/TextAlignment.java @@ -6,9 +6,9 @@ public enum TextAlignment { - Left(new java.lang.String[][] { new java.lang.String[] { "en_US", "Left" }, new java.lang.String[] { "nl_NL", "Links" } }), - Center(new java.lang.String[][] { new java.lang.String[] { "en_US", "Center" }, new java.lang.String[] { "nl_NL", "Gecentreerd" } }), - Right(new java.lang.String[][] { new java.lang.String[] { "en_US", "Right" }, new java.lang.String[] { "nl_NL", "Rechts" } }); + Left(new java.lang.String[][] { new java.lang.String[] { "en_US", "Left" } }), + Center(new java.lang.String[][] { new java.lang.String[] { "en_US", "Center" } }), + Right(new java.lang.String[][] { new java.lang.String[] { "en_US", "Right" } }); private java.util.Map captions; diff --git a/javasource/xlsreport/proxies/TextVerticalAlignment.java b/javasource/xlsreport/proxies/TextVerticalAlignment.java index 412ee52..21d7797 100644 --- a/javasource/xlsreport/proxies/TextVerticalAlignment.java +++ b/javasource/xlsreport/proxies/TextVerticalAlignment.java @@ -6,9 +6,9 @@ public enum TextVerticalAlignment { - Top(new java.lang.String[][] { new java.lang.String[] { "en_US", "Top" }, new java.lang.String[] { "nl_NL", "Boven" } }), - Middle(new java.lang.String[][] { new java.lang.String[] { "en_US", "Middle" }, new java.lang.String[] { "nl_NL", "Midden" } }), - Bottom(new java.lang.String[][] { new java.lang.String[] { "en_US", "Bottom" }, new java.lang.String[] { "nl_NL", "Onder" } }); + Top(new java.lang.String[][] { new java.lang.String[] { "en_US", "Top" } }), + Middle(new java.lang.String[][] { new java.lang.String[] { "en_US", "Middle" } }), + Bottom(new java.lang.String[][] { new java.lang.String[] { "en_US", "Bottom" } }); private java.util.Map captions; diff --git a/javasource/xlsreport/proxies/Yes_no.java b/javasource/xlsreport/proxies/Yes_no.java index de9fec7..9048699 100644 --- a/javasource/xlsreport/proxies/Yes_no.java +++ b/javasource/xlsreport/proxies/Yes_no.java @@ -6,8 +6,8 @@ public enum Yes_no { - Yes(new java.lang.String[][] { new java.lang.String[] { "en_US", "Yes" }, new java.lang.String[] { "nl_NL", "Ja" } }), - No(new java.lang.String[][] { new java.lang.String[] { "en_US", "No" }, new java.lang.String[] { "nl_NL", "Nee" } }); + Yes(new java.lang.String[][] { new java.lang.String[] { "en_US", "Yes" } }), + No(new java.lang.String[][] { new java.lang.String[] { "en_US", "No" } }); private java.util.Map captions; diff --git a/javasource/xlsreport/report/data/ColumnPreset.java b/javasource/xlsreport/report/data/ColumnPreset.java index 524f42a..03c2b77 100644 --- a/javasource/xlsreport/report/data/ColumnPreset.java +++ b/javasource/xlsreport/report/data/ColumnPreset.java @@ -25,6 +25,7 @@ public class ColumnPreset private AggregateFunction resultAggrFunction; private DescriptiveStatistics statistics; private int valuesCounter; + private String microflowName; /** * Constructor for XLS columns to contains styling @@ -34,13 +35,14 @@ public class ColumnPreset * @param firstPath The first object where the XPath will start to an attribute * @param styleGuid The GUID of the MxCellStyle object */ - public ColumnPreset(String name, boolean nameAsHeader, int columnNr, MxXPath firstPath, long styleGuid) + public ColumnPreset(String name, boolean nameAsHeader, int columnNr, MxXPath firstPath, long styleGuid, String microflowName) { this.name = name; this.nameAsHeader = nameAsHeader; this.columnNr = columnNr; this.firstPath = firstPath; this.styleGuid = styleGuid; + this.microflowName = microflowName; } /** @@ -49,12 +51,13 @@ public ColumnPreset(String name, boolean nameAsHeader, int columnNr, MxXPath fir * @param columnNr The position of the column, start from 0 * @param firstPath The first object where the XPath will start to an attribute */ - public ColumnPreset(String name, int columnNr, MxXPath firstPath) + public ColumnPreset(String name, int columnNr, MxXPath firstPath, String microflowName) { this.name = name; this.columnNr = columnNr; this.firstPath = firstPath; this.nameAsHeader = true; + this.microflowName = microflowName; } public void addDataAggregation(AggregateFunction aggrFunction) @@ -172,5 +175,7 @@ public boolean isDateTimeFormat() public void setDateTimeFormat(boolean dateTimeFormat) { this.dateTimeFormat = dateTimeFormat; - } + } + + public String getMicroflowName(){ return microflowName;}; } diff --git a/javasource/xlsreport/report/export/ExportCSV.java b/javasource/xlsreport/report/export/ExportCSV.java index 1d48f40..74cc6a4 100644 --- a/javasource/xlsreport/report/export/ExportCSV.java +++ b/javasource/xlsreport/report/export/ExportCSV.java @@ -67,6 +67,13 @@ public void buildExportFile(MxSheet mxSheet, List mxColumnList, Ob for(int e = 0; e < table[i].length; e++) { Object value = table[i][e]; + //check if there is a microflow parser + ColumnPreset columnPreset = mxColumnList.get(e); + if (columnPreset.getMicroflowName() != null && value != null){ + //replace the value of data with the new microflow parsed value + value = new microflowParser().microflowParser(context, columnPreset.getMicroflowName(), value.toString()); + + } if(value instanceof Date) { value = this.dateFormat.format((Date) value); diff --git a/javasource/xlsreport/report/export/ExportExcel.java b/javasource/xlsreport/report/export/ExportExcel.java index 607c1f0..cc2bb4c 100644 --- a/javasource/xlsreport/report/export/ExportExcel.java +++ b/javasource/xlsreport/report/export/ExportExcel.java @@ -26,6 +26,7 @@ import xlsreport.report.Aggregator; import xlsreport.report.Styling; import xlsreport.report.data.ColumnPreset; +import xlsreport.report.export.microflowParser; import com.mendix.core.Core; import com.mendix.core.CoreException; @@ -130,6 +131,12 @@ public void buildExportFile(MxSheet mxSheet, List ColumnPresetList // Get the basis data Object data = table[i][e]; ColumnPreset columnPreset = ColumnPresetList.get(e); + //check if there is a microflow parser + if (columnPreset.getMicroflowName() != null && data != null){ + //replace the value of data with the new microflow parsed value + data = new microflowParser().microflowParser(context, columnPreset.getMicroflowName(), data.toString()); + + } if(columnPreset.isResultAggregation()) { double value = ((Number)data).doubleValue(); diff --git a/javasource/xlsreport/report/export/microflowParser.java b/javasource/xlsreport/report/export/microflowParser.java new file mode 100644 index 0000000..45655c4 --- /dev/null +++ b/javasource/xlsreport/report/export/microflowParser.java @@ -0,0 +1,28 @@ +package xlsreport.report.export; + +import com.mendix.core.Core; +import com.mendix.core.CoreException; +import com.mendix.systemwideinterfaces.core.IContext; +import java.util.HashMap; +import java.util.Map; + +public class microflowParser { + + public String microflowParser (IContext context, String mfName, String value) throws CoreException { + + //grab the value of the cell + String param = value; + + //retrieve the parameter name of the mf + String inputParam = Core.getInputParameters(mfName).keySet().toArray()[0].toString(); + + //create a parameter to pass to the mf + Map parameters = new HashMap(); + parameters.put(inputParam, param); + //set the new value for data + String returnValue = Core.execute(context, mfName, parameters); + + return returnValue; + + } +}