3 <TITLE>FS::part_pkg - Object methods for part_pkg objects</TITLE>
4 <LINK REV="made" HREF="mailto:perl@packages.debian.org">
9 <A NAME="__index__"></A>
14 <LI><A HREF="#name">NAME</A></LI>
15 <LI><A HREF="#synopsis">SYNOPSIS</A></LI>
16 <LI><A HREF="#description">DESCRIPTION</A></LI>
17 <LI><A HREF="#methods">METHODS</A></LI>
18 <LI><A HREF="#version">VERSION</A></LI>
19 <LI><A HREF="#bugs">BUGS</A></LI>
20 <LI><A HREF="#see also">SEE ALSO</A></LI>
26 <H1><A NAME="name">NAME</A></H1>
27 <P>FS::part_pkg - Object methods for part_pkg objects</P>
30 <H1><A NAME="synopsis">SYNOPSIS</A></H1>
32 use FS::part_pkg;</PRE>
34 $record = new FS::part_pkg \%hash
35 $record = new FS::part_pkg { 'column' => 'value' };</PRE>
37 $custom_record = $template_record->clone;</PRE>
39 $error = $record->insert;</PRE>
41 $error = $new_record->replace($old_record);</PRE>
43 $error = $record->delete;</PRE>
45 $error = $record->check;</PRE>
47 @pkg_svc = $record->pkg_svc;</PRE>
49 $svcnum = $record->svcpart;
50 $svcnum = $record->svcpart( 'svc_acct' );</PRE>
53 <H1><A NAME="description">DESCRIPTION</A></H1>
54 <P>An FS::part_pkg object represents a billing item definition. FS::part_pkg
55 inherits from FS::Record. The following fields are currently supported:</P>
57 <DT><STRONG><A NAME="item_key">pkgpart - primary key (assigned automatically for new billing item definitions)</A></STRONG><BR>
59 <DT><STRONG><A NAME="item_definition">pkg - Text name of this billing item definition (customer-viewable)</A></STRONG><BR>
61 <DT><STRONG>comment - Text name of this billing item definition (non-customer-viewable)</STRONG><BR>
63 <DT><STRONG><A NAME="item_setup_%2D_Setup_fee">setup - Setup fee</A></STRONG><BR>
65 <DT><STRONG><A NAME="item_freq_%2D_Frequency_of_recurring_fee">freq - Frequency of recurring fee</A></STRONG><BR>
67 <DT><STRONG><A NAME="item_recur_%2D_Recurring_fee">recur - Recurring fee</A></STRONG><BR>
70 <P>setup and recur are evaluated as Safe perl expressions. You can use numbers
71 just as you would normally. More advanced semantics are not yet defined.</P>
74 <H1><A NAME="methods">METHODS</A></H1>
76 <DT><STRONG><A NAME="item_new">new HASHREF</A></STRONG><BR>
78 Creates a new billing item definition. To add the billing item definition to
79 the database, see <A HREF="#insert">insert</A>.
81 <DT><STRONG><A NAME="item_clone">clone</A></STRONG><BR>
83 An alternate constructor. Creates a new billing item definition by duplicating
84 an existing definition. A new pkgpart is assigned and `(CUSTOM) ' is prepended
85 to the comment field. To add the billing item definition to the database, see
86 <A HREF="#insert">insert</A>.
88 <DT><STRONG><A NAME="item_insert">insert</A></STRONG><BR>
90 Adds this billing item definition to the database. If there is an error,
91 returns the error, otherwise returns false.
93 <DT><STRONG><A NAME="item_delete">delete</A></STRONG><BR>
95 Currently unimplemented.
97 <DT><STRONG><A NAME="item_replace_OLD_RECORD">replace OLD_RECORD</A></STRONG><BR>
99 Replaces OLD_RECORD with this one in the database. If there is an error,
100 returns the error, otherwise returns false.
102 <DT><STRONG><A NAME="item_check">check</A></STRONG><BR>
104 Checks all fields to make sure this is a valid billing item definition. If
105 there is an error, returns the error, otherwise returns false. Called by the
106 insert and replace methods.
108 <DT><STRONG><A NAME="item_pkg_svc">pkg_svc</A></STRONG><BR>
110 Returns all FS::pkg_svc objects (see <A HREF=".././FS/pkg_svc.html">the FS::pkg_svc manpage</A>) for this package
111 definition (with non-zero quantity).
113 <DT><STRONG><A NAME="item_svcpart_%5B_SVCDB_%5D">svcpart [ SVCDB ]</A></STRONG><BR>
115 Returns the svcpart of a single service definition (see <A HREF=".././FS/part_svc.html">the FS::part_svc manpage</A>)
116 associated with this billing item definition (see <A HREF=".././FS/pkg_svc.html">the FS::pkg_svc manpage</A>). Returns
117 false if there not exactly one service definition with quantity 1, or if
118 SVCDB is specified and does not match the svcdb of the service definition,
122 <H1><A NAME="version">VERSION</A></H1>
123 <P>$Id: part_pkg.html,v 1.1 2001-07-30 07:36:03 ivan Exp $</P>
126 <H1><A NAME="bugs">BUGS</A></H1>
127 <P>The delete method is unimplemented.</P>
128 <P>setup and recur semantics are not yet defined (and are implemented in
129 FS::cust_bill. hmm.).</P>
132 <H1><A NAME="see also">SEE ALSO</A></H1>
133 <P><A HREF=".././FS/Record.html">the FS::Record manpage</A>, <A HREF=".././FS/cust_pkg.html">the FS::cust_pkg manpage</A>, <A HREF=".././FS/type_pkgs.html">the FS::type_pkgs manpage</A>, <A HREF=".././FS/pkg_svc.html">the FS::pkg_svc manpage</A>, <EM>Safe</EM>.
134 schema.html from the base documentation.</P>