[set page_banner]Chart of Accounts[/set]
[set fm_class]ledger[/set]
[set help_name][/set]
[set page_title]Chart of Accounts[/set]
[set icon_name]admin/icon_orders.gif[/set]
@_FM_STD_HEAD_@
[seti sqlSentence]
BEGIN TRANSACTION;
[perl]
my $trans;
my $action = $Values->{"mv_action"};
my $coa_id = $Values->{"select_coa"} || "currval('gl_coasequence')";
my $vat_id = $Values->{"vat_id"};
my $type = $Values->{"type"};
my $vat_coa;
if ($vat_id) {
if ($type == 4) {$vat_coa = $Scratch->{fm_outvat}};
if ($type == 5) {$vat_coa = $Scratch->{fm_invat}};
} else {
$vat_id = 'NULL';
$vat_coa = 'NULL';
};
if ($action eq "Update") {
$trans = "UPDATE gl_chartofaccount SET number = '[value number]', type=[value type], currency_id=[value currency_id],
vat_id=$vat_id, vat_coa=$vat_coa, soa='[value soa]', updated='now'
WHERE coa_id = [value select_coa];";
$trans .= "UPDATE gl_acctname SET name = '[value name]', updated='now'
WHERE ac_id = [scratch ac_id];";
} elsif ($action eq "Delete") {
$trans .= "DELETE FROM gl_chartofaccount WHERE coa_id = [value select_coa];";
$trans .= "DELETE FROM gl_acctname WHERE ac_id = [scratch ac_id];";
return $trans;
} else {
$trans .= "INSERT INTO gl_acctname (name, dimension, updated)
VALUES ('[value name]', 1, 'now');";
$trans .= "INSERT INTO gl_chartofaccount (ac_id, type, currency_id, number, vat_id, vat_coa, soa, updated)
VALUES (currval('gl_acsequence'), [value type], [value currency_id], '[value number]', $vat_id, $vat_coa, '[value soa]', 'now');";
};
$trans;
[/perl]
COMMIT;
[/seti]
[if value mv_action eq Update]
[set returnpage]freemoney/coaList[/set]
[set leadtext]The Account has been updated[/set]
[elsif value mv_action eq Delete]
[set returnpage]freemoney/coaList[/set]
[set leadtext]The Account entry has been deleted[/set]
[/elsif]
[else]
[set returnpage]freemoney/coa[/set]
[set leadtext]The Account entry has been added[/set]
[/else]
[/if]
[value name=mv_action set=""]
[try][sql interpolate=1][scratch sqlSentence][/sql][/try]
[L][scratch leadtext][/L]
[catch] [L]There was an error adding the new article entry. Please check your data.[/L]
[/catch] [L]BACK[/L] @_FM_STD_FOOTER_@