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 FS::cust_pkg)
svcpart - Service definition (see FS::part_svc)


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 FS::svc_acct, FS::svc_domain, and FS::svc_acct_sm, 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 FS::cust_pkg).

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.2 2000-03-03 18:22:43 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

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