NAME

FS::part_pkg - Object methods for part_pkg objects


SYNOPSIS

  use FS::part_pkg;

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

  $custom_record = $template_record->clone;

  $error = $record->insert;

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

  $error = $record->delete;

  $error = $record->check;

  @pkg_svc = $record->pkg_svc;

  $svcnum = $record->svcpart;
  $svcnum = $record->svcpart( 'svc_acct' );


DESCRIPTION

An FS::part_pkg object represents a billing item definition. FS::part_pkg inherits from FS::Record. The following fields are currently supported:

pkgpart - primary key (assigned automatically for new billing item definitions)
pkg - Text name of this billing item definition (customer-viewable)
comment - Text name of this billing item definition (non-customer-viewable)
setup - Setup fee
freq - Frequency of recurring fee
recur - Recurring fee

setup and recur are evaluated as Safe perl expressions. You can use numbers just as you would normally. More advanced semantics are not yet defined.


METHODS

new HASHREF

Creates a new billing item definition. To add the billing item definition to the database, see insert.

clone

An alternate constructor. Creates a new billing item definition by duplicating an existing definition. A new pkgpart is assigned and `(CUSTOM) ' is prepended to the comment field. To add the billing item definition to the database, see insert.

insert

Adds this billing item definition to the database. If there is an error, returns the error, otherwise returns false.

delete

Currently unimplemented.

replace OLD_RECORD

Replaces 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 billing item definition. If there is an error, returns the error, otherwise returns false. Called by the insert and replace methods.

pkg_svc

Returns all FS::pkg_svc objects (see FS::pkg_svc) for this package definition (with non-zero quantity).

svcpart [ SVCDB ]

Returns the svcpart of a single service definition (see FS::part_svc) associated with this billing item definition (see FS::pkg_svc). Returns false if there not exactly one service definition with quantity 1, or if SVCDB is specified and does not match the svcdb of the service definition,


VERSION

$Id: part_pkg.html,v 1.2 2000-03-03 18:22:43 ivan Exp $


BUGS

The delete method is unimplemented.

setup and recur semantics are not yet defined (and are implemented in FS::cust_bill. hmm.).


SEE ALSO

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