Skip to Content
0

como se des oculta las columnas que previamente has ocultado (todas las clomnas a la vez)

Jul 24, 2017 at 11:04 AM

65

avatar image
Former Member

Tengo una tabla y con un botón quiero que aparezcan todas las columnas que he ocultado previamente.

Este es mi código:

-del view1.xml

<ToggleButton text="Mostrar todas las columnas" pressed="desOcultaTodasColumnas" press="mostrarTodasColumnas" id="btnMostrarTodasColumns" class="negrita botonSL ocultaBtns ocultarBtnDesOcultarTodo ocultaYDesOcultaColumns"/>

<t:Table rows="{path:'vuelos>/FLIGHTSet' , filters: { path: 'Carrid', operator: 'EQ', value1: 'AA' } }" id="Vuelos" selectionMode="None" visibleRowCount="10"> <t:columns> <t:Column width="100px" sortProperty="vuelos>Carrid"> <!--No coge las clases en los <t:column>--> <html:center> <html:div> <ToggleButton text="Ocultar" press="ocultarColumna" id="col0" type="Transparent"/><html:br/> <Label text="{i18n>EMPRESA}"/> </html:div> </html:center> <t:template> <Text text="{vuelos>Carrid}"/> </t:template> </t:Column> <t:Column width="100px" demandPopin="false" sortProperty="Connid"> <html:center> <html:div> <ToggleButton text="Ocultar" press="ocultarColumna" id="col1" type="Transparent"/><html:br/> <Label text="{i18n>numExpediente}"/> </html:div> </html:center> <t:template> <Text text="{path:'vuelos>Connid'}"/> </t:template> </t:Column> <t:Column width="100px"> <html:center> <html:div> <ToggleButton text="Ocultar" press="ocultarColumna" id="col2" type="Transparent"/><html:br/> <Label text="{i18n>numOrden1}"/> </html:div> </html:center> <t:template> <!--<Text text="{vuelos>Fldate}" type='sap.ui.model.type.DateTime' formatOptions="{ pattern='yyyyMMdd HHmmss' }"/>--> <Text text="{ path: 'vuelos>Fldate', type: 'sap.ui.model.type.DateTime', formatOptions: { style: 'short' } }"/> </t:template> </t:Column> </t:columns> </t:table>

-Del View1.controller.js:

"ocultarColumna": function(oEvent) { var oTable = this.getView().byId("Vuelos"); var oItem = oEvent.getSource().getId(); var array = oItem.split("col"); var i = array[1]; oTable.getColumns()[i].setVisible(false); var mySavedVar = sap.ui.getCore().myGlobalVar; sap.ui.getCore().myGlobalVar = mySavedVar + 1; $(".ocultaBtns").removeClass("ocultarBtnDesOcultarTodo"); $(".ocultaBtns").removeClass("ocultaBtnGC"); $(".ocultaBtns").removeClass("ocultaDespleDesOcultarColumn"); $(".ocultaComboBox").removeClass("ocultaLuego"); $(".ocultaBtnss").removeClass("ocultaDespleDesOcultarColumn"); }, "mostrarColumna": function(oEvent) { var oTable = this.getView().byId("Vuelos"); var oItem = oEvent.getSource().getId(); var array = oItem.split("col"); var i = array[1]; oTable.getColumns()[i].setVisible(true); },

"mostrarTodasColumnas": function(oEvent) { //No funciona

var mySavedVar = sap.ui.getCore().myGlobalVar; sap.ui.getCore().myGlobalVar = mySavedVar - 1; var mostrarColumnas = this.getView().byId("btnMostrarTodasColumns"); var oTable = this.getView().byId("Vuelos"); var array2 = mostrarColumnas.getSelectedKey().split("col"); var i = array2[1]; if (oEvent.mParameters.pressed === true) {oTable.getColumns()[0].setVisible(true); oTable.getColumns()[1].setVisible(true); oTable.getColumns()[2].setVisible(true); }

onInit: function() { $(".ocultaYDesOcultaColumns").addClass("noVisible"); sap.ui.getCore().myGlobalVar = 0; }

10 |10000 characters needed characters left characters exceeded
* Please Login or Register to Answer, Follow or Comment.

1 Answer

avatar image
Former Member Jul 24, 2017 at 11:24 AM
0

Ya no hace falta he solucionado el problema.

Gracias de todas formas

Share
10 |10000 characters needed characters left characters exceeded