diff --git a/typo3/sysext/backend/Classes/Form/FormDataProvider/TcaFlexProcess.php b/typo3/sysext/backend/Classes/Form/FormDataProvider/TcaFlexProcess.php
index bc5330437f744d7427e7b53f06f433cce2b8e7e8..c4874e119117c68cd3935c2a6c57d4df2708a09c 100644
--- a/typo3/sysext/backend/Classes/Form/FormDataProvider/TcaFlexProcess.php
+++ b/typo3/sysext/backend/Classes/Form/FormDataProvider/TcaFlexProcess.php
@@ -347,6 +347,7 @@ class TcaFlexProcess extends AbstractItemProvider implements FormDataProviderInt
 	protected function modifyDataStructureAndDataValuesByFlexFormSegmentGroup(array $result, $fieldName, $pageTsConfig) {
 		$dataStructure = $result['processedTca']['columns'][$fieldName]['config']['ds'];
 		$dataValues = $result['databaseRow'][$fieldName];
+		$tableName = $result['tableName'];
 
 		$availableLanguageCodes = $result['processedTca']['columns'][$fieldName]['config']['ds']['meta']['availableLanguageCodes'];
 		if ($dataStructure['meta']['langChildren']) {
@@ -376,9 +377,9 @@ class TcaFlexProcess extends AbstractItemProvider implements FormDataProviderInt
 			$dataStructureSheetElements = $dataStructureSheetDefinition['ROOT']['el'];
 
 			// Prepare pageTsConfig of this sheet
-			$pageTsConfigMerged['TCEFORM.']['flexDummyTable.'] = [];
+			$pageTsConfigMerged['TCEFORM.'][$tableName . '.'] = [];
 			if (isset($pageTsConfig[$dataStructureSheetName . '.']) && is_array($pageTsConfig[$dataStructureSheetName . '.'])) {
-				$pageTsConfigMerged['TCEFORM.']['flexDummyTable.'] = $pageTsConfig[$dataStructureSheetName . '.'];
+				$pageTsConfigMerged['TCEFORM.'][$tableName . '.'] = $pageTsConfig[$dataStructureSheetName . '.'];
 			}
 
 			foreach ($languagesOnSheetLevel as $isoSheetLevel) {
@@ -415,14 +416,16 @@ class TcaFlexProcess extends AbstractItemProvider implements FormDataProviderInt
 											}
 											foreach ($languagesOnElementLevel as $isoElementLevel) {
 												$langElementLevel = 'v' . $isoElementLevel;
-												$valueArray = [];
+												$valueArray = [
+													'uid' => $result['databaseRow']['uid'],
+												];
 												$command = 'new';
 												if (array_key_exists($langElementLevel, $singleFieldValueArray)) {
 													$command = 'edit';
 													$valueArray[$singleFieldName] = $singleFieldValueArray[$langElementLevel];
 												}
 												$inputToFlexFormSegment = [
-													'tableName' => 'flexDummyTable',
+													'tableName' => $result['tableName'],
 													'command' => $command,
 													// It is currently not possible to have pageTsConfig for section container
 													'pageTsConfigMerged' => [],
@@ -475,10 +478,12 @@ class TcaFlexProcess extends AbstractItemProvider implements FormDataProviderInt
 										foreach ($languagesOnElementLevel as $isoElementLevel) {
 											$langElementLevel = 'v' . $isoElementLevel;
 											$inputToFlexFormSegment = [
-												'tableName' => 'flexDummyTable',
+												'tableName' => $result['tableName'],
 												'command' => 'new',
 												'pageTsConfigMerged' => [],
-												'databaseRow' => [],
+												'databaseRow' => [
+													'uid' => $result['databaseRow']['uid'],
+												],
 												'vanillaTableTca' => [
 													'ctrl' => [],
 													'columns' => [
@@ -520,7 +525,10 @@ class TcaFlexProcess extends AbstractItemProvider implements FormDataProviderInt
 					} else {
 						foreach ($languagesOnElementLevel as $isoElementLevel) {
 							$langElementLevel = 'v' . $isoElementLevel;
-							$valueArray = [];
+							$valueArray = [
+								// uid of "parent" is given down for inline elements to resolve correctly
+								'uid' => $result['databaseRow']['uid'],
+							];
 							$command = 'new';
 							if (isset($dataValues['data'][$dataStructureSheetName][$langSheetLevel][$dataStructureSheetElementName])
 								&& array_key_exists($langElementLevel, $dataValues['data'][$dataStructureSheetName][$langSheetLevel][$dataStructureSheetElementName])
@@ -529,7 +537,8 @@ class TcaFlexProcess extends AbstractItemProvider implements FormDataProviderInt
 								$valueArray[$dataStructureSheetElementName] = $dataValues['data'][$dataStructureSheetName][$langSheetLevel][$dataStructureSheetElementName][$langElementLevel];
 							}
 							$inputToFlexFormSegment = [
-								'tableName' => 'flexDummyTable',
+								// tablename of "parent" is given down for inline elements to resolve correctly
+								'tableName' => $result['tableName'],
 								'command' => $command,
 								'pageTsConfigMerged' => $pageTsConfigMerged,
 								'databaseRow' => $valueArray,