src/sap.ui.table/src/sap/ui/table/TableMenuUtils.js
function(oTable, iColumnIndex, bHoverFirstMenuItem, oCell) {
			if (!oTable ||
				iColumnIndex == null || iColumnIndex < 0) {
				return;
			}
			if (bHoverFirstMenuItem == null) {
				bHoverFirstMenuItem = false;
			}

			var oColumns = oTable.getColumns();
			if (iColumnIndex >= oColumns.length) {
				return;
			}

			var oColumn = oColumns[iColumnIndex];
			if (!oColumn.getVisible()) {
				return;
			}

			// Close all menus.
			for (var i = 0; i < oColumns.length; i++) {
				// If column menus of other columns are open, close them.
				if (oColumns[i] !== oColumn) {
					MenuUtils.closeColumnContextMenu(oTable, i);
				}
			}
			MenuUtils.closeDataCellContextMenu(oTable);

			var colspan = oCell && oCell.attr("colspan");
			if (colspan && colspan !== "1") {
				return; // headers with span do not have connection to a column, do not open the context menu
			}

			oColumn._openMenu(oCell && oCell[0] || oColumn.getDomRef(), bHoverFirstMenuItem);
		}
function(oTable, iColumnIndex, bHoverFirstMenuItem, oCell) {
			if (!oTable ||
				iColumnIndex == null || iColumnIndex < 0) {
				return;
			}
			if (bHoverFirstMenuItem == null) {
				bHoverFirstMenuItem = false;
			}

			var oColumns = oTable.getColumns();
			if (iColumnIndex >= oColumns.length) {
				return;
			}

			var oColumn = oColumns[iColumnIndex];
			if (!oColumn.getVisible()) {
				return;
			}

			// Close all menus.
			for (var i = 0; i < oColumns.length; i++) {
				// If column menus of other columns are open, close them.
				if (oColumns[i] !== oColumn) {
					MenuUtils.closeColumnContextMenu(oTable, i);
				}
			}
			MenuUtils.closeDataCellContextMenu(oTable);

			var colspan = oCell && oCell.attr("colspan");
			if (colspan && colspan !== "1") {
				return; // headers with span do not have connection to a column, do not open the context menu
			}

			oColumn._openMenu(oCell && oCell[0] || oColumn.getDomRef(), bHoverFirstMenuItem);
		}
function ( oTable , iColumnIndex , bHoverFirstMenuItem , oCell ) { if ( ! oTable || iColumnIndex == null || iColumnIndex < 0 ) { return ; } if ( bHoverFirstMenuItem == null ) { bHoverFirstMenuItem = false ; } var oColumns = oTable . getColumns ( ) ; if ( iColumnIndex >= oColumns . length ) { return ; } var oColumn = oColumns [ iColumnIndex ] ; if ( ! oColumn . getVisible ( ) ) { return ; } // Close all menus. for ( var i = 0 ; i < oColumns . length ; i ++ ) { // If column menus of other columns are open, close them. if ( oColumns [ i ] !== oColumn ) { MenuUtils . closeColumnContextMenu ( oTable , i ) ; } } MenuUtils . closeDataCellContextMenu ( oTable ) ; var colspan = oCell && oCell . attr ( "colspan" ) ; if ( colspan && colspan !== "1" ) { return ; // headers with span do not have connection to a column, do not open the context menu } oColumn . _openMenu ( oCell && oCell [ 0 ] || oColumn . getDomRef ( ) , bHoverFirstMenuItem ) ; }
Opens the context menu of a column.
If context menus of other columns are open, they will be closed.

@param {sap.ui.table.Table} oTable Instance of the table.
@param {int} iColumnIndex The index of the column to open the context menu on.
@param {boolean} [bHoverFirstMenuItem] If <code>true</code>, the first item in the opened menu will be hovered.
@param {jQuery} oCell The column header cell to which the menu should be attached.
@see openContextMenu
@see closeColumnContextMenu
@private
Opens the context menu of a column . If context menus of other columns are open they will be closed .