NAME FS::cust_svc - Object method for cust_svc objects SYNOPSIS use FS::cust_svc; $record = create FS::cust_svc \%hash $record = create 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 create HASHREF Creates a new service. To add the refund to the database, see the section on "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 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). 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 HISTORY ivan@voicenet.com 97-jul-10,14 no TableUtil, no FS::Lock ivan@sisd.com 98-mar-7 pod ivan@sisd.com 98-sep-21 $Log: cust_svc.txt,v $ Revision 1.2 1998-11-13 09:56:41 ivan change configuration file layout to support multiple distinct databases (with own set of config files, export, etc.) Revision 1.4 1998/11/12 07:58:15 ivan added svcdb to label Revision 1.3 1998/11/12 03:45:38 ivan use FS::table_name for all tables qsearch()'ed Revision 1.2 1998/11/12 03:32:46 ivan added label method