诚请vfp高手入,十豆三特邀
现实习帮公司做一个财务系统,在vfp环境下编程。现涉及一个出账表(出账编号,出账日期,出账客户,出账金额,出账备注),一个入账表(入账编号,入账日期,入账客户,入账金额,客户转账银行,入账账号),一个销账表(销账编号,入账编号,出账编号,客户名称,销账金额)。流程是先出账登记,待客户打款后入账登记(入账登记时系统自动根据客户打款金额搜索出账记录,出账编号与入账编号一样),之后在销账管理功能块,点击自动销账按钮后,系统自动生成销账记录添加在销账表中。
现在遇到几个问题,现挑出急需解决的一个问题:自动销账按钮实现多表搜索功能,将两个出入账表中出账编号等于入账编号,出账金额等于入账金额的记录添加到销账表中。销账表编号为入账表和销账表编号合并,出入账编号为出账和入账编号,销账金额为入账金额,请问如何修改下面的查询语句:
select out.出账编号,in.入账编号,out.客户名称,in.入账金额 from out,in where out.出账编号=in.入账编号;
and out.出账金额=in.入账金额;into table melt.dbf
[解决办法]
贴记录及要求结果出来看看
将两个出入账表中出账编号等于入账编号,出账金额等于入账金额的记录添加到销账表中:是AND还是OR
你的SQL语句有什么问题?
[解决办法]
Select A.出账编号,B.入账编号,A.客户名称,B.入账金额 Into Table melt.Dbf From out表 A Inner Join In表 B On A.出账编号=B.入账编号 And A.出账金额=B.入账金额
[解决办法]
看着要求有点晕,最好列举两表数据,将列出结果表列子。
[解决办法]
稍微修改一下:
假设入账日期为字符型
Select A.出账编号+B.入账编号,
left(入账日期,4)+入账编号 as 入账编号1,
left(出账日期,4)+出账编号 as 出账编号1,
A.客户名称,B.入账金额 Into Table melt.Dbf From out表 A Inner Join In表 B On A.出账编号=B.入账编号 And A.出账金额=B.入账金额
[解决办法]
入账日期 和 出账日期 均为你描述的,即为字符型,那就用以下代码
Select Alltrim(B.入账编号)+Alltrim(A.出账编号) As 销账编号,Left(B.入账日期,4)+B.入账编号 As 入账编号,Left(A.出账日期,4)+A.出账编号 As 出账编号,A.客户名称,B.入账金额 Into Table melt.Dbf From 出账表 A Inner Join 入账表 B On A.出账编号=B.入账编号 And A.出账金额=B.入账金额
[解决办法]
也可以分行写:
Select Alltrim(B.入账编号)+Alltrim(A.出账编号) As 销账编号,;
Left(B.入账日期,4)+B.入账编号 As 入账编号,;
Left(A.出账日期,4)+A.出账编号 As 出账编号,;
A.客户名称,B.入账金额 Into Table melt.Dbf ;
From 出账表 A Inner Join 入账表 B On A.出账编号=B.入账编号 And A.出账金额=B.入账金额
[解决办法]