您现在的位置是:首页 >

具有检错和纠错功能的编码是 机构设置及编码功能的实现(五)[2]

火烧 2021-05-10 15:54:41 1036
机构设置及编码功能的实现(五)[2] ——此文章摘自《Del hi 数据库开发经典案例解析》定价 ¥  特价 ¥  购买 gt gt //track li ktech c /?m_id=da gda
具有检错和纠错功能的编码是 机构设置及编码功能的实现(五)[2]

机构设置及编码功能的实现(五)[2]  

    ——此文章摘自《Delphi 数据库开发经典案例解析》定价 ¥  特价 ¥  购买>>//track linktech cn/?m_id=dangdang&a_id=A &l= &l_type = width= height= border= nosave>

    //     //某一个节点的编号实际上是由它自己的类别号 也就是它在本级中的INDEX     //前面加上父节点的编号组成 而父节点的编号也可以用这种方法依次推出     while pnode Parent<>nil do      begin        sp:=inttostr(pnode Parent Index);        if length(sp)= then        sp:= +sp        else        sp:=sp;        s:=sp+s;        pnode:=pnode Parent;        //节点的编号等于类别号前面加上它的父节点编号 也等于加上它的所有父节点的类别号        //这里的加是指字符串加        //取父节点的类别号 并一直追溯到最顶层的主节点 从而构成一个节点的完整编号      end;        code:=copy(s length(s));              //由于首项的编号为 程序中将它转为了 因此需要去掉一个零        temp:=length(code) ;        temp:=round(temp/ );        itemlevel:=inttostr(temp);        //根据编号的长度来计算它的所属级别 也就是它的itemlevel       adomand CommandText:= insert into 组织机构编码表([内部编号]       [类别] [AbsIndex] [ItemIndex] [ItemLevel] [ParentIndex] [类别号]       [单位编号] [单位名称]) values( +number+ +name       + +absindex+ +itemindex+ +itemlevel+       +parentindex+ +order+ +code+ +name+ ) ;       adomand Execute;       //向表中插入新记录      end;      adomand CommandText:= set IDENTITY_insert 组织机构编码表 off ;      adomand Execute;      //关掉组织机构编码表的插入许可      adomand Commandtext:= drop table zztemp ;      adomand Execute;      //删除临时表      MessageBox( 对机构所作的修改已经保存成功! 成功 MB_OK);      //刷新树形图的显示      treeview Items Clear;      adoquery Active:=false;      adoquery Active:=true;      button Click;     end;      

    这样就把程序中对树形图所做的修改 保存到了SQL Server中的【组织机构编码表】数据表中 下一次再打开程序的时候 看到的就是已修改过的数据表中读出的新的树形图了

    至此 我们就完成了结构设置编码功能的设置 需要说明的是 我们在程序中利用了数据表的存储顺序的优点 数据表中数据按照节点中绝对顺序 也就是AbsoluteIndex存储的特性为我们对数据库进行操作 把树形图的关系数据保存到【组织机构编码表】数据表 以及在代码中确定数据的一些参数 提供了很大的方便 我们根据树型图中节点所提供的数据 就完全确定了相对应的【组织机构编码表】数据表中的全部数据 而没有再依赖其他的输入或者是保存结果 可以看到 一个好的存储格式可以为程序设计提供很大的方便 很多时候甚至可以起到事半功倍的效果

lishixinzhi/Article/program/Delphi/201311/24891  
永远跟党走
  • 如果你觉得本站很棒,可以通过扫码支付打赏哦!

    • 微信收款码
    • 支付宝收款码