- my $debit_cb_acc = SL::DB::AccTransaction->new(
- transdate => $cb_date,
- ob_transaction => 0,
- cb_transaction => 1,
- chart_id => $carry_over_chart->id,
- chart_link => $carry_over_chart->link, # maybe leave chart_link empty?
- tax_id => 0,
- taxkey => 0,
- amount => $debit_balance,
- );
- my $debit_ob_acc = SL::DB::AccTransaction->new(
- transdate => $ob_date,
- ob_transaction => 1,
- cb_transaction => 0,
- chart_id => $carry_over_chart->id,
- chart_link => $carry_over_chart->link,
- tax_id => 0,
- taxkey => 0,
- amount => - $debit_balance,
- );
- my $credit_cb_acc = SL::DB::AccTransaction->new(
- transdate => $cb_date,
- ob_transaction => 0,
- cb_transaction => 1,
- chart_id => $carry_over_chart->id,
- chart_link => $carry_over_chart->link, # maybe leave chart_link empty?
- tax_id => 0,
- taxkey => 0,
- amount => $credit_balance,
- );
- my $credit_ob_acc = SL::DB::AccTransaction->new(
- transdate => $ob_date,
- ob_transaction => 1,
- cb_transaction => 0,
- chart_id => $carry_over_chart->id,
- chart_link => $carry_over_chart->link,
- tax_id => 0,
- taxkey => 0,
- amount => - $credit_balance,
- );
- $asset_cb_debit_entry->add_transactions($debit_cb_acc);
- $asset_ob_debit_entry->add_transactions($debit_ob_acc);
- $asset_cb_credit_entry->add_transactions($credit_cb_acc);
- $asset_ob_credit_entry->add_transactions($credit_ob_acc);
+ if ( $debit_balance ) {
+ $asset_cb_debit_entry->add_chart_booking(
+ chart => $carry_over_chart,
+ debit => -1 * $debit_balance,
+ tax_id => 0,
+ );
+
+ $asset_ob_debit_entry->add_chart_booking(
+ chart => $carry_over_chart,
+ credit => -1 * $debit_balance,
+ tax_id => 0,
+ );
+ };
+
+ if ( $credit_balance ) {
+ $asset_cb_credit_entry->add_chart_booking(
+ chart => $carry_over_chart,
+ credit => $credit_balance,
+ tax_id => 0,
+ );
+ $asset_ob_credit_entry->add_chart_booking(
+ chart => $carry_over_chart,
+ debit => $credit_balance,
+ tax_id => 0,
+ );
+ };