0
votes

I have a interactive grid with many columns. I want a certain column to be always placed at first position in the row.

**Has Role**   Name   User_ID  Address   Phone number

Basically I want to freeze the column 'Role' so that user can not change its position in runtime. He can change the positions of others columns like Name, USER_ID, Address, Phone number.

How can I achieve this ?

2
Hi.. does somebody has any idea..how we can do this..?Abha

2 Answers

0
votes

**EDIT - New answer. I edited the previous answer, because it would be too long to fit in a comment.

I suppose you could freeze that column and disable the freeze/unfreeze option in the header with the following. Keep in mind, this disables the freeze options on the whole interactive grid. Add it to the Execute when Page Loads section.

$("#ig_id").on("gridactivatecolumnheader", function(e){
    setTimeout(function() {
        $("#ig_id").find("[data-option='freeze']").remove();
    },
               1);
}
            );

To do it on a single column, go to it on its column on the advanced section, and add the following in the JavaScript Initialization Code. You'll basically deactivate the header actions menu form appearing, thus not allowing people to change it's freezing options. Not sure though if the order can be changed. I haven't tested that. I'll give it a try here as well.

function(config) {
    config.defaultGridColumnOptions = {
        noHeaderActivate: true
    };  
    return config;
}
-1
votes

Maybe this link will help? I think its a linked question though not the answer required here. I had to look up how to freeze the first column on an IG so that the user could scroll through the other columns without losing sight of the first.

Apex freeze frames on interactive grids

The user can manually freeze frames himself on any column in the latest versions of Apex.

Regards