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 0deba71..fa7e70e 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
@@ -1885,15 +1885,15 @@
 						row.createCell(offset++).setCellValue("");
 						row.createCell(offset++).setCellValue(CDAUtil.getDomainPath(sxcm_ts));
 					}
+				} else {
+					row.createCell(offset++).setCellValue("");
+					row.createCell(offset++).setCellValue(CDAUtil.getDomainPath(sxcm_ts));
 				}
 				row.createCell(offset++).setCellValue("");
-				row.createCell(offset++).setCellValue(CDAUtil.getDomainPath(sxcm_ts));
+				row.createCell(offset++).setCellValue("");
 
 				row.createCell(offset++).setCellValue("");
-				row.createCell(offset++).setCellValue(CDAUtil.getDomainPath(sxcm_ts));
-
 				row.createCell(offset++).setCellValue("");
-				row.createCell(offset++).setCellValue(CDAUtil.getDomainPath(sxcm_ts));
 
 			}
 		} else {
@@ -2345,14 +2345,6 @@
 			hasDate = true;
 			break;
 		}
-		if (!hasDate) {
-			row.createCell(offset++).setCellValue("");
-			row.createCell(offset++).setCellValue("");
-			row.createCell(offset++).setCellValue("");
-			row.createCell(offset++).setCellValue("");
-			row.createCell(offset++).setCellValue("");
-			row.createCell(offset++).setCellValue("");
-		}
 
 		if (lotNumberText != null) {
 			row.createCell(offset++).setCellValue(lotNumberText.getText());
