How to show in grid cell of type tree text instead of id

Hello



I have the following definition xml for grid:



<?xml version="1.0" encoding="UTF-8"?>





Sąskaita

Kreditas

Debetas

Pastaba







1070

11,00





<![CDATA[Pa�alinti]]>







and following fragment of xml for stree embedded in first column:



<?xml version="1.0" encoding="UTF-8"?>











0





In row :



1070

I have reference to tree item with id 1070. But in grid first column i see number 1070 instead of text=“1.10.20.0301-PIRMAS KASININKAS - PINIGAI”. My question is: how i can resolve id to text. In first cell there should be 1.10.20.0301-PIRMAS KASININKAS - PINIGAI instead of id 1070.



Respectfully

Albertas

Please check if you are using mygrid.setSubTree(tree,0). This method attaches an external tree as an editor. The parameters here are:
subtree - a tree instance that will be used as an editor;
column - a column in the main grid to which the sub-tree will be linked.

Yes i’m using setSubTree:

         var tree=new dhtmlXTreeObject(“treeboxbox_tree”,“100%”,“100%”,0);
        tree.setImagePath("<c:url value="/js/tree/imgs/"/>");
        var mygrid = new dhtmlXGridObject(‘gridbox’);
        mygrid.setImagePath("<c:url value="/js/grid/imgs/"/>");
        mygrid.enableAlterCss(“even”,“odd”);
        mygrid.i18n.decimal_separator=",";
        mygrid.i18n.group_separator="";
        mygrid.attachEvent(“onKeyPress”,evKeyPress);
        mygrid.attachEvent(“onEditCell”,evOnEditCell);
        mygrid.loadXML(“batchItems.htm?id=${id}”);
        var dp = new dataProcessor(“batchItems.htm”);
        dp.setTransactionMode(“POST”);
        dp.setVerificator(0,accountVerificator);
        dp.setUpdateMode(“cell”);
        //dp.enableDataNames(true);
        dp.init(mygrid);
        tree.setXMLAutoLoading(“coaService.htm?fetchAccounts”);
        tree.attachEvent(“onSelect”,evTreeSelect);
        tree.loadXML(“coaService.htm?loadRoots&id=${id}”, function() {
            mygrid.setSubTree(tree, 0, 0);
        });

Note: ${id} and <c:url is JSP syntax.


Please, try to initilize grid after tree xml is loaded. In this case grid can find the corresponding text in tree:


var tree=new dhtmlXTreeObject(“treeboxbox_tree”,“100%”,“100%”,0);
tree.setImagePath("<c:url value="/js/tree/imgs/"/>");
tree.setXMLAutoLoading(“coaService.htm?fetchAccounts”);
tree.attachEvent(“onSelect”,evTreeSelect);
tree.loadXML(“coaService.htm?loadRoots&id=${id}”, function() {
var mygrid = new dhtmlXGridObject(‘gridbox’);
mygrid.setSubTree(tree, 0, 0);


mygrid.loadXML(“batchItems.htm?id=${id}”);

});









After rewrite code as below, text is resolved from id.

        var mygrid = new dhtmlXGridObject(‘gridbox’);
         var tree=new dhtmlXTreeObject(“treeboxbox_tree”,“100%”,“100%”,0);
        tree.setImagePath("<c:url value="/js/tree/imgs/"/>");
        tree.setXMLAutoLoading(“coaService.htm?fetchAccounts”);
        tree.attachEvent(“onSelect”,evTreeSelect);
        tree.loadXML(“coaService.htm?loadRoots&id=${id}”, function() {
            mygrid.setSubTree(tree, 0, 0);
            mygrid.setImagePath("<c:url value="/js/grid/imgs/"/>");
            mygrid.enableAlterCss(“even”,“odd”);
            mygrid.i18n.decimal_separator=",";
            mygrid.i18n.group_separator="";
            mygrid.attachEvent(“onKeyPress”,evKeyPress);
            mygrid.attachEvent(“onEditCell”,evOnEditCell);
            mygrid.loadXML(“batchItems.htm?id=${id}”);
            var dp = new dataProcessor(“batchItems.htm”);
            dp.setTransactionMode(“POST”);
            dp.setVerificator(0,accountVerificator);
            dp.setUpdateMode(“cell”);
            //dp.enableDataNames(true);
            dp.init(mygrid);
        });

Very nice widgets, i got approvement from managment to purchase professional version :slight_smile: