jqgrid subgrid anidado Subgrid de 4to nivel siempre devuelve el primer rowid de la subgrid

jqGrid v4.3.2
ie9
win7enterprise

Estoy usando el siguiente código para generar subgrids:

http://www.trirand.com/blog/jqgrid/jqgrid.html -> Avanzado -> Grid como Subgred

Hago esto y tengo

Subgrid de 1er nivelDE ACUERDO
Subgrid de 2do nivelDE ACUERDO
Subgrid de 3er nivelDE ACUERDO
Subgrid de 4to nivelCarga el subgrid OK para cada fila del 3er Lvl sg, pero muestra datos solo del primer id de la fila del 3er Lvl sg

Cuando reviso las herramientas del desarrollador, veo que la solicitud siempre envía el id de la primera fila de la tercera subgrid, sé cómo agregar parámetros personalizados con postData que ya he probado y también esta respuesta de Oleg KpostData para subgrid en jqgrid no funciona? (este no funciona en mi caso, los datos no se agregan a la solicitud)

Intenté devolver el rowdid de los siguientes eventos, pero no tuve suerte, todavía retorna el primer id de fila del tercer subgrid y, por lo tanto, para cada fila del tercer subgrid, el subgrid de children siempre devuelve lo mismo.

<code>subGridRowExpanded  //always returns first row id of the third grid
onSelectRow  //doesn't fire if we click the + icon for expanding the subgrid
beforeSelectRow  //doesn't fire at all
</code>

Otro comportamiento extraño es que si hago clic en cualquier fila de la subgrid de tercer nivel, solo selecciona la primera fila.

No, usar treegrid no es una opción, lo siento.

Estoy pensando en vincular un evento de clic en el ícono más (primera celda) de cada fila de la subcuadrícula de 3er nivel y disparar un expandSubGridRow, pero la pregunta sigue, ¿cómo obtengo el rowid de la fila en la que hice clic?de la subgrid de tercer nivel?

Saludos cordiales y gracias de antemano, cualquier ayuda es muy apreciada.

<code>jQuery("#listsg11").jqGrid({
    url:'server.php?q=1',
    datatype: "xml",
    height: 190,
    colNames:['Inv No','Date', 'Client', 'Amount','Tax','Total','Notes'],
    colModel:[
        {name:'id',index:'id', width:55},
        {name:'invdate',index:'invdate', width:90},
        {name:'name',index:'name', width:100},
        {name:'amount',index:'amount', width:80, align:"right"},
        {name:'tax',index:'tax', width:80, align:"right"},      
        {name:'total',index:'total', width:80,align:"right"},       
        {name:'note',index:'note', width:150, sortable:false}       
    ],
    rowNum:8,
    rowList:[8,10,20,30],
    sortname: 'id',
    viewrecords: true,
    sortorder: "desc",
    multiselect: false,
    subGrid: true,
    caption: "Grid as Subgrid",
    subGridRowExpanded: function(subgrid_id, row_id) {
        var subgrid_table_id;
        subgrid_table_id = subgrid_id+"_t";
        $("#"+subgrid_id).html("<table id='"+subgrid_table_id+"' class='scroll'></table>");
        jQuery("#"+subgrid_table_id).jqGrid({
            url:"subgrid.php?q=2&id="+row_id,
            datatype: "xml",
            colNames: ['No','Item','Qty','Unit','Line Total'],
            colModel: [
                {name:"num",index:"num",width:80,key:true},
                {name:"item",index:"item",width:130},
                {name:"qty",index:"qty",width:70,align:"right"},
                {name:"unit",index:"unit",width:70,align:"right"},
                {name:"total",index:"total",width:70,align:"right",sortable:false}
            ],
            subGrid: true,
            caption: "Grid as Subgrid",
            subGridRowExpanded: function(subgrid_id2, row_id2) {
                var subgrid_table_id2;
                subgrid_table_id2 = subgrid_id2+"_t";
                $("#"+subgrid_id2).html("<table id='"+subgrid_table_id2+"' class='scroll'></table>");
                jQuery("#"+subgrid_table_id2).jqGrid({
                    url:"subgrid.php?q=3&id="+row_id2,
                    datatype: "xml",
                    colNames: ['No','Item','Qty','Unit','Line Total'],
                    colModel: [
                        {name:"num",index:"num",width:80,key:true},
                        {name:"item",index:"item",width:130},
                        {name:"qty",index:"qty",width:70,align:"right"},
                        {name:"unit",index:"unit",width:70,align:"right"},
                        {name:"total",index:"total",width:70,align:"right",sortable:false}
                ],
                subGrid: true,
                caption: "Grid as Subgrid",
                subGridRowExpanded: function(subgrid_id3, row_id3) {
                    var subgrid_table_id3;
                    subgrid_table_id3 = subgrid_id3+"_t";
                    $("#"+subgrid_id3).html("<table id='"+subgrid_table_id3+"' class='scroll'></table></div>");
                    jQuery("#"+subgrid_table_id3).jqGrid({
                        url:"subgrid.php?q=4&id="+row_id3,
                        datatype: "xml",
                        colNames: ['No','Item','Qty','Unit','Line Total'],
                        colModel: [
                            {name:"num",index:"num",width:80,key:true},
                            {name:"item",index:"item",width:130},
                            {name:"qty",index:"qty",width:70,align:"right"},
                            {name:"unit",index:"unit",width:70,align:"right"},
                            {name:"total",index:"total",width:70,align:"right",sortable:false}
                    ]
                    });
                }
                });
            }
        });
    }
});
</code>

Respuestas a la pregunta(1)

Su respuesta a la pregunta