Updates to transform

Added configuraiton for skipping and sizing html to excel
diff --git a/cda/plugins/org.eclipse.mdht.cda.xml.ui/src/org/eclipse/mdht/cda/xml/ui/handlers/GenerateCDADataHandler.java b/cda/plugins/org.eclipse.mdht.cda.xml.ui/src/org/eclipse/mdht/cda/xml/ui/handlers/GenerateCDADataHandler.java
index df3051b..ede4e33 100644
--- a/cda/plugins/org.eclipse.mdht.cda.xml.ui/src/org/eclipse/mdht/cda/xml/ui/handlers/GenerateCDADataHandler.java
+++ b/cda/plugins/org.eclipse.mdht.cda.xml.ui/src/org/eclipse/mdht/cda/xml/ui/handlers/GenerateCDADataHandler.java
@@ -503,6 +503,23 @@
 		omitValidation = org.eclipse.mdht.uml.cda.ui.internal.Activator.getDefault().getPreferenceStore().getBoolean(
 			MDHTPreferences.OMIT_VALIDATION_STORE_VALUE);
 
+		// narrative options
+
+		if (System.getProperty("org.eclipse.mdht.cda.xls.processnarrative") != null) {
+			SpreadsheetSerializer.processNarrative = Boolean.valueOf(
+				System.getProperty("org.eclipse.mdht.cda.xls.processnarrative"));
+			;
+		} else {
+			SpreadsheetSerializer.processNarrative = true;
+		}
+
+		if (System.getProperty("org.eclipse.mdht.cda.xls.narrativesize") != null) {
+			SpreadsheetSerializer.narrativeSize = Integer.valueOf(
+				System.getProperty("org.eclipse.mdht.cda.xls.worksheetcache"));
+		} else {
+
+		}
+
 		// if not modified via preferences - check system properties - this is for command line
 		if (org.eclipse.mdht.uml.cda.ui.internal.Activator.getDefault().getPreferenceStore().isDefault(
 			MDHTPreferences.WORKSHEET_CACHE_VALUE)) {
diff --git a/cda/plugins/org.eclipse.mdht.cda.xml.ui/src/org/eclipse/mdht/cda/xml/ui/handlers/SpreadsheetSerializer.java b/cda/plugins/org.eclipse.mdht.cda.xml.ui/src/org/eclipse/mdht/cda/xml/ui/handlers/SpreadsheetSerializer.java
index b6bc24e..3c7f23b 100644
--- a/cda/plugins/org.eclipse.mdht.cda.xml.ui/src/org/eclipse/mdht/cda/xml/ui/handlers/SpreadsheetSerializer.java
+++ b/cda/plugins/org.eclipse.mdht.cda.xml.ui/src/org/eclipse/mdht/cda/xml/ui/handlers/SpreadsheetSerializer.java
@@ -94,6 +94,10 @@
  */
 public class SpreadsheetSerializer {
 
+	public static boolean processNarrative = true;
+
+	public static int narrativeSize = 0;
+
 	/**
 	 * @param query
 	 * @param demographicsShe
@@ -157,14 +161,21 @@
 	 */
 	public static int serializeStrucDocText(Row row, int offset, StrucDocText text) {
 
-		if (text != null && !StringUtils.isEmpty(text.getText())) {
+		if (processNarrative && text != null && !StringUtils.isEmpty(text.getText())) {
 			String narrative = text.getText();
-			HTMLToExcel hte = new HTMLToExcel();
-			RichTextString s = hte.fromHtmlToCellValue(narrative, row.getSheet().getWorkbook());
+			if (narrativeSize != 0) {
+				narrative = narrative.substring(0, narrativeSize);
+			}
+			// HTMLToExcel hte = new HTMLToExcel();
+			RichTextString s = HTMLToExcel.fromHtmlToCellValue(narrative, row.getSheet().getWorkbook());
 			row.createCell(offset++).setCellValue(StringUtils.left(StringUtils.trim(s.getString()), 500));
 
 		} else {
-			row.createCell(offset++).setCellValue("No Narrative");
+
+			row.createCell(offset++).setCellValue(
+				(processNarrative
+						? "OMMITTED"
+						: "No Narrative"));
 		}
 
 		return offset;
diff --git a/cda/plugins/org.eclipse.mdht.cda.xml.ui/src/org/eclipse/mdht/cda/xml/ui/handlers/html/HTMLToExcel.java b/cda/plugins/org.eclipse.mdht.cda.xml.ui/src/org/eclipse/mdht/cda/xml/ui/handlers/html/HTMLToExcel.java
index 21f9d57..1beedcd 100644
--- a/cda/plugins/org.eclipse.mdht.cda.xml.ui/src/org/eclipse/mdht/cda/xml/ui/handlers/html/HTMLToExcel.java
+++ b/cda/plugins/org.eclipse.mdht.cda.xml.ui/src/org/eclipse/mdht/cda/xml/ui/handlers/html/HTMLToExcel.java
@@ -47,7 +47,7 @@
 
 	private static final String NEW_LINE = System.getProperty("line.separator");
 
-	public RichTextString fromHtmlToCellValue(String html, Workbook workBook) {
+	public static RichTextString fromHtmlToCellValue(String html, Workbook workBook) {
 		Config.IsHTMLEmptyElementTagRecognised = true;
 
 		Matcher m = HEAVY_REGEX.matcher(html);