谁能帮我看看。谢谢(50分)

  • 主题发起人 devexpress
  • 开始时间
D

devexpress

Unregistered / Unconfirmed
GUEST, unregistred user!
create procedure pr
as

begin
declare @CurArea varchar(10)--地区

create table #tbl(类型 varchar(20), 单号 varchar(20),名称 varchar(20), 单位 varchar(10),
数量 int,单价 numeric(10,2),总价 numeric(10,2))
set nocount on
declare AreaGroup cursor
for select distinct(地区) from tbl
open AreaGroup
Fetch next from AreaGroup into @CurArea
while @@Fetch_status=0
begin
insert #tbl(类型) values(@curArea)
insert #tbl select 类型,单号,名称,单位,数量 ,单价,数量*单价 from tbl where 地区=@CurArea
insert #tbl(类型,总价) select '小计:',sum(数量*单价) from tbl where 地区=@CurArea
insert #tbl(类型) values(null)
Fetch next from AreaGroup into @CurArea
end
close AreaGroup
deallocate AreaGroup
insert #tbl(类型,总价) select '合计:',sum(数量*单价) from tbl
select * from #tbl
set nocount off
end

结果

类型 单号 名称 单位 数量 单价 总价
-------------------- -------------------- -------------------- ---------- ----------- ------------ ------------
山东 NULL NULL NULL NULL NULL NULL
采购商品 CS-01-02 威龙特级酒 瓶 20 1.50 30.00
采购商品 CS-01-03 珠江啤酒 瓶 20 1.50 30.00
采购商品 CS-01-04 杭州原装酒 瓶 20 1.50 30.00
小计: NULL NULL NULL NULL NULL 90.00
NULL NULL NULL NULL NULL NULL NULL
深圳 NULL NULL NULL NULL NULL NULL
采购商品 CS-01-05 威龙特级酒 瓶 20 1.50 30.00
采购商品 CS-01-06 龙特级酒 瓶 20 1.50 30.00
小计: NULL NULL NULL NULL NULL 60.00
NULL NULL NULL NULL NULL NULL NULL
合计: NULL NULL NULL NULL NULL 150.00

有位朋友写了上面的这个存储过程。 我以前没有用过存储过程,请问该怎样用。
这段代码该怎样用。
 
你是指在程序中如何调用吗?
如果是这样,你只需要在调用窗体中放一个TADOStoredProc,设置好数据库连接参数,
在procedurename属性中选中该过程名,然后程序中执行adostoredproc1.ExecProc即可
 
if i=12 then
i:=0;
if x=12 then
x:=0;
zd[x].Color:=$00A00000;
x:=x+1;
ZD.Color:=clRed;
i:=i+1;
zd.Color:=$00A00000;

当i=11出问题,还有,怎么没有下x的初始化
改为
ZD.Color:=clRed;
i := (i+1) mod 12;
zd.Color:=$00A00000;
 
顶部