diff --git a/VectoCore/VectoCore/OutputData/SummaryDataContainer.cs b/VectoCore/VectoCore/OutputData/SummaryDataContainer.cs
index a1b81d704e32d4bc319a36df402bc3c12dc068d5..d713ae324975d5d84988e337e3ad41087a56a35e 100644
--- a/VectoCore/VectoCore/OutputData/SummaryDataContainer.cs
+++ b/VectoCore/VectoCore/OutputData/SummaryDataContainer.cs
@@ -397,6 +397,7 @@ namespace TUGraz.VectoCore.OutputData
 		protected IList<string> FcCols = new List<string>();
 		protected IList<string> GearColumns = new List<string>();
 		protected IList<string> AuxColumns = new List<string>();
+		protected IList<string> EmColumns = new List<string>();
 
 
 		/// <summary>
@@ -525,10 +526,17 @@ namespace TUGraz.VectoCore.OutputData
 		private void CreateElectricMotorColumns(IElectricMotor em, VectoRunData runData, Tuple<string, Type>[] cols)
 		{
 			lock (Table) {
+				var emColNames = cols.Select(x => string.Format(x.Item1, em.Position.GetName()));
 				Table.Columns.AddRange(cols
 					.Select(x => Tuple.Create(string.Format(x.Item1, em.Position.GetName()), x.Item2))
 					.Where(x => !Table.Columns.Contains(x.Item1)).Select(x => new DataColumn(x.Item1, x.Item2))
 					.ToArray());
+				foreach (var emColName in emColNames) {
+					if(EmColumns.Contains(emColName)) {
+						continue;
+					}
+					EmColumns.Add(emColName);
+				}
 			}
 		}
 
@@ -675,7 +683,12 @@ namespace TUGraz.VectoCore.OutputData
 				SumDataFields.f_equiv,
 			});
 
-			cols.AddRange(new[] {
+			cols.AddRange(EmColumns);
+
+
+
+
+        cols.AddRange(new[] {
 				SumDataFields.REESS_StartSoC,
 				SumDataFields.REESS_EndSoC,
 				SumDataFields.REESS_DeltaEnergy,
diff --git a/VectoCore/VectoCoreTest/Integration/Declaration/HeavyLorry/LorrySimulation.cs b/VectoCore/VectoCoreTest/Integration/Declaration/HeavyLorry/LorrySimulation.cs
index d8f3b5d4faa7f802fc9a3c7165b4a685a2827fb0..01ce49c0d2fe0203c311154344b5f3c4f972339b 100644
--- a/VectoCore/VectoCoreTest/Integration/Declaration/HeavyLorry/LorrySimulation.cs
+++ b/VectoCore/VectoCoreTest/Integration/Declaration/HeavyLorry/LorrySimulation.cs
@@ -18,6 +18,7 @@ using System.Xml.Schema;
 using Moq;
 using Ninject;
 using NUnit.Framework;
+using NUnit.Framework.Constraints;
 using TUGraz.VectoCommon.Exceptions;
 using TUGraz.VectoCommon.InputData;
 using TUGraz.VectoCommon.Models;
@@ -261,7 +262,23 @@ public class LorrySimulation
 		modData = VectoCSVFile.Read(modFileName, false, true);
 	}
 
-
+	public void AssertVSUMElectricMotorFields(string vsumFileName, VectoRunData runData)
+	{
+		var sumData = VectoCSVFile.Read(vsumFileName, false, true);
+        var em_positions = runData.ElectricMachinesData.Select(em => em.Item1);
+		foreach (var em_pos in runData.ElectricMachinesData.Select(e => e.Item1)) {
+			Tuple<string, Type>[] columns;
+			if (em_pos == PowertrainPosition.IEPC) {
+				columns = SummaryDataContainer.IEPCColumns;
+			} else {
+				columns = SummaryDataContainer.ElectricMotorColumns;
+			}
+			foreach (var (s, type) in columns) {
+				var colName = string.Format(s, em_pos.GetLabel());
+				Assert.IsTrue(sumData.Columns.Contains(colName), $"{colName} missing in sum file");
+			}
+		}
+	}
 
 	public void VSUM_order_test(string fileName, VectoRunData runData)
 	{
@@ -553,6 +570,8 @@ public class LorrySimulation
 
 		jobContainer.Execute(false);
 		WaitAndAssertSuccess(jobContainer, fileWriter);
+		AssertVSUMElectricMotorFields(fileWriter.SumFileName, runs.First().GetContainer().RunData);
+
 	}
 
 
@@ -580,8 +599,8 @@ public class LorrySimulation
 		var modData = ((ModalDataContainer)((VehicleContainer)runs.Single().GetContainer()).ModData).Data;
 		jobContainer.Execute(false);
 		WaitAndAssertSuccess(jobContainer, fileWriter);
-
-	}
+		AssertVSUMElectricMotorFields(fileWriter.SumFileName, runs.First().GetContainer().RunData);
+    }
 
 	[TestCase(Group5_HEV_S2_OVC, 12)]
 	[TestCase(Group5_HEV_S3_OVC, 12)]
@@ -620,6 +639,7 @@ public class LorrySimulation
 			AssertSHEV_PEV_Conditioning(modDataRow, runs.Single());
 		}
 		Assert.IsTrue(modData.Rows.Count > 0);
+		AssertVSUMElectricMotorFields(fileWriter.SumFileName, runs.First().GetContainer().RunData);
 	}
 
 	[TestCase(Group5_HEV_S2_OVC, 12)]
@@ -758,6 +778,8 @@ public class LorrySimulation
 			}
 		}
 
+		AssertVSUMElectricMotorFields(fileWriter.SumFileName, runs.First().GetContainer().RunData);
+        Assert.IsTrue(modData.Rows.Count > 0);
 		//foreach (var vectoRun in runs.Where(r => r != run))
 		//{
 		//	var rd = vectoRun.GetContainer().RunData;