NAME

FS::agent_type - Object methods for agent_type records


SYNOPSIS

  use FS::agent_type;
  $record = new FS::agent_type \%hash;
  $record = new FS::agent_type { 'column' => 'value' };
  $error = $record->insert;
  $error = $new_record->replace($old_record);
  $error = $record->delete;
  $error = $record->check;
  $hashref = $record->pkgpart_hashref;
  #may purchase $pkgpart if $hashref->{$pkgpart};
  @type_pkgs = $record->type_pkgs;
  @pkgparts = $record->pkgpart;


DESCRIPTION

An FS::agent_type object represents an agent type. Every agent (see the FS::agent manpage) has an agent type. Agent types define which packages (see the FS::part_pkg manpage) may be purchased by customers (see the FS::cust_main manpage), via FS::type_pkgs records (see the FS::type_pkgs manpage). FS::agent_type inherits from FS::Record. The following fields are currently supported:

typenum - primary key (assigned automatically for new agent types)
atype - Text name of this agent type


METHODS

new HASHREF
Creates a new agent type. To add the agent type to the database, see insert.

insert
Adds this agent type to the database. If there is an error, returns the error, otherwise returns false.

delete
Deletes this agent type from the database. Only agent types with no agents can be deleted. If there is an error, returns the error, otherwise returns false.

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

pkgpart_hashref
Returns a hash reference. The keys of the hash are pkgparts. The value is true iff this agent may purchase the specified package definition. See the FS::part_pkg manpage.

type_pkgs
Returns all FS::type_pkgs objects (see the FS::type_pkgs manpage) for this agent type.

pkgpart
Returns the pkgpart of all package definitions (see the FS::part_pkg manpage) for this agent type.


VERSION

$Id: agent_type.html,v 1.3 2001-04-23 12:40:30 ivan Exp $


BUGS


SEE ALSO

the FS::Record manpage, the FS::agent manpage, the FS::type_pkgs manpage, the FS::cust_main manpage, the FS::part_pkg manpage, schema.html from the base documentation.