Êý¾Ý¿â½á¹¹ÈçÏ£º
id parentid,name,money,totalmoney,submoney
0,0,¸ù½Úµã,0,15000,0
1,0,ÕÅɽ,1000,5000,0
2,0,ÕźÃ,2000,7000,0
3,0,ÍõÎå,3000,3000,0
4,1,ÀèÃ÷,4000,4000,0
5,2,ÀÏÁõ,5000,5000,0
type
tmydata = record
id:integer;
parentid:integer;
name:string;
money:double;
totalmoney:double;
submoney:double;
resume:boolean;
end;
pmydata = ^tmydata;
ÏÖÔÚÏë·´Ïò¼ÆËãsubmoney.
submoney Êǵ±Ç°½ÚµãµÄtotalmoney ¼õÈ¥ÏÂÃæËùÓвã´ÎµÄmoney.
²¢ÇÒҪȥµôµ±Ç°Ï¼¶½ÚµãµÄmoney×î´óÖµ¡£
function submoney(p:tTreenode):double;
var
i:integer;
d:pcustdata;
begin
d:=pcustdata(p.data);
{
if not d.resum then //resum Æðµ½Ö»¼ÆËãÒ»´ÎµÄ×÷ÓÃ?¡£
begin
result:=d.money;
exit;
end;
}
if p.Count <1 then
begin
d.submoney := 0; //=0
result := d.money;
d.resum:=false;
exit;
end;
result := d.money;
for i:=0 to p.count -1 do
result := result + submoney(p.Item[i]);
//È«²¿¼ÓÆðÀ´ÒÔºóÓÃ×ÜÊýÈ¥¼õ
d.submoney := d.totalmoney + d.money - result;
d.resum:=false;
end;
ÎÒдµÄÕâ¸öûÓп¼ÂÇϼ¶½ÚµãµÄ×î´óÖµ¡£
ÁíÍâÒ»ÖÖ¡£
function submoney(p:tTreenode):double;
Ïà¹ØÎÊ´ð£º
·µ»ØµÄÄÚÈÝÊÇÈçÏ´úÂë,ÔõôÄÜÇþµÀ2b?
<p class="text1">1a </p>
<p class="text1">2b </p>
<p class="text1">3c </p>
<p cl ......
³ÌÐòʹÓõÄÊÇOrcalÊý¾Ý¿â£¬Ï붨ÆÚ£¨Ã¿¼¾¶È£©¶ÔÊý¾Ý¿â½øÐб¸·Ý£¬Ã»É¶Í·Ð÷£¬ÇëÎÊÓ¦¸ÃÔõôŪ£¿
ÓÐÊ²Ã´ÌØÊâÒªÇóÂ𣬱ÈÈçҪǰ¶Ë½çÃæ£¿
Ò»°ãÓÃÊý¾Ý¿â×Ô´øµÄ¡°¼Æ»®ÈÎÎñ¡±ÅäÖÃһϾ͹»ÁË
ûÓÐÊ²Ã´ÌØÊâÒªÇó¡£ÀýÈ磬ֻҪµ ......
//DLL ·ÅÔÚEXEÖÐûÎÊÌâ
function SkinForm(var skfrm:TForm):Integer;stdcall;
var
skf:TbsBusinessSkinForm;
nskfrm:TForm;
begin
frmUUMain:=skfrm;
skf:=TbsBus ......
СµÜ×î½ü×öÁ˼¸¸ö·þÎñ ·þÎñÔËÐÐÐèҪһЩ²ÎÊý ²ÎÊýÊÇͨ¹ýÒ»¸ö³ÌÐò½çÃæÐÞ¸ÄµÄ ²ÎÊý±£´æÔÚaccessÊý¾Ý¿âÖÐ ÏÖÔÚ³öÏÖÒ»ÁéÒìÏÖÏó µ¥¶ÀµÄ·þÎñÊÇ¿ÉÒÔ½øÐпØÖƵ썷þÎñµÄÍ£Ö¹ ÔÝÍ£µÈµÈ£©µ«ÊǶà¸ö·þÎñÒ»Æð¿ªÆô»á³öÏÖÒ»·þÎñ¿ª ......
ÓÐûÓа취ʵÏÖ¸úQQÓÊÏäÒ»ÑùµÄЧ¹û£¬µã»÷×ó±ßµÄ²Ëµ¥£¬ÓÒ±ßˢУ¬¶à¸öÒ³Ãæ¼äÇл»£¬¶ø×ó±ßµÄ²Ëµ¥À¸²»±ä
ÓÐºÜ¶à¿Ø¼þ¿ÉÒÔʵÏÖ
µÈÄã·Ö¼Ó·Ö£¬ÎÒ¸øÄãд¸öÔ´Âë¡£Õâµã·ÖʵÔÚûÓж¯Á¦»Ø´ð¡£
ExpressBars
¿´¿´¡£
Ò ......