my $flag = $self->getfield($svcdb.'__'.$field.'_flag');
#if ( uc($flag) =~ /^([DFMAX])$/ ) {
if ( uc($flag) =~ /^([A-Z])$/ ) { #part_svc_column will test it
+ my $parser = FS::part_svc->svc_table_fields($svcdb)->{$field}->{parse}
+ || sub { shift };
$part_svc_column->setfield('columnflag', $1);
$part_svc_column->setfield('columnvalue',
- $self->getfield($svcdb.'__'.$field)
+ &$parser($self->getfield($svcdb.'__'.$field))
);
if ( $previous ) {
$error = $part_svc_column->replace($previous);
my $flag = $new->getfield($svcdb.'__'.$field.'_flag');
#if ( uc($flag) =~ /^([DFMAX])$/ ) {
if ( uc($flag) =~ /^([A-Z])$/ ) { #part_svc_column will test it
+ my $parser = FS::part_svc->svc_table_fields($svcdb)->{$field}->{parse}
+ || sub { shift };
$part_svc_column->setfield('columnflag', $1);
$part_svc_column->setfield('columnvalue',
- $new->getfield($svcdb.'__'.$field)
+ &$parser($new->getfield($svcdb.'__'.$field))
);
if ( $previous ) {
$error = $part_svc_column->replace($previous);
grep $_->can('usage_sessions'), $self->part_export;
}
+=item part_export_did
+
+Returns a list of any exports (see L<FS::part_export>) for this service that
+are capable of returing available DID (phone number) information.
+
+=cut
+
+sub part_export_did {
+ my $self = shift;
+ grep $_->can('get_dids'), $self->part_export;
+}
+
+
=item cust_svc [ PKGPART ]
Returns a list of associated customer services (FS::cust_svc records).