1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
|
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
|