]我有7张COA表,如下图所示。我需要的是,每当打开余额goto-(负数)时,类型必须自动显示CR符号,并且当该账户变为正数+时,它必须自动更改为DR。请记住,该帐户将根据条目更改为DR或CR。假设我正在现金支付中输入,并且如果科目表中的手头现金帐户为借方而公用事业为CR。如果我通过了一个条目,然后使公用事业借记在帐目表中,它必须在类型列中从CR更改为DR。
我的会计师也不想看到(-)负号,他需要输入的类型应根据条目进行更改
让我解释更多
假设我有2个帐户(手头现金)和(公用事业账单)
会计科目表中两个帐户的期初余额为
手头现金= 5000 DR
水电费= 2000 CR
现在我是否要输入现金付款,它将是
水电费(DR)= 8000
手头现金(CR)= 8000
现在我输入此条目后,会计科目表必须看起来像
手头现金= 3000 CR(由于我只有5000,所以它为负数)(现在这里的余额必须显示为-3000),而不是(-)它显示3000和DR更改为CR
这就是我要做的
答案 0 :(得分:0)
我想您应该保持数据库中的值不变,否则无论您是否拥有CR / DR,都需要维护另一列以维护帐户状态,并且我确定将其保留为布尔值。
要在显示时将值转换为没有任何符号的绝对值,可以使用以下技巧。要添加CR / DR,您需要遍历单元格
Protected Sub GridView1_RowDataBound(sender As Object, e As GridViewRowEventArgs)
If e.Row.RowType = DataControlRowType.DataRow Then
If Convert.ToDecimal(DataBinder.Eval(e.Row.DataItem, "YourAmountColumnName")) <0 Then
'Below line will remove (-) sign'
amt = amt * -1
e.Row.Cells(n).Text = "CR"
Else
e.Row.Cells(n).Text = "DR"
End If
End If
End Sub
它将返回没有任何符号的金额,如果小于0则明显是贷方,否则是借方。
在MSSQL
中,您可以使用相同的大小写,您必须检查金额是否为负数
Type = CASE WHEN OpeningBalance <0 THEN Type="CR" ELSE Type="DR"
OpeningBalance = CASE WHEN OpeningBalance <0 THEN OpeningBalance= OpeningBalance*-1