——此文章摘自《Delphi 数据库开发经典案例解析》定价¥特价¥购买>> //显示试算平衡表窗体 procedure TmainNClick(Sender: TObject); var newform:Tsumaccount; begin if findForm(试算平衡表(正式使用))=false then begin //若窗体不存在则创建窗体 newform:=TsumaccountCreate(application); newformCaption:=试算平衡表(正式使用); //在正式平衡表中使用 newformforuse; end; end; //执行凭证过帐储存过程 procedure TmainNClick(Sender: TObject); var pnuminputsumoutputsum:string; begin if applicationMessageBox(凭证过帐后即不可修改是否确认过帐?确认MB_OKCANCEL)=IDOK then begin //获得分录表中的统计数据 adoqueryActive:=false; adoqueryActive:=true; pnum:=adoqueryFieldByName(凭证数)AsString; inputsum:=adoqueryFieldByName(借方金额)AsString; outputsum:=adoqueryFieldByName(贷方金额)AsString; //执行储存过程实现凭证过帐 try adocommandCommandText:=exec sf_凭证过帐; adocommandExecute; except showmessage(过帐失败); exit; end; //显示成功信息并显示统计数据 showmessage(过帐成功+#+#+过帐凭证数目为:+pnum+#+借方金额合计: +inputsum+#+贷方金额合计+outputsum); //删除分录表和凭证表 adocommandCommandText:=delete from 分录表; adocommandExecute; adocommandCommandText:=delete from 凭证表; adocommandExecute; end; end; //执行期末结帐的储存过程 procedure TmainNClick(Sender: TObject); begin if applicationMessageBox(结帐将进入下一个会计期间是否结帐?确认 MB_OKCANCEL)=IDOK then begin try adocommandCommandText:=exec sf_期末结帐; adocommandExecute; except showmessage(结帐失败); exit; end; showmessage(结帐成功); end; end; [] [] [] [] |