——此文章摘自《Delphi 数据库开发经典案例解析》定价¥特价¥购买>> //资产负债报表的生成和打印 procedure TmainNClick(Sender: TObject); var index:integer; inputstring:string; newform:TFinalReport; begin //取得当前会计期间的值 setpara(); index:=strtoint(para[]); //提示用户输入要显示的会计期间 inputstring:= InputBox(请选择所要统计的会计期间 会计期间 inttostr(index)); index:=strtoint(inputstring); //计算资产负债表 adocommandCommandText:=exec sf_计算资产负债表 +inputstring+; adocommandExecute; //显示报表窗体这里不需要再查找是否已有报表窗体 //这是因为每次调用的报表窗体都可能显示不同的会计期间 newform:=TFinalReportCreate(application); newformSetPeriod(index); newformQuickRepPreview; end; //关闭窗体 procedure TmainNClick(Sender: TObject); begin close; end; 以上是主窗体的所有代码与第章中主窗体代码有区别的是我们自己编写了一个FindForm函数来查找一个MDI子窗体是否存在使用专门的函数可以大大地压缩代码规模使程序显得简练同时我们在主窗体执行储存过程中还是使用了try…except语句这样做可以在储存过程出现错误时提示用户读者可以在自己的程序中选择使用 [] [] [] [] |