I’m using a custom.xml w/ xmlB to load into my grid. The custom.xml is shown below. Note the User attributes, “firstName, id, initials, and lastName” tags are in alphabetical order. I can’t change the ordering of the xml because the xml is generated from a webservice. (given the webservice framework that i’m using)
Bob
234
BBB
Roberts
Jim
988
JJJ
James
The grid will display…
Bob,234,BBB,Roberts
Jim,988,JJJ,James
How can I control the column ordering such that I want the grid to display
234,BBB,Bob,Roberts
988,JJJ,Jim,James
I tried “mygrid.setColumnIds(“id,initials,firstName,lastName”);” and that doesn’t seem to work ? ? ?
Thx in advance
Problem confirmed and fixed, please use attached js file instead of original one - with it, order of columns will be equal to the order of column IDs
dhtmlxgrid_data.zip (1.11 KB)
Hi David and the support team,
We are trying to do exactly the same thing as david mentioned. We have a custom xml named EmployeeData.xml format like :
<?xml version="1.0" encoding="utf-8"?>
<Employees>
<Employee ID=“xxx-xx-1234”>
<PostId>1</PostId>
<Department>IT</Department>
<EmployeeNum>xxx-xx-1234</EmployeeNum>
<EmployeeName>Ortha G. Smith</EmployeeName>
<Status>Active</Status>
<Exempt>No</Exempt>
<TempDept>
</TempDept>
<TempRate>
</TempRate>
<RegHrs>80</RegHrs>
<OTHrs>0</OTHrs>
<Other1>0</Other1>
<Other2>0</Other2>
<Earnings1>0</Earnings1>
<Earnings2>0</Earnings2>
<Earnings3>0</Earnings3>
</Employee>
</Employees>
in our jsp code where we are making the grid, we have written the following code to match the above format:
function doInitGrid(){
mygrid = new dhtmlXGridObject(‘mygrid_container’);
mygrid.setImagePath(“imgs/”);
mygrid.setHeader(“PostId,Department,EmployeeNum,EmployeeName,Status,Exempt,TempDept,TempRate,RegHrs,OTHrs,Other1,Other2,Earnings1,Earnings2,Earnings3”);
mygrid.setInitWidths(",,,,,,,,,,,,,,*");
mygrid.setColAlign(“center,center,center,center,center,center,center,center,center,center,center,center,center,center,center”);
mygrid.setSkin(“light”);
mygrid.setColSorting(“na,str,str,str,str,na,na,na,na,na,na,na,na,na,na”);
mygrid.setColTypes(“ed,ed,ed,ed,ed,ed,ed,ed,ed,ed,ed,ed,ed,ed,ed”);
mygrid.setColumnIds(“PostId,Department,EmployeeNum,EmployeeName,Status,Exempt,TempDept,TempRate,RegHrs,OTHrs,Other1,Other2,Earnings1,Earnings2,Earnings3”);
mygrid.enableKeyboardSupport(true);
mygrid.enableSmartRendering(true,10);
mygrid.init();
mygrid.loadXML(“EmployeeData.xml”,“xmlB”);
But this is not working. We have also included the js file u have attached in this post. Kindly let us know what need to be done.
Thanks in advance.
You need to defined which tag used as top element , and which one define rows
grid.xml.top="Employees"
grid.xml.row="Employee"
mygrid.loadXML(“EmployeeData.xml”,“xmlB”);