谁用过tree做过会计科目表
我想用tree来做科目表,一级科目二级科目知道怎么做,三级开始就想不到办法了。
也就是第三层开始想不到办法,因为三级科目经常会添加到,二级科目次序一变,三级的顺序就都乱了。
请问哪个高手能帮帮我。
[解决办法]
1、首先构造会计科目表结构:如表名为“kjkm”,字段分别为“科目代码”,“科目名称”,“上级科目代码”
if used("kjkm")==.f. use kjkm shared in 0 alias kjkmendifselect kjkmgo topscan nod=thisform.treeview1.nodes if empty(alltrim(kjkm.上级科目代码))==.t. nod.add( , 1, alltrim(kjkm.科目代码)+"_", alltrim(kjkm.科目代码)+" "+alltrim(kjkm.科目名称) ) else nod.add( alltrim(kjkm.上级科目代码)+"_", 4, alltrim(kjkm.科目代码)+"_", alltrim(kjkm.科目代码)+" "+alltrim(kjkm.科目名称) ) endifendscanuse in kjkm
[解决办法]
还是以3楼代码为例说明,还需要注意的是:
if used("kjkm")==.f. use kjkm shared in 0 alias kjkmendifselect * from kjkm order by 科目代码 into cursor curKjkmselect curKjkmgo topscan nod=thisform.treeview1.nodes if empty(alltrim(curKjkm.上级科目代码))==.t. nod.add( , 1, alltrim(curKjkm.科目代码)+"_", alltrim(curKjkm.科目代码)+" "+alltrim(curKjkm.科目名称) ) else nod.add( alltrim(curKjkm.上级科目代码)+"_", 4, alltrim(curKjkm.科目代码)+"_", alltrim(curKjkm.科目代码)+" "+alltrim(curKjkm.科目名称) ) endifendscanuse in curKjkm