数据库为:SQL 数据控件:两个ADOQUERY、DATESOURCE、DBGRIDEH。
ADOQUERY1链接a1表: 序号、书名、作者、单价、购买数、金额;
ADOQUERY2链接b1表: 书名、作者、单价
如果在添加a1表时,当不知道“单价”的情况下。
在b1表中调用单价 条件为:a1.书名=b1.书名 and a1.作者=b1.作者。
然后a1表的金额:=b.单价*a.购买数.
procedure Tfdiandan.ADOQuery1CalcFields(DataSet: TDataSet);//判断a1表中是否知道单价。如果不知道则不输入为空。
begin
if 单价=''then
begin
金额:=b1.单价*购买数;
end
else
begin
金额:=单价*购买数;
end;
end;
八十分赠之!如有不明之处请讲!
ADOQUERY1链接a1表: 序号、书名、作者、单价、购买数、金额;
ADOQUERY2链接b1表: 书名、作者、单价
如果在添加a1表时,当不知道“单价”的情况下。
在b1表中调用单价 条件为:a1.书名=b1.书名 and a1.作者=b1.作者。
然后a1表的金额:=b.单价*a.购买数.
procedure Tfdiandan.ADOQuery1CalcFields(DataSet: TDataSet);//判断a1表中是否知道单价。如果不知道则不输入为空。
begin
if 单价=''then
begin
金额:=b1.单价*购买数;
end
else
begin
金额:=单价*购买数;
end;
end;
八十分赠之!如有不明之处请讲!
解决方案 »
- deiphi 帮助文件中有一个例子看不明白
- IHTMLDocument2 问题,继续寻求解决。
- 如何禁用Winxp的安全模式??
- 如何获得windows中Com对象所提供的相关操作的接口。
- 怎么直接取得局域网上其他机器中CPU和内存的占用情况?
- 如何限制使窗体不被移动出屏幕以外,还可以全屏幕
- 调用C++的dll在delphi中应该如何写?在线等...
- delphi 如何完美操作office,保存内容至数据库?
- 大家好,请教如何让我的程序窗口始终在所有窗口最下面.........................???
- 一个关于指针的问题,请高手指教,急。。。。
- 招骋Delphi程序员(广州)
- INI文件的问题
if 单价=''then
begin
strSql:='select a.price*b.qty total from b1 as a '
+'left join a1 as b on a.book_name=b.book_name and a.author=b.author'
ADOQUERY.SQL.Add(strSql);
ADOQUERY.open;
end
else
begin
strSql:='select price*qty total from a1';
ADOQUERY.SQL.Add(strSql);
ADOQUERY.open;
end;
end;
begin
if 单价=''then
begin
金额:=b1.单价*购买数;
end
else
begin
金额:=单价*购买数;
end;
是错误的。当刚添加时单价一定是空的,所以金额:=单价*购买数;永远也不会运行。而且系统还会提示其它的错误!