我需要你的帮助 . 我有两张 table Payments
和 Invoices
.
我需要一个触发器,当我插入付款行时,会自动将付款与发票开始关联,发票的最早日期最新到最新日期 . 例:
我有2张发票 . 第一张发票金额为€100.00,日期为2018年5月1日,第二张发票金额为200.00欧元,日期为2018年6月1日 . 我收到250.00欧元的付款 . 当我在我的付款表中输入此付款时,我需要一个触发器,在付款表中拆分付款,如下所示:€100.00以支付第一张发票,即第一张发票,其中包含最早的日期,剩余的€150.00在第二张发票上 . 随后,必须在发票表的“amount_recovered”字段中输入已恢复的金额 .
我的另一个问题是:当付款金额大于发票金额的总和时,我需要在指定为“利息收集”的另一个字段中输入额外金额,并且当付款金额更高时甚至比票据金额加上利息金额的总和,我需要将它与另一个名为“费用”的字段联系起来 .
示例:我有2个发票 . 第一张发票金额为100欧元,日期为2018年5月1日,第二张发票金额为200欧元,日期为2018年6月1日 . 我收到400欧元的付款 . 付款应在付款表中以这种方式划分:
€100.00以支付第一张发票 . €200.00以支付第二张发票 . 50.00欧元以支付利息金额(如果利息金额为100欧元,则所有剩余的100欧元将用于支付利息) . 50欧元以支付费用 .
付款表应在上传后包含以下行:
Id_Payment | Type_Payment | Mod_Payment | PAYMENT_AMOUNT
1 | Invoice | CreditCard | € 100.00
1 | Invoice | CreditCard | € 200.00
1 | Interests | CreditCard | € 50.00
1 | expenses | CreditCard | € 50.00
发票表应如下所示:
Id_Invoices | Invoice_Date | Amount_Invoice | Recovered Amount
1 | 1 May 2018 | € 100.00 | € 100.00
1 | 1 June 2018 | € 200.00 | € 200.00
如果我的问题太复杂, Build 触发器需要很长时间,我也可以付钱 .
非常感谢大家,安德鲁