NAME

FS::cust_svc - Object method for cust_svc objects


SYNOPSIS

  use FS::cust_svc;
  $record = new FS::cust_svc \%hash
  $record = new FS::cust_svc { 'column' => 'value' };
  $error = $record->insert;
  $error = $new_record->replace($old_record);
  $error = $record->delete;
  $error = $record->check;
  ($label, $value) = $record->label;


DESCRIPTION

An FS::cust_svc represents a service. FS::cust_svc inherits from FS::Record. The following fields are currently supported:

svcnum - primary key (assigned automatically for new services)
pkgnum - Package (see the FS::cust_pkg manpage)
svcpart - Service definition (see the FS::part_svc manpage)


METHODS

new HASHREF
Creates a new service. To add the refund to the database, see insert. Services are normally created by creating FS::svc_ objects (see the FS::svc_acct manpage, the FS::svc_domain manpage, and the FS::svc_acct_sm manpage, among others).

insert
Adds this service to the database. If there is an error, returns the error, otherwise returns false.

delete
Deletes this service from the database. If there is an error, returns the error, otherwise returns false.

Called by the cancel method of the package (see the FS::cust_pkg manpage).

replace OLD_RECORD
Replaces the OLD_RECORD with this one in the database. If there is an error, returns the error, otherwise returns false.

check
Checks all fields to make sure this is a valid service. If there is an error, returns the error, otehrwise returns false. Called by the insert and replace methods.

label
Returns a list consisting of: - The name of this service (from part_svc) - A meaningful identifier (username, domain, or mail alias) - The table name (i.e. svc_domain) for this service


VERSION

$Id: cust_svc.html,v 1.3 2001-04-23 12:40:31 ivan Exp $


BUGS

Behaviour of changing the svcpart of cust_svc records is undefined and should possibly be prohibited, and pkg_svc records are not checked.

pkg_svc records are not checked in general (here).

Deleting this record doesn't check or delete the svc_* record associated with this record.


SEE ALSO

the FS::Record manpage, the FS::cust_pkg manpage, the FS::part_svc manpage, the FS::pkg_svc manpage, schema.html from the base documentation