Добавление CR / DR в учетные транзакции - PullRequest
0 голосов
/ 08 июля 2019

] У меня есть 7 таблиц COA, как показано на рисунке. мне нужно, чтобы при открытии баланса переходил в - (отрицательный), тип должен автоматически показывать знак CR и всякий раз, когда этот счет переходил в положительный +, он автоматически изменялся на DR. Пожалуйста, помните, что учетная запись изменится на DR или CR согласно записям. предположим, что я делаю запись в наличной оплате, и если счет в кассе - Дебет, а коммунальные услуги - CR в Плане счетов. и если я пропущу запись и произвожу дебетование коммунальных услуг, то в плане счетов она должна измениться с CR на DR в столбце типа.

также мой бухгалтер не хочет видеть (-) знак с отрицательным, ему нужен тип должен измениться согласно записям

Позвольте мне объяснить больше

предположим, у меня есть 2 счета (наличные в кассе) и (Коммунальные платежи)

Начальный баланс обоих счетов в Плане счетов составляет

Денежные средства в кассе = 5000 DR

Коммунальные платежи = 2000 CR

сейчас, если я сделаю запись наличными, так будет

счета за коммунальные услуги (DR) = 8000

денежные средства в кассе (CR) = 8000

теперь, после того как я сделаю эту запись, план счетов должен выглядеть как

Денежные средства в кассе = 3000 CR (потому что он отрицательный, потому что у меня было только 5000) (теперь здесь баланс должен показывать как -3000), но вместо (-) он показывает 3000 и DR меняется на CR

Это то, что мне нужно сделать

Issue image

Ошибка после кода

1 Ответ

0 голосов
/ 08 июля 2019

Полагаю, вы должны сохранить это значение в базе данных, в противном случае вам нужно сохранить другой столбец для поддержания статуса учетной записи, если у вас есть 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
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...