diff --git a/cda/plugins/org.eclipse.mdht.cda.xml.ui/src/org/eclipse/mdht/cda/xml/ui/handlers/CDAValueUtil.java b/cda/plugins/org.eclipse.mdht.cda.xml.ui/src/org/eclipse/mdht/cda/xml/ui/handlers/CDAValueUtil.java
index 0ddc6a7..a968e99 100644
--- a/cda/plugins/org.eclipse.mdht.cda.xml.ui/src/org/eclipse/mdht/cda/xml/ui/handlers/CDAValueUtil.java
+++ b/cda/plugins/org.eclipse.mdht.cda.xml.ui/src/org/eclipse/mdht/cda/xml/ui/handlers/CDAValueUtil.java
@@ -188,7 +188,7 @@
 
 	static final SimpleDateFormat DATE_FORMAT9 = new SimpleDateFormat("yyyyMMddHHZ");
 
-	static final SimpleDateFormat DATE_PRETTY = new SimpleDateFormat("MM/dd/yyyy");
+	public static final SimpleDateFormat DATE_PRETTY = new SimpleDateFormat("MM/dd/yyyy");
 
 	static final SimpleDateFormat DATETIME_PRETTY = new SimpleDateFormat("MM/dd/yyyy HH:mm:ss Z");
 
@@ -224,7 +224,7 @@
 		return null;
 	}
 
-	static Date getDate(String value) {
+	public static Date getDate(String value) {
 		Date date = getDate(DATE_FORMAT12, value);
 		if (date != null) {
 			return date;
@@ -475,7 +475,7 @@
 		return "";
 	}
 
-	static String getValueAsString(IVL_TS ivlts) {
+	public static String getValueAsString(IVL_TS ivlts) {
 		// = encounter.getEffectiveTime();
 		StringBuffer sb = new StringBuffer();
 		if (ivlts != null) {
diff --git a/cda/plugins/org.eclipse.mdht.cda.xml.ui/src/org/eclipse/mdht/cda/xml/ui/handlers/SectionSwitch.java b/cda/plugins/org.eclipse.mdht.cda.xml.ui/src/org/eclipse/mdht/cda/xml/ui/handlers/SectionSwitch.java
index a89f338..3ef88d6 100644
--- a/cda/plugins/org.eclipse.mdht.cda.xml.ui/src/org/eclipse/mdht/cda/xml/ui/handlers/SectionSwitch.java
+++ b/cda/plugins/org.eclipse.mdht.cda.xml.ui/src/org/eclipse/mdht/cda/xml/ui/handlers/SectionSwitch.java
@@ -1166,6 +1166,15 @@
 
 		row.createCell(offset++).setCellValue(CDAUtil.getDomainPath(problemConcernAct.getEffectiveTime()));
 
+		if (problemConcernAct.getStatusCode() != null &&
+				!StringUtils.isEmpty(problemConcernAct.getStatusCode().getCode())) {
+			row.createCell(offset++).setCellValue(problemConcernAct.getStatusCode().getCode());
+		} else {
+			row.createCell(offset++).setCellValue("Missing Status");
+		}
+
+		row.createCell(offset++).setCellValue(CDAUtil.getDomainPath(problemConcernAct.getStatusCode()));
+
 		offset = SpreadsheetSerializer.appendCode(
 			row, offset, problemConcernAct.getSection(), problemConcernAct.getCode(), problemConcernAct.getText());
 
diff --git a/cda/plugins/org.eclipse.mdht.cda.xml.ui/src/org/eclipse/mdht/cda/xml/ui/handlers/SheetHeaderUtil.java b/cda/plugins/org.eclipse.mdht.cda.xml.ui/src/org/eclipse/mdht/cda/xml/ui/handlers/SheetHeaderUtil.java
index 9ec37ae..5092037 100644
--- a/cda/plugins/org.eclipse.mdht.cda.xml.ui/src/org/eclipse/mdht/cda/xml/ui/handlers/SheetHeaderUtil.java
+++ b/cda/plugins/org.eclipse.mdht.cda.xml.ui/src/org/eclipse/mdht/cda/xml/ui/handlers/SheetHeaderUtil.java
@@ -156,6 +156,9 @@
 		row2.createCell(offset++).setCellValue(replaceSpace("ID"));
 		row2.createCell(offset++).setCellValue(replaceSpace("Date"));
 		row2.createCell(offset++).setCellValue(replaceSpace("Location"));
+		row2.createCell(offset++).setCellValue(replaceSpace("Status"));
+		row2.createCell(offset++).setCellValue(replaceSpace("Location"));
+
 		row2.getSheet().setColumnHidden(offset - 1, hideColumns);
 		offset = addCodeHeader(row2, offset, "Problem");
 		offset = createProblemObservationHeader(row1, row2, offset);
