Sorting multiple column: TypeError: aoColumns[iCol] is undefined

Sorting multiple column: TypeError: aoColumns[iCol] is undefined

amparo69amparo69 Posts: 1Questions: 1Answers: 0
edited May 2015 in Free community support

Hello, I'm using DataTables 1.10.4 (also tried with latest version) with Server Side processing but I get an error when trying to order by multiple column using sorting "asc" or "desc". I want a multiple column ordering and sorting (order by column X asc and Y desc). If i put:

aDataSort: [[ 8, "desc" ],[ 1, "asc" ]]

or

orderData: [[ 8, "desc" ],[ 1, "asc" ]]

it gives me the error:
(full version)

TypeError: aoColumns[iCol] is undefined
jquery.dataTables.js
Line 63 sType = aoColumns[ iCol ].sType || 'string';

(minified version)

TypeError: d[h] is undefined
jquery.dataTables.min.js
Line 63
b=0;for(c=f.length;b<c;b++)h=f[b],i=d[h].sType||"string",n[a]._idx===l&&(n[a]._i...

but if I put

aDataSort: [8,1]

or

orderData: [8,1]

it works well (but the order is not what i want).

This is my configuration:

$('#tprincipal').dataTable( {
        "bServerSide": true,
        "sAjaxSource": 'script.php',
        "aoColumns": [
            { "data": "id_crm" },
            { "data": "imsi" },
            { "data": "estado", "aDataSort": [[ 8, "desc" ],[ 1, "asc" ]] },
            { "data": "enode" },
            { "data": "tipo", "aDataSort": [[ 4, "asc" ],[ 11, "asc" ]]},
            { "data": "producto" },
            { "data": "fechaestado" },
            { "data": "icono" },
            { "data": "orden" },
            { "data": "ip" },
            { "data": "ipbridge" },
            { "data": "ipint" }
        ],
        "bSortClasses": false,
        "searching": true,
        "paging":   true,
        "pagingType": "simple_numbers",
        "aLengthMenu": [[50, 100, 250, 500, 1000, 100000], [50, 100, 250, 500, 1000, "Todos"]],
        "iDisplayLength": 50,
        "info": true,
        "columnDefs": [
            {"targets": 7, "orderable": false},
            {"targets": 8, "visible": false, "searchable": false},
            {"targets": 9, "visible": false, "searchable": true},
            {"targets": 10, "visible": false, "searchable": true},
            {"targets": 11, "visible": false, "searchable": false}
        ],
        "dom": 'T<"clear">lfrtip'
    } );

And the html:

<table class="tresumen" id="tprincipal" width="100%">
  <thead>
  <tr>
  <th>Identificador</th>
  <th>IMSI</th>
  <th>Estado</th>
  <th>Estación Base</th>
  <th>Tipo/IP</th>
  <th>Producto</th>
  <th>Fecha</th>
  <td>Acciones</td>
  <td>Orden</td>
</tr>
</thead>
<tbody>
</tbody>
</table>
This discussion has been closed.