合同的付款约定是分期付款,每隔一段时间(付款时间有5-8个不等,人为指定)付一部分。
现要系统自动随着时间的推移计算出整个合同的应收帐款,怎么做?

解决方案 »

  1.   

    这么说吧,每个合同的收款时段各自是不一样的,拉单子难啊,呵呵。
    所以需要对每个合同输入以下应收款信息:应收款项      到期时间       应收金额
    定金      xx 年 xx 月 xx 日  ¥500.00
    预付款    xx 年 xx 月 xx 日  ¥300.00
    进度款1   xx 年 xx 月 xx 日  ¥1000.00
    进度款2   xx 年 xx 月 xx 日  ¥3000.00
    进度款3   xx 年 xx 月 xx 日  ¥5000.00
    ......
    质保金    xx 年 xx 月 xx 日  ¥1000.00需要计算的是:比如进度款1的“到期时间”为2006-07-03,那么应收的总额就是500+300+1000.
    但这个计算不应该人工来计算,而是系统判断当前时间后自动将到当前时间该收的钱全部相加,就得到我要的理论应收帐款。其中进度款可能只有一行也可能3行4行。
      

  2.   

    select sum(应收金额)
    from [table]
    where 到期时间<=getdate()
      

  3.   

    bugchen888(臭虫) 没理解我的意思,难道每个合同每天都去执行一次你的那条语句?
      

  4.   

    应收款设定表是在合同一签订回来就输入了数据,而应收款要在以后的N久才产生。你说应收款设定表的触发器该用insert/update还是delete触发?
      

  5.   

    update触发器有针对某个字段更新的设定,另外,你也可以在触发器中程序判断。
      

  6.   

    在合同表中进行触发不行吗?条件是系统时间大于应收款设定表中的到期时间,我是新学SQL的,不知道说对了没有?
      

  7.   

    bugchen888(臭虫) ( ) 信誉:100 -------------------------------------------方法可行。
      

  8.   

    ggysql() 收款的时间有很多个,不是一个Night26() 看我前面的回话:
    bugchen888(臭虫) 没理解我的意思,难道每个合同每天都去执行一次你的那条汇总语句?我的合同已经有几千条了。
      

  9.   

    不知道理解得对不对
    可以在这张表上加一个字段  小计    (相当于结款余额)应收款项      到期时间       应收金额       小计
    定金      xx 年 xx 月 xx 日  ¥500.00      ¥500.00
    预付款    xx 年 xx 月 xx 日  ¥300.00      ¥800.00
    进度款1   xx 年 xx 月 xx 日  ¥1000.00     ¥1800.00
    进度款2   xx 年 xx 月 xx 日  ¥3000.00     ¥4800.00
    进度款3   xx 年 xx 月 xx 日  ¥5000.00     ¥9800.00
    ......
    质保金    xx 年 xx 月 xx 日  ¥1000.00     ¥。