diff options
author | ivan <ivan> | 2009-10-28 18:16:57 +0000 |
---|---|---|
committer | ivan <ivan> | 2009-10-28 18:16:57 +0000 |
commit | 57f5975a062022e280680feed1f692f3e937414b (patch) | |
tree | 3d44e404094330af456e235a17e1e92258422bc7 /FS/FS/part_svc.pm | |
parent | 3f596ab410502f4c1f7074ad732631bd73d5de79 (diff) |
fix removing a flag from a service definition column
Diffstat (limited to 'FS/FS/part_svc.pm')
-rw-r--r-- | FS/FS/part_svc.pm | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/FS/FS/part_svc.pm b/FS/FS/part_svc.pm index e57efe4..db39ea9 100644 --- a/FS/FS/part_svc.pm +++ b/FS/FS/part_svc.pm @@ -267,6 +267,7 @@ sub replace { || $new->getfield($svcdb.'__'.$_.'_label') !~ /^\s*$/ ) } (fields($svcdb),@fields) ) { + my $part_svc_column = $new->part_svc_column($field); my $previous = qsearchs('part_svc_column', { 'svcpart' => $new->svcpart, @@ -279,12 +280,15 @@ sub replace { if ( uc($flag) =~ /^([A-Z])$/ || $label !~ /^\s*$/ ) { if ( uc($flag) =~ /^([A-Z])$/ ) { + $part_svc_column->setfield('columnflag', $1); my $parser = FS::part_svc->svc_table_fields($svcdb)->{$field}->{parse} || sub { shift }; - $part_svc_column->setfield('columnflag', $1); $part_svc_column->setfield('columnvalue', &$parser($new->getfield($svcdb.'__'.$field)) ); + } else { + $part_svc_column->setfield('columnflag', ''); + $part_svc_column->setfield('columnvalue', ''); } $part_svc_column->setfield('columnlabel', $label) |