Difference between revisions of "Freeside:3:Documentation:Developer/FS/rate"

From Freeside
Jump to: navigation, search
m (Edit via perl MediaWiki framework (1.13))
(No difference)

Revision as of 20:06, 27 June 2012

NAME

FS::rate - Object methods for rate records

SYNOPSIS

 use FS::rate;

 $record = new FS::rate \%hash;
 $record = new FS::rate { 'column' => 'value' };

 $error = $record->insert;

 $error = $new_record->replace($old_record);

 $error = $record->delete;

 $error = $record->check;

DESCRIPTION

An FS::rate object represents an rate plan. FS::rate inherits from FS::Record. The following fields are currently supported:

ratenum - primary key; ratename

METHODS

new HASHREF
Creates a new rate plan. To add the rate plan to the database, see "insert".
Note that this stores the hash reference, not a distinct copy of the hash it points to. You can ask the object for a copy with the hash method.
insert [ , OPTION => VALUE ... ]
Adds this record to the database. If there is an error, returns the error, otherwise returns false.
Currently available options are: rate_detail
If rate_detail is set to an array reference of FS::rate_detail objects, the objects will have their ratenum field set and will be inserted after this record.
delete
Delete this record from the database.
replace OLD_RECORD [ , OPTION => VALUE ... ]
Replaces the OLD_RECORD with this one in the database. If there is an error, returns the error, otherwise returns false.
Currently available options are: rate_detail
If rate_detail is set to an array reference of FS::rate_detail objects, the objects will have their ratenum field set and will be inserted after this record. Any existing rate_detail records associated with this record will be deleted.
check
Checks all fields to make sure this is a valid rate plan. If there is an error, returns the error, otherwise returns false. Called by the insert and replace methods.
dest_detail REGIONNUM | RATE_REGION_OBJECTD | HASHREF
Returns the rate detail (see FS::rate_detail) for this rate to the specificed destination, or the empty string if no rate can be found for the given destination.
Destination can be specified as an FS::rate_detail object or regionnum (see FS::rate_detail), or as a hashref containing the following keys:
countrycode - required.
; phonenum - required.:; weektime - optional. Specifies a time in seconds from the start of the week, and will return a timed rate (one with a non-null ratetimenum) if one exists at that time. If not, returns a non-timed rate.:; cdrtypenum - optional. Specifies a value for the cdrtypenum field, and will return a rate matching that, if one exists. If not, returns a rate with null cdrtypenum.:; rate_detail
Returns all region-specific details (see FS::rate_detail) for this rate.

SUBROUTINES

process
Experimental job-queue processor for web interface adds/edits

BUGS

SEE ALSO

FS::Record, schema.html from the base documentation.

POD ERRORS

Hey! The above document had some coding errors, which are explained below:

Around line 384:
You forgot a '=back' before '=head1'
Around line 461:
You forgot a '=back' before '=head1'