合同表
合同编号 客户名称 合同金额 签定日期
111 好好好 500 2003-12-10收款登记表
合同编号 客户名称 收款金额 收款日期
111 好好好 300 2003-12-11
111 好好好 100 2003-12-12开出发票登记表
合同编号 客户名称 开票金额 开票日期
111 好好好 300 2003-12-11我现在通过一个DBGrid来显示报表,DBGrid里有这么多的列(Columus)
合同编号 客户名称 应收金额 已收金额 未收金额 已开发票(金额) 待开发票(金额)
请问怎么实现?最能够详细点,把代码和SQL也写一下,
合同编号 客户名称 合同金额 签定日期
111 好好好 500 2003-12-10收款登记表
合同编号 客户名称 收款金额 收款日期
111 好好好 300 2003-12-11
111 好好好 100 2003-12-12开出发票登记表
合同编号 客户名称 开票金额 开票日期
111 好好好 300 2003-12-11我现在通过一个DBGrid来显示报表,DBGrid里有这么多的列(Columus)
合同编号 客户名称 应收金额 已收金额 未收金额 已开发票(金额) 待开发票(金额)
请问怎么实现?最能够详细点,把代码和SQL也写一下,
select * from 表名
2.
procedure showData;
begin
with query1 do
begin
sql.clear;
sql.add(select 合同编号,客户名称,合同表.合同金额 as 应收金额, 收款登记表.收款金额 as 已收金额,合同表.合同金额 -收款登记表.收款金额 as 未收金额,开出发票登记表.开票金额 as 已开发票(金额),合同表.合同金额 -收款登记表.收款金额 as 待开发票(金额));
if not active then open;
end;
end;
2.
procedure showData;
begin
with query1 do
begin
sql.clear;
sql.add(select 合同编号,客户名称,合同表.合同金额 as 应收金额, 收款登记表.收款金额 as 已收金额,合同表.合同金额 -收款登记表.收款金额 as 未收金额,开出发票登记表.开票金额 as 已开发票(金额),合同表.合同金额 -收款登记表.收款金额 as 待开发票(金额) from 合同表,收款登记表,开出发票登记表);
if not active then open;
end;
end;