Browse Source

Exports: continuation of commit 3681 (Make the correct column name for friendly names (ext key -> ext field) enlarged to ALL formats with the exception of XML

git-svn-id: http://svn.code.sf.net/p/itop/code/trunk@3698 a333f486-631f-4898-b8df-5754b55c2be0
romainq 9 years ago
parent
commit
14aa25078a

+ 15 - 3
core/excelbulkexport.class.inc.php

@@ -149,10 +149,22 @@ class ExcelBulkExport extends TabularBulkExport
 					{
 					{
 						$sType = 'datetime';
 						$sType = 'datetime';
 					}
 					}
-					$sLabel = $sAttCode;
-					if ($this->aStatusInfo['localize'])
+					if (($oAttDef instanceof AttributeExternalField) || (($oAttDef instanceof AttributeFriendlyName) && ($oAttDef->GetKeyAttCode() != 'id')))
 					{
 					{
-						$sLabel = $oAttDef->GetLabel();
+						$oKeyAttDef = MetaModel::GetAttributeDef($sClass, $oAttDef->GetKeyAttCode());
+						$oExtAttDef = MetaModel::GetAttributeDef($oKeyAttDef->GetTargetClass(), $oAttDef->GetExtAttCode());
+						if ($this->aStatusInfo['localize'])
+						{
+							$sLabel =  $oKeyAttDef->GetLabel().'->'.$oExtAttDef->GetLabel();
+						}
+						else
+						{
+							$sLabel =  $oKeyAttDef->GetCode().'->'.$oExtAttDef->GetCode();
+						}
+					}
+					else
+					{
+						$sLabel = $this->aStatusInfo['localize'] ? $oAttDef->GetLabel() : $sAttCode;
 					}
 					}
 						
 						
 					$aTableHeaders[] = array('label' => $sFullAlias.$sLabel, 'type' => $sType);
 					$aTableHeaders[] = array('label' => $sFullAlias.$sLabel, 'type' => $sType);

+ 12 - 2
core/htmlbulkexport.class.inc.php

@@ -115,13 +115,23 @@ class HTMLBulkExport extends TabularBulkExport
 
 
 				default:
 				default:
 					$oAttDef = MetaModel::GetAttributeDef($sClass, $sAttCode);
 					$oAttDef = MetaModel::GetAttributeDef($sClass, $sAttCode);
+					if (($oAttDef instanceof AttributeExternalField) || (($oAttDef instanceof AttributeFriendlyName) && ($oAttDef->GetKeyAttCode() != 'id')))
+					{
+						$oKeyAttDef = MetaModel::GetAttributeDef($sClass, $oAttDef->GetKeyAttCode());
+						$oExtAttDef = MetaModel::GetAttributeDef($oKeyAttDef->GetTargetClass(), $oAttDef->GetExtAttCode());
+						$sLabel =  $oKeyAttDef->GetLabel().'->'.$oExtAttDef->GetLabel();
+					}
+					else
+					{
+						$sLabel = $oAttDef->GetLabel();
+					}
 					if (count($aSelectedClasses) > 1)
 					if (count($aSelectedClasses) > 1)
 					{
 					{
-						$aData[] = $sAlias.'.'.$oAttDef->GetLabel();
+						$aData[] = $sAlias.'.'.$sLabel;
 					}
 					}
 					else
 					else
 					{
 					{
-						$aData[] = $oAttDef->GetLabel();
+						$aData[] = $sLabel;
 					}
 					}
 			}
 			}
 		}
 		}

+ 17 - 1
core/spreadsheetbulkexport.class.inc.php

@@ -123,7 +123,23 @@ class SpreadsheetBulkExport extends TabularBulkExport
 
 
 				default:
 				default:
 					$oAttDef = MetaModel::GetAttributeDef($sClass, $sAttCode);
 					$oAttDef = MetaModel::GetAttributeDef($sClass, $sAttCode);
-					$sColLabel = $this->aStatusInfo['localize'] ? MetaModel::GetLabel($sClass, $sAttCode) : $sAttCode;
+					if (($oAttDef instanceof AttributeExternalField) || (($oAttDef instanceof AttributeFriendlyName) && ($oAttDef->GetKeyAttCode() != 'id')))
+					{
+						$oKeyAttDef = MetaModel::GetAttributeDef($sClass, $oAttDef->GetKeyAttCode());
+						$oExtAttDef = MetaModel::GetAttributeDef($oKeyAttDef->GetTargetClass(), $oAttDef->GetExtAttCode());
+						if ($this->aStatusInfo['localize'])
+						{
+							$sColLabel = $oKeyAttDef->GetLabel().'->'.$oExtAttDef->GetLabel();
+						}
+						else
+						{
+							$sColLabel = $oKeyAttDef->GetCode().'->'.$oExtAttDef->GetCode();
+						}
+					}
+					else
+					{
+						$sColLabel = $this->aStatusInfo['localize'] ? $oAttDef->GetLabel() : $sAttCode;
+					}
 					$oFinalAttDef = $oAttDef->GetFinalAttDef();
 					$oFinalAttDef = $oAttDef->GetFinalAttDef();
 					if (get_class($oFinalAttDef) == 'AttributeDateTime')
 					if (get_class($oFinalAttDef) == 'AttributeDateTime')
 					{
 					{