我有一个网格,其中包含与其表相同的6个字段,即事务表包含6个字段。该网格包含:
Transactionid
Name
Date
Transactiontype
amount
action
交易类型可以是销售,如果交易是销售,则授权如果其授权,如果退款则退款,如果其获取则进行后续处理,如果交易无效则进行撤销。这些退款,无效和捕获位于网格的操作字段中,如果交易类型为销售,那么您可以退款,因此在相应的操作字段中您将获得退款操作。现在您退款或获取或取消另一个使用新的事务ID将记录插入到数据库中。
现在我的问题是,当我检查这个新插入的记录时,我无法获得此退款交易是从哪个销售交易完成的。如果有人做了部分退款,那么我必须计算剩余的金额。我不能再将字段添加到我的表中,是否可能这样?
Transaction ID Name Trans Date Type Amount Action
qwee1321312 aa bb 03/21/2012 Sale $14.00 Refund
adsd231233 aa bb 03/26/2012 Sale $50.00 Refund
12312dda aa bb 03/26/2012 Authorize $100.00 Capture Void
aa bb 03/26/2012 Void $100.00
行动领域是执行退款,捕获或无效转换。每当您取消或退款或捕获创建的新行时。现在如何获取和删除创建第4行的第3行的操作字段。 我正在检查htmlrowcreated事件
if (type == "Sale")
{
//Checks Amount for sale transaction
amount = Convert.ToDecimal(CheckTransaction(Convert.ToInt64(tid), (int)Enums.TransactionType.Refund));
if (amount > 0)
{
lnkaction.Text = "Refund";
lnkaction.Attributes.Add("onclick", "javascript:return RefundPopup('" + tid + "','" + Refund1.lblClientID + "','" + amount + "','Refund Sale');");
}
}
else if (type == "Authorize")
{
//Checks Amount for authorization transaction
amount = Convert.ToDecimal(CheckTransaction(Convert.ToInt64(tid), (int)Enums.TransactionType.PostAuthorize));
if (amount > 0)
{
lnkaction.Text = "Capture";
lnkaction.Attributes.Add("onClick", "javascript:return RefundPopup('" + tid + "','" + Refund1.lblClientID + "','" + amount + "','Capture Sale');");
lnkvoid.Text = "Void";
}
}
但在我退款或无效后,它无效。
答案 0 :(得分:0)
我仍然不确定我理解你想要实现的目标,但......
我认为您正在尝试做什么。
您的示例有3行?
用户点击第3行的“Void”?
然后创建第4行?
您现在想要从第3行删除“Capture”和“Void”按钮吗?
您应该以某种方式将行标记为已退款,例如将类型设置为“Refunded”或“Voided”,然后使用其Visible属性隐藏此类型的按钮